From c073da20ce2d30b2df6436852fd229a5eae7b323 Mon Sep 17 00:00:00 2001 From: Lean stage0 autoupdater <> Date: Thu, 23 Jan 2025 08:33:17 +0000 Subject: [PATCH] chore: update stage0 --- stage0/stdlib/Init/Data/Array/Attach.c | 6 +- stage0/stdlib/Init/Data/Array/Basic.c | 424 +- stage0/stdlib/Init/Data/Array/Count.c | 33 + stage0/stdlib/Init/Data/Array/Lemmas.c | 772 +- stage0/stdlib/Init/Data/Array/MapIdx.c | 6 +- stage0/stdlib/Init/Data/BitVec/Basic.c | 59 + stage0/stdlib/Init/Data/BitVec/Lemmas.c | 44 + stage0/stdlib/Init/Data/List/Erase.c | 6 +- stage0/stdlib/Init/Data/Subtype.c | 6 +- stage0/stdlib/Init/Data/Vector.c | 18 +- stage0/stdlib/Init/Data/Vector/Attach.c | 349 + stage0/stdlib/Init/Data/Vector/Basic.c | 1277 +- stage0/stdlib/Init/Data/Vector/Count.c | 33 + stage0/stdlib/Init/Data/Vector/Lemmas.c | 80 + stage0/stdlib/Init/Data/Vector/MapIdx.c | 33 + stage0/stdlib/Init/Grind/Cases.c | 6 +- stage0/stdlib/Init/Internal/Order.c | 6 +- stage0/stdlib/Init/Internal/Order/Lemmas.c | 191 + stage0/stdlib/Init/Meta.c | 2548 +-- stage0/stdlib/Lake/Build/Actions.c | 4 +- stage0/stdlib/Lake/CLI/Error.c | 4 +- stage0/stdlib/Lake/Config/InstallPath.c | 14 +- stage0/stdlib/Lake/Config/LeanConfig.c | 14 +- stage0/stdlib/Lake/Util/Log.c | 4 +- stage0/stdlib/Lean/Compiler/LCNF/Main.c | 326 +- stage0/stdlib/Lean/Compiler/LCNF/MonoTypes.c | 3455 +++- .../stdlib/Lean/Compiler/LCNF/PrettyPrinter.c | 31 +- stage0/stdlib/Lean/Compiler/LCNF/Types.c | 48 + stage0/stdlib/Lean/CoreM.c | 2 +- stage0/stdlib/Lean/Data/KVMap.c | 4 +- stage0/stdlib/Lean/Data/Lsp/Capabilities.c | 24 +- stage0/stdlib/Lean/Data/Lsp/CodeActions.c | 10 +- stage0/stdlib/Lean/Data/Lsp/Diagnostics.c | 6 +- stage0/stdlib/Lean/Data/Lsp/InitShutdown.c | 8 +- stage0/stdlib/Lean/Elab/BuiltinEvalCommand.c | 12 +- stage0/stdlib/Lean/Elab/Command.c | 31 +- stage0/stdlib/Lean/Elab/Declaration.c | 110 +- stage0/stdlib/Lean/Elab/Frontend.c | 92 +- stage0/stdlib/Lean/Elab/LetRec.c | 2247 ++- stage0/stdlib/Lean/Elab/MutualDef.c | 2795 ++-- stage0/stdlib/Lean/Elab/PreDefinition/Basic.c | 5 +- stage0/stdlib/Lean/Elab/PreDefinition/Main.c | 3289 ++-- .../stdlib/Lean/Elab/PreDefinition/Mutual.c | 4512 +++++ .../Lean/Elab/PreDefinition/PartialFixpoint.c | 37 + .../Elab/PreDefinition/PartialFixpoint/Eqns.c | 5003 ++++++ .../PreDefinition/PartialFixpoint/Induction.c | 11115 ++++++++++++ .../Elab/PreDefinition/PartialFixpoint/Main.c | 8378 ++++++++++ .../Elab/PreDefinition/Structural/BRecOn.c | 6 +- .../Lean/Elab/PreDefinition/Structural/Main.c | 2 +- .../Lean/Elab/PreDefinition/TerminationHint.c | 2617 ++- .../stdlib/Lean/Elab/PreDefinition/WF/Eqns.c | 1867 ++- .../Lean/Elab/PreDefinition/WF/GuessLex.c | 10 +- .../stdlib/Lean/Elab/PreDefinition/WF/Main.c | 10137 ++--------- .../Lean/Elab/PreDefinition/WF/PackMutual.c | 3221 ++-- stage0/stdlib/Lean/Elab/Structure.c | 8 +- .../Lean/Elab/Tactic/BVDecide/Frontend/Attr.c | 5 +- .../Elab/Tactic/BVDecide/Frontend/BVDecide.c | 2 +- .../Elab/Tactic/BVDecide/Frontend/BVTrace.c | 952 +- .../Lean/Elab/Tactic/BVDecide/Frontend/LRAT.c | 52 +- .../Elab/Tactic/BVDecide/Frontend/Normalize.c | 321 +- .../BVDecide/Frontend/Normalize/AndFlatten.c | 46 +- .../BVDecide/Frontend/Normalize/Basic.c | 2856 ++-- .../Frontend/Normalize/EmbeddedConstraint.c | 719 +- .../BVDecide/Frontend/Normalize/Rewrite.c | 3709 ++-- .../BVDecide/Frontend/Normalize/Structures.c | 5320 ++++++ stage0/stdlib/Lean/Elab/Tactic/Grind.c | 295 +- stage0/stdlib/Lean/Elab/Tactic/Induction.c | 29 +- stage0/stdlib/Lean/Elab/Tactic/Monotonicity.c | 719 +- stage0/stdlib/Lean/Elab/Tactic/RCases.c | 30 +- stage0/stdlib/Lean/Elab/Term.c | 5 +- stage0/stdlib/Lean/Environment.c | 12 +- stage0/stdlib/Lean/Language/Basic.c | 30 +- stage0/stdlib/Lean/Language/Lean.c | 1106 +- stage0/stdlib/Lean/Message.c | 1946 ++- stage0/stdlib/Lean/Meta/ArgsPacker.c | 1545 +- stage0/stdlib/Lean/Meta/Basic.c | 212 +- .../stdlib/Lean/Meta/Constructions/BRecOn.c | 12 +- stage0/stdlib/Lean/Meta/Eqns.c | 376 +- stage0/stdlib/Lean/Meta/Match/MatchEqs.c | 6774 +++++--- stage0/stdlib/Lean/Meta/PProdN.c | 2288 ++- stage0/stdlib/Lean/Meta/Tactic/FunInd.c | 6137 ++++--- stage0/stdlib/Lean/Meta/Tactic/Grind.c | 117 +- .../Lean/Meta/Tactic/Grind/Arith/Model.c | 391 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c | 2304 +-- stage0/stdlib/Lean/Meta/Tactic/Grind/Beta.c | 2 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Canon.c | 4690 ++++-- stage0/stdlib/Lean/Meta/Tactic/Grind/Cases.c | 159 +- .../Lean/Meta/Tactic/Grind/CasesMatch.c | 771 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Core.c | 2505 ++- stage0/stdlib/Lean/Meta/Tactic/Grind/Ctor.c | 4 +- stage0/stdlib/Lean/Meta/Tactic/Grind/EMatch.c | 2095 ++- .../Lean/Meta/Tactic/Grind/EMatchTheorem.c | 6 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Ext.c | 42 +- .../Lean/Meta/Tactic/Grind/ForallProp.c | 26 +- .../Lean/Meta/Tactic/Grind/Internalize.c | 13925 +++++++++++----- stage0/stdlib/Lean/Meta/Tactic/Grind/Intro.c | 1084 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Main.c | 2181 ++- .../stdlib/Lean/Meta/Tactic/Grind/MatchCond.c | 8036 +++++++++ stage0/stdlib/Lean/Meta/Tactic/Grind/PP.c | 644 +- .../stdlib/Lean/Meta/Tactic/Grind/Propagate.c | 462 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Simp.c | 75 +- .../stdlib/Lean/Meta/Tactic/Grind/SimpUtil.c | 264 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Solve.c | 2479 +-- stage0/stdlib/Lean/Meta/Tactic/Grind/Split.c | 613 +- stage0/stdlib/Lean/Meta/Tactic/Grind/Types.c | 2498 +-- .../Lean/Meta/Tactic/Simp/SimpTheorems.c | 6 +- stage0/stdlib/Lean/Meta/Tactic/SplitIf.c | 863 +- stage0/stdlib/Lean/Parser/Term.c | 1796 +- stage0/stdlib/Lean/Parser/Types.c | 6 +- .../Delaborator/TopDownAnalyze.c | 2 +- .../Completion/CompletionInfoSelection.c | 4 +- stage0/stdlib/Lean/Server/FileWorker.c | 78 +- stage0/stdlib/Lean/Server/Watchdog.c | 4 +- stage0/stdlib/Lean/Util/Profiler.c | 24 +- .../Lean/Widget/InteractiveDiagnostic.c | 215 +- .../Data/DHashMap/Internal/List/Associative.c | 78 +- .../Std/Data/DHashMap/Internal/RawLemmas.c | 1240 +- stage0/stdlib/Std/Data/DHashMap/Raw.c | 698 + stage0/stdlib/Std/Data/DHashMap/RawLemmas.c | 1716 +- stage0/stdlib/Std/Data/HashMap/Raw.c | 349 + stage0/stdlib/Std/Sat/AIG/Basic.c | 78 + stage0/stdlib/Std/Sat/AIG/Lemmas.c | 32 + .../BVDecide/Bitblast/BVExpr/Circuit/Impl.c | 32 +- .../Bitblast/BVExpr/Circuit/Impl/Expr.c | 150 +- .../BVExpr/Circuit/Impl/Operations/Mul.c | 711 +- .../Bitblast/BVExpr/Circuit/Impl/Pred.c | 4 +- .../stdlib/Std/Time/DateTime/PlainDateTime.c | 949 +- stage0/stdlib/Std/Time/Duration.c | 7 +- stage0/stdlib/Std/Time/Format.c | 170 +- stage0/stdlib/Std/Time/Format/Basic.c | 228 +- stage0/stdlib/Std/Time/Internal/UnitVal.c | 39 + stage0/stdlib/Std/Time/Zoned.c | 1215 +- stage0/stdlib/Std/Time/Zoned/Database/TzIf.c | 4 +- stage0/stdlib/Std/Time/Zoned/DateTime.c | 9155 +++++----- stage0/stdlib/Std/Time/Zoned/ZonedDateTime.c | 1842 +- 135 files changed, 114557 insertions(+), 53354 deletions(-) create mode 100644 stage0/stdlib/Init/Data/Array/Count.c create mode 100644 stage0/stdlib/Init/Data/Vector/Attach.c create mode 100644 stage0/stdlib/Init/Data/Vector/Count.c create mode 100644 stage0/stdlib/Init/Data/Vector/MapIdx.c create mode 100644 stage0/stdlib/Init/Internal/Order/Lemmas.c create mode 100644 stage0/stdlib/Lean/Elab/PreDefinition/Mutual.c create mode 100644 stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint.c create mode 100644 stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.c create mode 100644 stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Induction.c create mode 100644 stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Main.c create mode 100644 stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Structures.c create mode 100644 stage0/stdlib/Lean/Meta/Tactic/Grind/MatchCond.c diff --git a/stage0/stdlib/Init/Data/Array/Attach.c b/stage0/stdlib/Init/Data/Array/Attach.c index f91080e85d..ca7f7b80cd 100644 --- a/stage0/stdlib/Init/Data/Array/Attach.c +++ b/stage0/stdlib/Init/Data/Array/Attach.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.Array.Attach -// Imports: Init.Data.Array.Mem Init.Data.Array.Lemmas Init.Data.List.Attach +// Imports: Init.Data.Array.Mem Init.Data.Array.Lemmas Init.Data.Array.Count Init.Data.List.Attach #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -296,6 +296,7 @@ return x_6; } lean_object* initialize_Init_Data_Array_Mem(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Array_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_Count(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_List_Attach(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_Array_Attach(uint8_t builtin, lean_object* w) { @@ -308,6 +309,9 @@ lean_dec_ref(res); res = initialize_Init_Data_Array_Lemmas(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_Array_Count(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Init_Data_List_Attach(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Init/Data/Array/Basic.c b/stage0/stdlib/Init/Data/Array/Basic.c index 2ff3713f58..30abbbf2e6 100644 --- a/stage0/stdlib/Init/Data/Array/Basic.c +++ b/stage0/stdlib/Init/Data/Array/Basic.c @@ -21,7 +21,6 @@ LEAN_EXPORT lean_object* l_Array_findFinIdx_x3f___rarg___boxed(lean_object*, lea LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Array_findRevM_x3f___spec__1___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_eraseIdx_x21___rarg___closed__1; LEAN_EXPORT lean_object* l_Array_concatMapM(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_11189_; LEAN_EXPORT lean_object* l_Array_takeWhile(lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_mapIdxM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__Data__Array__Basic______macroRules__term_x23_x5b___x2c_x5d__1___closed__5; @@ -129,6 +128,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe___rarg___boxed(lean_object*, lean_ lean_object* l_Lean_Syntax_getArgs(lean_object*); LEAN_EXPORT lean_object* l_Array_contains___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_find_x3f___rarg___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_10860_; LEAN_EXPORT lean_object* l_Array_instGetElemUSizeLtNatToNatSize(lean_object*); lean_object* lean_array_swap(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithAll_go(lean_object*, lean_object*, lean_object*); @@ -192,7 +192,6 @@ static lean_object* l_term_x23_x5b___x2c_x5d___closed__5; LEAN_EXPORT lean_object* l_Array_getIdx_x3f___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_forM___spec__1___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_findSome_x3f___rarg___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_10809_; LEAN_EXPORT lean_object* l_Array_findSome_x21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_ofFn___rarg___boxed(lean_object*, lean_object*); @@ -202,6 +201,7 @@ LEAN_EXPORT lean_object* l_Array_getIdx_x3f___rarg___lambda__1(lean_object*, lea LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_concatMapM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___aux__Init__Data__Array__Basic______macroRules__term_x23_x5b___x2c_x5d__1___closed__18; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_count___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_find_x3f___rarg___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_reduceOption___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forRevM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -357,6 +357,7 @@ LEAN_EXPORT lean_object* l_Array_modifyMUnsafe(lean_object*, lean_object*); static lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_1588____closed__17; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_concatMap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Basic_0__Array_allDiffAuxAux___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_count___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Array_all___spec__2___rarg(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT uint8_t l_Array_isPrefixOfAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_insertAt_x21___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -380,6 +381,7 @@ lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_allM___spec__2___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, lean_object*, size_t, uint8_t); LEAN_EXPORT lean_object* lean_array_to_list_impl(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_countP___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWith___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_foldr___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_toListAppend___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); @@ -391,6 +393,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___rarg___lambda__1(size_t, lean_ LEAN_EXPORT lean_object* l_Array_modify___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_allM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_mapIdxM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Array_zip___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Array_find_x3f___spec__1(lean_object*); @@ -426,6 +429,7 @@ LEAN_EXPORT lean_object* l_Array_insertIdx_x21(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_allM___spec__2___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_zipWithIndex___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_filterM___spec__1___rarg___lambda__2(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Array_sequenceMap(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_range___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Array_insertIdx___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -463,6 +467,7 @@ LEAN_EXPORT lean_object* l_Array_pop___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_mapIdx___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at_Array_instRepr___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Array_erase(lean_object*); +LEAN_EXPORT lean_object* l_Array_countP(lean_object*); LEAN_EXPORT lean_object* l_Array_reduceOption___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_getEvenElems___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_insertIdx___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -470,7 +475,9 @@ LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___rarg___lambda__1(lean_o LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_allM___spec__1___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_term_x23_x5b___x2c_x5d___closed__16; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_findFinIdx_x3f_loop___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2(lean_object*); static lean_object* l_term_x23_x5b___x2c_x5d___closed__2; static lean_object* l_term_x23_x5b___x2c_x5d___closed__13; static lean_object* l_Array_instRepr___rarg___closed__3; @@ -479,6 +486,7 @@ LEAN_EXPORT lean_object* l_Array_modify___rarg(lean_object*, lean_object*, lean_ static lean_object* l_term_x23_x5b___x2c_x5d___closed__11; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_allM___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_countP___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Array_findIdxM_x3f___spec__1___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_unzip___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_isEmpty___rarg___boxed(lean_object*); @@ -518,6 +526,7 @@ LEAN_EXPORT lean_object* l_Array_elem(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_filter___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_contains___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_eraseReps___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_sum___rarg(lean_object*, lean_object*, lean_object*); @@ -530,6 +539,7 @@ LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_mapIdxM___spec__1___r LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlM_loop___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Array_findRevM_x3f___spec__1___rarg___lambda__1(lean_object*, lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_usize___boxed(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findRev_x3f(lean_object*); @@ -558,6 +568,7 @@ LEAN_EXPORT lean_object* l_Array_findIdx_x3f(lean_object*); static lean_object* l_Array_swapAt_x21___rarg___closed__4; static lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_1588____closed__7; LEAN_EXPORT lean_object* l_Array_append(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Id_instMonad; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f___rarg(lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); @@ -604,6 +615,7 @@ static lean_object* l_term_x23_x5b___x2c_x5d___closed__17; LEAN_EXPORT lean_object* l_Array_back___rarg(lean_object*, lean_object*); static lean_object* l_Array_swapAt_x21___rarg___closed__1; static lean_object* l_term_x23_x5b___x2c_x5d___closed__20; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Array_flatten___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_partition___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_any___spec__1(lean_object*); @@ -638,9 +650,11 @@ LEAN_EXPORT lean_object* l_Array_sum___rarg___boxed(lean_object*, lean_object*, static lean_object* l_Array_instRepr___rarg___closed__4; LEAN_EXPORT lean_object* l_Array_ofFn_go___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithAll_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Array_all___spec__1___rarg(lean_object*, lean_object*, size_t, size_t); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findM_x3f___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_swapAt___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_toListImpl___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Array_findRev_x3f___spec__1(lean_object*); @@ -652,6 +666,7 @@ static lean_object* l___aux__Init__Data__Array__Basic______macroRules__term_x23_ LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Array_zipWithIndex___spec__1(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_sum___spec__2(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_insertAt___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithIndex___rarg___boxed(lean_object*); @@ -663,6 +678,7 @@ static lean_object* l_term_x23_x5b___x2c_x5d___closed__3; LEAN_EXPORT lean_object* l_Array_indexOfAux___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_toListAppend___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Array_zip___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_count(lean_object*); LEAN_EXPORT lean_object* l_Array_findM_x3f(lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_getIdx_x3f___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -670,6 +686,7 @@ static lean_object* l_Array_instToString___rarg___closed__1; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Array_eraseIdx_x21___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_any___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_eraseReps(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_unzip___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_range___boxed(lean_object*); @@ -747,6 +764,7 @@ LEAN_EXPORT lean_object* l_Array_modifyMUnsafe___rarg___lambda__1(lean_object*, LEAN_EXPORT lean_object* l_Array_mapM_map___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Basic___hyg_11240_; LEAN_EXPORT lean_object* l_Array_find_x3f(lean_object*); LEAN_EXPORT lean_object* l_Array_get_x3f___rarg(lean_object*, lean_object*); static lean_object* _init_l_term_x23_x5b___x2c_x5d___closed__1() { @@ -6177,6 +6195,390 @@ lean_dec(x_3); return x_4; } } +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +x_6 = lean_usize_dec_eq(x_3, x_4); +if (x_6 == 0) +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_7 = 1; +x_8 = lean_usize_sub(x_3, x_7); +x_9 = lean_array_uget(x_2, x_8); +lean_inc(x_1); +x_10 = lean_apply_1(x_1, x_9); +x_11 = lean_unbox(x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +x_3 = x_8; +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_unsigned_to_nat(1u); +x_14 = lean_nat_add(x_5, x_13); +lean_dec(x_5); +x_3 = x_8; +x_5 = x_14; +goto _start; +} +} +else +{ +lean_dec(x_1); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +x_6 = lean_usize_dec_eq(x_3, x_4); +if (x_6 == 0) +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_7 = 1; +x_8 = lean_usize_sub(x_3, x_7); +x_9 = lean_array_uget(x_2, x_8); +lean_inc(x_1); +x_10 = lean_apply_1(x_1, x_9); +x_11 = lean_unbox(x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +x_3 = x_8; +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_unsigned_to_nat(1u); +x_14 = lean_nat_add(x_5, x_13); +lean_dec(x_5); +x_3 = x_8; +x_5 = x_14; +goto _start; +} +} +else +{ +lean_dec(x_1); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_countP___rarg(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_array_get_size(x_2); +x_4 = lean_nat_dec_le(x_3, x_3); +if (x_4 == 0) +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_lt(x_5, x_3); +if (x_6 == 0) +{ +lean_object* x_7; +lean_dec(x_3); +lean_dec(x_1); +x_7 = lean_unsigned_to_nat(0u); +return x_7; +} +else +{ +size_t x_8; size_t x_9; lean_object* x_10; +x_8 = lean_usize_of_nat(x_3); +lean_dec(x_3); +x_9 = 0; +x_10 = l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg(x_1, x_2, x_8, x_9, x_5); +return x_10; +} +} +else +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_unsigned_to_nat(0u); +x_12 = lean_nat_dec_lt(x_11, x_3); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_3); +lean_dec(x_1); +x_13 = lean_unsigned_to_nat(0u); +return x_13; +} +else +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_usize_of_nat(x_3); +lean_dec(x_3); +x_15 = 0; +x_16 = l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg(x_1, x_2, x_14, x_15, x_11); +return x_16; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_countP(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_countP___rarg___boxed), 2, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = l_Array_foldrMUnsafe_fold___at_Array_countP___spec__1___rarg(x_1, x_2, x_6, x_7, x_5); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = l_Array_foldrMUnsafe_fold___at_Array_countP___spec__2___rarg(x_1, x_2, x_6, x_7, x_5); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_countP___rarg___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Array_countP___rarg(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = lean_usize_dec_eq(x_4, x_5); +if (x_7 == 0) +{ +size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = 1; +x_9 = lean_usize_sub(x_4, x_8); +x_10 = lean_array_uget(x_3, x_9); +lean_inc(x_1); +lean_inc(x_2); +x_11 = lean_apply_2(x_1, x_10, x_2); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +x_4 = x_9; +goto _start; +} +else +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_add(x_6, x_14); +lean_dec(x_6); +x_4 = x_9; +x_6 = x_15; +goto _start; +} +} +else +{ +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg___boxed), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = lean_usize_dec_eq(x_4, x_5); +if (x_7 == 0) +{ +size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = 1; +x_9 = lean_usize_sub(x_4, x_8); +x_10 = lean_array_uget(x_3, x_9); +lean_inc(x_1); +lean_inc(x_2); +x_11 = lean_apply_2(x_1, x_10, x_2); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +x_4 = x_9; +goto _start; +} +else +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_add(x_6, x_14); +lean_dec(x_6); +x_4 = x_9; +x_6 = x_15; +goto _start; +} +} +else +{ +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg___boxed), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_count___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_array_get_size(x_3); +x_5 = lean_nat_dec_le(x_4, x_4); +if (x_5 == 0) +{ +lean_object* x_6; uint8_t x_7; +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_nat_dec_lt(x_6, x_4); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_8 = lean_unsigned_to_nat(0u); +return x_8; +} +else +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_10 = 0; +x_11 = l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg(x_1, x_2, x_3, x_9, x_10, x_6); +return x_11; +} +} +else +{ +lean_object* x_12; uint8_t x_13; +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_lt(x_12, x_4); +if (x_13 == 0) +{ +lean_object* x_14; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_14 = lean_unsigned_to_nat(0u); +return x_14; +} +else +{ +size_t x_15; size_t x_16; lean_object* x_17; +x_15 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_16 = 0; +x_17 = l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg(x_1, x_2, x_3, x_15, x_16, x_12); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_count(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_count___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = l_Array_foldrMUnsafe_fold___at_Array_count___spec__1___rarg(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = l_Array_foldrMUnsafe_fold___at_Array_count___spec__2___rarg(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_count___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Array_count___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Array_map___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { @@ -6870,7 +7272,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Array_swapAt_x21___rarg___closed__3; x_2 = l_Array_findSome_x21___rarg___closed__1; -x_3 = lean_unsigned_to_nat(618u); +x_3 = lean_unsigned_to_nat(627u); x_4 = lean_unsigned_to_nat(14u); x_5 = l_Array_findSome_x21___rarg___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -10116,7 +10518,7 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Basic___hyg_10809_() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Basic___hyg_10860_() { _start: { lean_object* x_1; @@ -10228,7 +10630,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Array_swapAt_x21___rarg___closed__3; x_2 = l_Array_eraseIdx_x21___rarg___closed__1; -x_3 = lean_unsigned_to_nat(846u); +x_3 = lean_unsigned_to_nat(855u); x_4 = lean_unsigned_to_nat(45u); x_5 = l_Array_eraseIdx_x21___rarg___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -10325,7 +10727,7 @@ x_2 = lean_alloc_closure((void*)(l_Array_eraseP___rarg), 2, 0); return x_2; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Basic___hyg_11189_() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Basic___hyg_11240_() { _start: { lean_object* x_1; @@ -10458,7 +10860,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Array_swapAt_x21___rarg___closed__3; x_2 = l_Array_insertIdx_x21___rarg___closed__1; -x_3 = lean_unsigned_to_nat(880u); +x_3 = lean_unsigned_to_nat(889u); x_4 = lean_unsigned_to_nat(7u); x_5 = l_Array_eraseIdx_x21___rarg___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -12471,16 +12873,16 @@ l_Array_filter___rarg___closed__1 = _init_l_Array_filter___rarg___closed__1(); lean_mark_persistent(l_Array_filter___rarg___closed__1); l_Array_partition___rarg___closed__1 = _init_l_Array_partition___rarg___closed__1(); lean_mark_persistent(l_Array_partition___rarg___closed__1); -l___auto____x40_Init_Data_Array_Basic___hyg_10809_ = _init_l___auto____x40_Init_Data_Array_Basic___hyg_10809_(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Basic___hyg_10809_); +l___auto____x40_Init_Data_Array_Basic___hyg_10860_ = _init_l___auto____x40_Init_Data_Array_Basic___hyg_10860_(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Basic___hyg_10860_); l_Array_eraseIdx_x21___rarg___closed__1 = _init_l_Array_eraseIdx_x21___rarg___closed__1(); lean_mark_persistent(l_Array_eraseIdx_x21___rarg___closed__1); l_Array_eraseIdx_x21___rarg___closed__2 = _init_l_Array_eraseIdx_x21___rarg___closed__2(); lean_mark_persistent(l_Array_eraseIdx_x21___rarg___closed__2); l_Array_eraseIdx_x21___rarg___closed__3 = _init_l_Array_eraseIdx_x21___rarg___closed__3(); lean_mark_persistent(l_Array_eraseIdx_x21___rarg___closed__3); -l___auto____x40_Init_Data_Array_Basic___hyg_11189_ = _init_l___auto____x40_Init_Data_Array_Basic___hyg_11189_(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Basic___hyg_11189_); +l___auto____x40_Init_Data_Array_Basic___hyg_11240_ = _init_l___auto____x40_Init_Data_Array_Basic___hyg_11240_(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Basic___hyg_11240_); l_Array_insertIdx_x21___rarg___closed__1 = _init_l_Array_insertIdx_x21___rarg___closed__1(); lean_mark_persistent(l_Array_insertIdx_x21___rarg___closed__1); l_Array_insertIdx_x21___rarg___closed__2 = _init_l_Array_insertIdx_x21___rarg___closed__2(); diff --git a/stage0/stdlib/Init/Data/Array/Count.c b/stage0/stdlib/Init/Data/Array/Count.c new file mode 100644 index 0000000000..1780ed4b71 --- /dev/null +++ b/stage0/stdlib/Init/Data/Array/Count.c @@ -0,0 +1,33 @@ +// Lean compiler output +// Module: Init.Data.Array.Count +// Imports: Init.Data.Array.Lemmas Init.Data.List.Nat.Count +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* initialize_Init_Data_Array_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_List_Nat_Count(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Data_Array_Count(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Data_Array_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_List_Nat_Count(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Data/Array/Lemmas.c b/stage0/stdlib/Init/Data/Array/Lemmas.c index 0396a1a08e..77745de669 100644 --- a/stage0/stdlib/Init/Data/Array/Lemmas.c +++ b/stage0/stdlib/Init/Data/Array/Lemmas.c @@ -14,74 +14,79 @@ extern "C" { #endif LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_take_loop_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_findSomeRevM_x3f_find_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_findSomeRevM_x3f_find_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10; lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_filterMap__mkArray_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap__replicate_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_instDecidableMemOfLawfulBEq___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_toListRev___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25; +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226_; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_toListRev___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_instDecidableMemOfDecidableEq___spec__2(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__GetElem_x3f_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableMemOfLawfulBEq(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Array_instDecidableForallForallMemOfDecidablePred___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20; lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28; +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Option_getD_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_anyM_match__1_splitter___rarg(uint8_t, lean_object*, lean_object*); lean_object* l_Nat_decidableExistsLT_x27(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Array_instDecidableMemOfDecidableEq___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_take_loop_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableMemOfDecidableEq(lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableExistsAndMemOfDecidablePred(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27; LEAN_EXPORT lean_object* l_Array_toListRev___rarg(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_filterMap__mkArray_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_contains___at_Array_instDecidableMemOfDecidableEq___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap__replicate_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18; +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter(lean_object*); LEAN_EXPORT lean_object* l_Array_contains___at_Array_instDecidableMemOfDecidableEq___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap_match__1_splitter(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_toListRev___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Option_getD_match__1_splitter(lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_filterMap__replicate_match__1_splitter(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableExistsAndMemOfDecidablePred___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_take_loop_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_findSomeRevM_x3f_find_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_toListRev___spec__1(lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableForallForallMemOfDecidablePred(lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_anyM_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); @@ -90,42 +95,37 @@ uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_instDecidableMemOfLawfulBEq___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Option_getD_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Array_instDecidableMemOfDecidableEq___spec__2___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5; lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_anyM_match__1_splitter(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__GetElem_x3f_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16; LEAN_EXPORT lean_object* l_Array_instDecidableForallForallMemOfDecidablePred___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Array_instDecidableMemOfDecidableEq___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2; lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_filterMap__mkArray_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28; -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1; +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26; LEAN_EXPORT uint8_t l_Array_instDecidableMemOfDecidableEq___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_toListRev(lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19; LEAN_EXPORT lean_object* l_Array_instDecidableForallForallMemOfDecidablePred___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31; lean_object* lean_array_get_size(lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21; uint8_t lean_nat_dec_le(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5; lean_object* l_Nat_decidableBallLT(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24; LEAN_EXPORT uint8_t l_Array_contains___at_Array_instDecidableMemOfDecidableEq___spec__1___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3; -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171_; LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__GetElem_x3f_match__1_splitter(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26; +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3; LEAN_EXPORT lean_object* l_Array_instDecidableForallForallMemOfDecidablePred___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -322,7 +322,7 @@ lean_dec(x_2); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1() { _start: { lean_object* x_1; @@ -330,7 +330,7 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2() { _start: { lean_object* x_1; @@ -338,7 +338,7 @@ x_1 = lean_mk_string_unchecked("Parser", 6, 6); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3() { _start: { lean_object* x_1; @@ -346,7 +346,7 @@ x_1 = lean_mk_string_unchecked("Tactic", 6, 6); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4() { _start: { lean_object* x_1; @@ -354,19 +354,19 @@ x_1 = lean_mk_string_unchecked("tacticSeq", 9, 9); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3; -x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3; +x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -375,7 +375,7 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7() { _start: { lean_object* x_1; @@ -383,19 +383,19 @@ x_1 = lean_mk_string_unchecked("tacticSeq1Indented", 18, 18); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3; -x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3; +x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9() { _start: { lean_object* x_1; @@ -403,17 +403,17 @@ x_1 = lean_mk_string_unchecked("null", 4, 4); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11() { _start: { lean_object* x_1; @@ -421,41 +421,41 @@ x_1 = lean_mk_string_unchecked("simp", 4, 4); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3; -x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3; +x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15() { _start: { lean_object* x_1; @@ -463,25 +463,25 @@ x_1 = lean_mk_string_unchecked("optConfig", 9, 9); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3; -x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3; +x_4 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -489,23 +489,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -513,63 +513,63 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -577,23 +577,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -601,23 +601,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -625,23 +625,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6; -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5; -x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30; +x_2 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5; +x_3 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -649,11 +649,11 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171_() { +static lean_object* _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31; +x_1 = l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31; return x_1; } } @@ -731,6 +731,210 @@ lean_dec(x_2); return x_4; } } +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_nat_dec_eq(x_1, x_4); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_unsigned_to_nat(1u); +x_7 = lean_nat_sub(x_1, x_6); +x_8 = lean_apply_1(x_3, x_7); +return x_8; +} +else +{ +lean_dec(x_3); +lean_inc(x_2); +return x_2; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_nat_dec_eq(x_1, x_4); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_unsigned_to_nat(1u); +x_7 = lean_nat_sub(x_1, x_6); +x_8 = lean_apply_1(x_3, x_7); +return x_8; +} +else +{ +lean_dec(x_3); +lean_inc(x_2); +return x_2; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_eq(x_1, x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_dec(x_3); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_sub(x_1, x_7); +x_9 = lean_apply_2(x_4, x_8, lean_box(0)); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_4); +x_10 = lean_apply_1(x_3, lean_box(0)); +return x_10; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed), 4, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter(x_1, x_2, x_3); +lean_dec(x_2); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_dec(x_2); +lean_inc(x_3); +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_apply_1(x_2, x_4); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_dec(x_2); +lean_inc(x_3); +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_apply_1(x_2, x_4); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_toListRev___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { @@ -942,136 +1146,6 @@ lean_dec(x_1); return x_5; } } -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; uint8_t x_5; -x_4 = lean_unsigned_to_nat(0u); -x_5 = lean_nat_dec_eq(x_1, x_4); -if (x_5 == 0) -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; -x_6 = lean_unsigned_to_nat(1u); -x_7 = lean_nat_sub(x_1, x_6); -x_8 = lean_apply_1(x_3, x_7); -return x_8; -} -else -{ -lean_dec(x_3); -lean_inc(x_2); -return x_2; -} -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed), 3, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l___private_Init_Data_Array_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(x_1, x_2, x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_4; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; uint8_t x_6; -x_5 = lean_unsigned_to_nat(0u); -x_6 = lean_nat_dec_eq(x_1, x_5); -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; -lean_dec(x_3); -x_7 = lean_unsigned_to_nat(1u); -x_8 = lean_nat_sub(x_1, x_7); -x_9 = lean_apply_2(x_4, x_8, lean_box(0)); -return x_9; -} -else -{ -lean_object* x_10; -lean_dec(x_4); -x_10 = lean_apply_1(x_3, lean_box(0)); -return x_10; -} -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed), 4, 0); -return x_4; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(x_1, x_2, x_3, x_4); -lean_dec(x_1); -return x_5; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l___private_Init_Data_Array_Lemmas_0__Array_isEqvAux_match__1_splitter(x_1, x_2, x_3); -lean_dec(x_2); -return x_4; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; uint8_t x_5; -x_4 = lean_unsigned_to_nat(0u); -x_5 = lean_nat_dec_eq(x_1, x_4); -if (x_5 == 0) -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; -x_6 = lean_unsigned_to_nat(1u); -x_7 = lean_nat_sub(x_1, x_6); -x_8 = lean_apply_1(x_3, x_7); -return x_8; -} -else -{ -lean_dec(x_3); -lean_inc(x_2); -return x_2; -} -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg___boxed), 3, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l___private_Init_Data_Array_Lemmas_0__Array_appendCore_loop_match__1_splitter___rarg(x_1, x_2, x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_4; -} -} LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Array_instDecidableMemOfDecidableEq___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5) { _start: { @@ -1206,80 +1280,6 @@ x_5 = lean_box(x_4); return x_5; } } -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -if (lean_obj_tag(x_1) == 0) -{ -lean_dec(x_2); -lean_inc(x_3); -return x_3; -} -else -{ -lean_object* x_4; lean_object* x_5; -x_4 = lean_ctor_get(x_1, 0); -lean_inc(x_4); -lean_dec(x_1); -x_5 = lean_apply_1(x_2, x_4); -return x_5; -} -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg___boxed), 3, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l___private_Init_Data_Array_Lemmas_0__List_foldl__filterMap_match__1_splitter___rarg(x_1, x_2, x_3); -lean_dec(x_3); -return x_4; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -if (lean_obj_tag(x_1) == 0) -{ -lean_dec(x_2); -lean_inc(x_3); -return x_3; -} -else -{ -lean_object* x_4; lean_object* x_5; -x_4 = lean_ctor_get(x_1, 0); -lean_inc(x_4); -lean_dec(x_1); -x_5 = lean_apply_1(x_2, x_4); -return x_5; -} -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg___boxed), 3, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l___private_Init_Data_Array_Lemmas_0__Array_foldl__filterMap_match__1_splitter___rarg(x_1, x_2, x_3); -lean_dec(x_3); -return x_4; -} -} lean_object* initialize_Init_Data_Nat_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_List_Range(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_List_Nat_TakeDrop(uint8_t builtin, lean_object*); @@ -1333,70 +1333,70 @@ lean_dec_ref(res); res = initialize_Init_Data_List_ToArray(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__1); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__2); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__3); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__4); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__5); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__6); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__7); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__8); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__9); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__10); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__11); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__12); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__13); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__14); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__15); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__16); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__17); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__18); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__19); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__20); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__21); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__22); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__23); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__24); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__25); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__26); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__27); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__28); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__29); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__30); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171____closed__31); -l___auto____x40_Init_Data_Array_Lemmas___hyg_28171_ = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28171_(); -lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28171_); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__1); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__2); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__3); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__4); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__5); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__6); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__7); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__8); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__9); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__10); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__11); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__12); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__13); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__14); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__15); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__16); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__17); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__18); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__19); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__20); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__21); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__22); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__23); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__24); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__25); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__26); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__27); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__28); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__29); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__30); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31 = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226____closed__31); +l___auto____x40_Init_Data_Array_Lemmas___hyg_28226_ = _init_l___auto____x40_Init_Data_Array_Lemmas___hyg_28226_(); +lean_mark_persistent(l___auto____x40_Init_Data_Array_Lemmas___hyg_28226_); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Data/Array/MapIdx.c b/stage0/stdlib/Init/Data/Array/MapIdx.c index 9f2d423744..1fcfa31828 100644 --- a/stage0/stdlib/Init/Data/Array/MapIdx.c +++ b/stage0/stdlib/Init/Data/Array/MapIdx.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.Array.MapIdx -// Imports: Init.Data.Array.Lemmas Init.Data.List.MapIdx +// Imports: Init.Data.Array.Lemmas Init.Data.Array.Attach Init.Data.List.MapIdx #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -71,6 +71,7 @@ return x_5; } } lean_object* initialize_Init_Data_Array_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_Attach(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_List_MapIdx(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_Array_MapIdx(uint8_t builtin, lean_object* w) { @@ -80,6 +81,9 @@ _G_initialized = true; res = initialize_Init_Data_Array_Lemmas(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_Array_Attach(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Init_Data_List_MapIdx(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Init/Data/BitVec/Basic.c b/stage0/stdlib/Init/Data/BitVec/Basic.c index 6dca8b9736..4d4556756d 100644 --- a/stage0/stdlib/Init/Data/BitVec/Basic.c +++ b/stage0/stdlib/Init/Data/BitVec/Basic.c @@ -86,6 +86,7 @@ static lean_object* l_BitVec_term_____x23_______closed__6; static lean_object* l_BitVec___aux__Init__Data__BitVec__Basic______macroRules__BitVec__term_____x23_x27______1___closed__8; LEAN_EXPORT lean_object* l_BitVec_and___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_shiftLeft(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_BitVec_reverse(lean_object*, lean_object*); uint8_t lean_int_dec_le(lean_object*, lean_object*); lean_object* lean_nat_shiftr(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_cast___boxed(lean_object*, lean_object*, lean_object*); @@ -278,6 +279,7 @@ LEAN_EXPORT lean_object* l_BitVec_extractLsb_x27___rarg___boxed(lean_object*, le LEAN_EXPORT lean_object* l_BitVec_instHShiftRightNat___boxed(lean_object*); LEAN_EXPORT lean_object* l_BitVec_smod(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_term_____x23_______closed__3; +LEAN_EXPORT lean_object* l_BitVec_reverse___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_ult___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_mul___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_BitVec_term_____x23_______closed__15; @@ -3689,6 +3691,63 @@ return x_7; } } } +LEAN_EXPORT lean_object* l_BitVec_reverse(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_unsigned_to_nat(0u); +x_4 = lean_nat_dec_eq(x_1, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_5 = lean_unsigned_to_nat(1u); +x_6 = lean_nat_sub(x_1, x_5); +x_7 = lean_nat_add(x_6, x_5); +x_8 = l_BitVec_setWidth(x_7, x_6, x_2); +x_9 = l_BitVec_reverse(x_6, x_8); +lean_dec(x_8); +lean_dec(x_6); +x_10 = lean_nat_dec_lt(x_3, x_7); +if (x_10 == 0) +{ +uint8_t x_11; lean_object* x_12; +lean_dec(x_7); +x_11 = 0; +x_12 = l_BitVec_concat___rarg(x_9, x_11); +lean_dec(x_9); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; +x_13 = lean_nat_sub(x_7, x_5); +lean_dec(x_7); +x_14 = lean_nat_sub(x_13, x_3); +lean_dec(x_13); +x_15 = l_Nat_testBit(x_2, x_14); +lean_dec(x_14); +x_16 = l_BitVec_concat___rarg(x_9, x_15); +lean_dec(x_9); +return x_16; +} +} +else +{ +lean_inc(x_2); +return x_2; +} +} +} +LEAN_EXPORT lean_object* l_BitVec_reverse___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_BitVec_reverse(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} lean_object* initialize_Init_Data_Fin_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Nat_Bitwise_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Nat_Power2(uint8_t builtin, lean_object*); diff --git a/stage0/stdlib/Init/Data/BitVec/Lemmas.c b/stage0/stdlib/Init/Data/BitVec/Lemmas.c index 0ffb3f9fb2..6cb3a05d99 100644 --- a/stage0/stdlib/Init/Data/BitVec/Lemmas.c +++ b/stage0/stdlib/Init/Data/BitVec/Lemmas.c @@ -28,15 +28,18 @@ LEAN_EXPORT lean_object* l_BitVec_instDecidableForallBitVec(lean_object*, lean_o LEAN_EXPORT lean_object* l_BitVec_instDecidableForallBitVecSucc___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableForallBitVec___lambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_sdiv__eq_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_instDecidableNot___rarg(uint8_t); LEAN_EXPORT lean_object* l_BitVec_intMin___boxed(lean_object*); LEAN_EXPORT uint8_t l_BitVec_instDecidableExistsBitVec___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_replicate_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableExistsBitVecSucc___rarg___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableExistsBitVecSucc(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableExistsBitVec___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_BitVec_ofNat(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter(lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableForallBitVec___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_instDecidableExistsBitVecSucc___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_BitVec_intMax___boxed(lean_object*); @@ -310,6 +313,47 @@ lean_dec(x_1); return x_2; } } +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_eq(x_1, x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_dec(x_3); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_sub(x_1, x_7); +x_9 = lean_apply_2(x_4, x_8, x_2); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_4); +x_10 = lean_apply_1(x_3, x_2); +return x_10; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg___boxed), 4, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Data_BitVec_Lemmas_0__BitVec_reverse_match__1_splitter___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_1); +return x_5; +} +} LEAN_EXPORT uint8_t l_BitVec_instDecidableForallBitVecZero___rarg(uint8_t x_1) { _start: { diff --git a/stage0/stdlib/Init/Data/List/Erase.c b/stage0/stdlib/Init/Data/List/Erase.c index f03f5d3a8e..669ae389b2 100644 --- a/stage0/stdlib/Init/Data/List/Erase.c +++ b/stage0/stdlib/Init/Data/List/Erase.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.List.Erase -// Imports: Init.Data.List.Pairwise +// Imports: Init.Data.List.Pairwise Init.Data.List.Find #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -149,6 +149,7 @@ return x_3; } } lean_object* initialize_Init_Data_List_Pairwise(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_List_Find(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_List_Erase(uint8_t builtin, lean_object* w) { lean_object * res; @@ -157,6 +158,9 @@ _G_initialized = true; res = initialize_Init_Data_List_Pairwise(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_List_Find(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Data/Subtype.c b/stage0/stdlib/Init/Data/Subtype.c index b59d8de9c1..7a3e7ca191 100644 --- a/stage0/stdlib/Init/Data/Subtype.c +++ b/stage0/stdlib/Init/Data/Subtype.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.Subtype -// Imports: Init.Ext +// Imports: Init.Ext Init.Core #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,6 +14,7 @@ extern "C" { #endif lean_object* initialize_Init_Ext(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Core(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_Subtype(uint8_t builtin, lean_object* w) { lean_object * res; @@ -22,6 +23,9 @@ _G_initialized = true; res = initialize_Init_Ext(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Core(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Data/Vector.c b/stage0/stdlib/Init/Data/Vector.c index c75693699f..d807558ee4 100644 --- a/stage0/stdlib/Init/Data/Vector.c +++ b/stage0/stdlib/Init/Data/Vector.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.Vector -// Imports: Init.Data.Vector.Basic +// Imports: Init.Data.Vector.Basic Init.Data.Vector.Lemmas Init.Data.Vector.Lex Init.Data.Vector.MapIdx Init.Data.Vector.Count #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,6 +14,10 @@ extern "C" { #endif lean_object* initialize_Init_Data_Vector_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_Lex(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_MapIdx(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_Count(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_Vector(uint8_t builtin, lean_object* w) { lean_object * res; @@ -22,6 +26,18 @@ _G_initialized = true; res = initialize_Init_Data_Vector_Basic(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_Vector_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Vector_Lex(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Vector_MapIdx(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Vector_Count(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Data/Vector/Attach.c b/stage0/stdlib/Init/Data/Vector/Attach.c new file mode 100644 index 0000000000..6a7d7d9517 --- /dev/null +++ b/stage0/stdlib/Init/Data/Vector/Attach.c @@ -0,0 +1,349 @@ +// Lean compiler output +// Module: Init.Data.Vector.Attach +// Imports: Init.Data.Vector.Lemmas Init.Data.Array.Attach +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_attach(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_unattach___rarg(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_unattach(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_unattach___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_attach___rarg___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Vector_pmap___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_add(size_t, size_t); +lean_object* lean_array_uget(lean_object*, size_t); +size_t lean_array_size(lean_object*); +LEAN_EXPORT lean_object* l_Vector_attach___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_pmap___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_pmap(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Vector_attach___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +lean_dec(x_1); +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = 1; +x_10 = lean_usize_add(x_3, x_9); +lean_inc(x_1); +x_11 = lean_apply_2(x_1, x_6, lean_box(0)); +x_12 = lean_array_uset(x_8, x_3, x_11); +x_3 = x_10; +x_4 = x_12; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg___boxed), 4, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Vector_pmap___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_array_size(x_2); +x_5 = 0; +x_6 = l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg(x_1, x_4, x_5, x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Vector_pmap(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = lean_alloc_closure((void*)(l_Vector_pmap___rarg), 3, 0); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Vector_pmap___spec__1___rarg(x_1, x_5, x_6, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Vector_pmap___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Vector_pmap(x_1, x_2, x_3, x_4); +lean_dec(x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_inc(x_1); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___rarg(x_1, x_2, x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l___private_Init_Data_Vector_Attach_0__Vector_attachWithImpl(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_attach___rarg(lean_object* x_1) { +_start: +{ +lean_inc(x_1); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Vector_attach(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Vector_attach___rarg___boxed), 1, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_attach___rarg___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Vector_attach___rarg(x_1); +lean_dec(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_attach___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_attach(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +lean_dec(x_1); +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = 1; +x_10 = lean_usize_add(x_3, x_9); +lean_inc(x_1); +x_11 = lean_apply_2(x_1, x_6, lean_box(0)); +x_12 = lean_array_uset(x_8, x_3, x_11); +x_3 = x_10; +x_4 = x_12; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg___boxed), 4, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_array_size(x_2); +x_5 = 0; +x_6 = l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg(x_1, x_4, x_5, x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = lean_alloc_closure((void*)(l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___rarg), 3, 0); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___spec__1___rarg(x_1, x_5, x_6, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Data_Vector_Attach_0__Vector_pmapImpl(x_1, x_2, x_3, x_4); +lean_dec(x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; size_t x_8; size_t x_9; lean_object* x_10; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = 1; +x_9 = lean_usize_add(x_2, x_8); +x_10 = lean_array_uset(x_7, x_2, x_5); +x_2 = x_9; +x_3 = x_10; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_unattach___rarg(lean_object* x_1) { +_start: +{ +size_t x_2; size_t x_3; lean_object* x_4; +x_2 = lean_array_size(x_1); +x_3 = 0; +x_4 = l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg(x_2, x_3, x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Vector_unattach(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Vector_unattach___rarg), 1, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Vector_unattach___spec__1___rarg(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Vector_unattach___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Vector_unattach(x_1, x_2, x_3); +lean_dec(x_1); +return x_4; +} +} +lean_object* initialize_Init_Data_Vector_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_Attach(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Data_Vector_Attach(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Data_Vector_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Array_Attach(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Data/Vector/Basic.c b/stage0/stdlib/Init/Data/Vector/Basic.c index 9a168a7064..91e4c1c12c 100644 --- a/stage0/stdlib/Init/Data/Vector/Basic.c +++ b/stage0/stdlib/Init/Data/Vector/Basic.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Data.Vector.Basic -// Imports: Init.Data.Array.Lemmas Init.Data.Range +// Imports: Init.Data.Array.Lemmas Init.Data.Array.MapIdx Init.Data.Range #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -13,10 +13,10 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_map___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__2; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__28; +LEAN_EXPORT lean_object* l_Vector_count(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instMembership(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_singleton(lean_object*); static lean_object* l_Vector_lex___rarg___closed__3; @@ -24,27 +24,28 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___ LEAN_EXPORT lean_object* l_Vector_uget___rarg(lean_object*, size_t, lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__2; LEAN_EXPORT lean_object* l_Vector_drop___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__28; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__20; lean_object* l_Array_take___rarg(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Vector_instBEq___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__36; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7; uint8_t l_Array_isEqvAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_flatten___spec__1(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__20; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1822_; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__19; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__31; -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1696_; LEAN_EXPORT lean_object* l_Vector_map___rarg(lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__9; LEAN_EXPORT lean_object* l_Vector_isEqv(lean_object*); LEAN_EXPORT lean_object* l_Vector_back_x21___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_mkVector___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_back_x3f___rarg___boxed(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__17; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__22; LEAN_EXPORT lean_object* l_Vector_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_any___spec__1(lean_object*); @@ -53,8 +54,8 @@ LEAN_EXPORT lean_object* l_Vector_range___boxed(lean_object*); LEAN_EXPORT uint8_t l_Vector_any___rarg(lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__12; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__6; -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457_; LEAN_EXPORT lean_object* l_Vector_eraseIdx_x21___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__37; LEAN_EXPORT lean_object* l_Vector_foldl(lean_object*, lean_object*, lean_object*); @@ -67,24 +68,24 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_map___spec__1(lean_o LEAN_EXPORT uint8_t l_Vector_isEqv___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_pop___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_eraseIdx___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__14; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15; LEAN_EXPORT lean_object* l_instReprVector___rarg(lean_object*); lean_object* lean_array_fswap(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_instReprVector___boxed(lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__24; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__2; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__1; LEAN_EXPORT lean_object* l_Vector_instHAppendHAddNat(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12; LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Vector_back___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24; +LEAN_EXPORT lean_object* l_Vector_back___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33; +LEAN_EXPORT lean_object* l_Vector_mapFinIdx___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_back_x21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_foldr___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624_; LEAN_EXPORT lean_object* l_Array_toVector(lean_object*); LEAN_EXPORT lean_object* l_Vector_get(lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); @@ -94,13 +95,12 @@ LEAN_EXPORT lean_object* l_Vector_swap___boxed(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Vector_swap___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__19; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8; LEAN_EXPORT lean_object* l_Vector_reverse___boxed(lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__13; LEAN_EXPORT lean_object* l_Vector_foldrM___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_swap(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_foldl___spec__1(lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); @@ -113,6 +113,7 @@ LEAN_EXPORT uint8_t l_Array_isEqvAux___at_Vector_instBEq___spec__1___rarg(lean_o LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_any___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__4; lean_object* l_Lean_Syntax_TSepArray_getElems___rarg(lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__25; LEAN_EXPORT uint8_t l_Vector_contains___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instGetElemNatLt(lean_object*, lean_object*); @@ -120,75 +121,82 @@ LEAN_EXPORT lean_object* l_Vector_all(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__decEqVector____x40_Init_Data_Vector_Basic___hyg_98____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__40; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instLE___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldrM(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__16; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_flatten___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_eraseIdx(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27; lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_uget___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_singleton___rarg(lean_object*); LEAN_EXPORT lean_object* l_Vector_contains(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4; LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_foldr___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_all___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_isEqvAux___at_Vector_instBEq___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Vector_instLT___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instGetElemNatLt___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14; LEAN_EXPORT lean_object* l_Vector_any___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_indexOf_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_mapIdx___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_anyM___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18; LEAN_EXPORT lean_object* l_Vector_extract(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4; LEAN_EXPORT lean_object* l_Vector_tail___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_mapIdx___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_setIfInBounds(lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__34; LEAN_EXPORT lean_object* l_Vector_get___rarg(lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__30; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__32; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11; LEAN_EXPORT lean_object* l_Vector_cast___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_all___spec__1(lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10; LEAN_EXPORT uint8_t l_Vector_isPrefixOf___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_foldl___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_mkEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l_Vector_elimAsArray___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__decEqVector____x40_Init_Data_Vector_Basic___hyg_98_(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32; LEAN_EXPORT lean_object* l_Vector_instHAppendHAddNat___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_flatten___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5; LEAN_EXPORT lean_object* l_Vector_head___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Array_range___lambda__1___boxed(lean_object*); size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l_Vector_count___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapAt(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Vector_any___spec__1___rarg(lean_object*, lean_object*, size_t, size_t); +LEAN_EXPORT lean_object* l_Vector_count___rarg___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12; LEAN_EXPORT lean_object* l_Vector_map___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapIfInBounds___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__8; static lean_object* l_Vector_swapAt_x21___rarg___closed__3; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13; LEAN_EXPORT lean_object* l_instReprVector(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldr(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Vector_back(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_back(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__8; lean_object* l_Array_reverse___rarg(lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8; LEAN_EXPORT lean_object* l_Vector_getD___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__7; LEAN_EXPORT lean_object* l_Vector_pop(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_uget___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1; LEAN_EXPORT lean_object* l_Vector_extract___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_mapFinIdx(lean_object*); LEAN_EXPORT lean_object* l_Vector_allM(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldl___rarg(lean_object*, lean_object*, lean_object*); @@ -207,39 +215,39 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_map___spec__1___rarg LEAN_EXPORT lean_object* l_Vector_contains___boxed(lean_object*, lean_object*); lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_all___boxed(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__4; LEAN_EXPORT lean_object* l_Vector_cast___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Vector_extract___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15; LEAN_EXPORT lean_object* l_Vector_set___boxed(lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__10; LEAN_EXPORT lean_object* l_Vector_elimAsArray(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17; LEAN_EXPORT lean_object* l_Vector_contains___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____spec__2(lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5; LEAN_EXPORT lean_object* l_Vector_head___rarg___boxed(lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__9; LEAN_EXPORT lean_object* l_Vector_isPrefixOf___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_foldr___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swap___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_foldl___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Array_back_x3f___rarg(lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_flatMap___rarg___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10; LEAN_EXPORT lean_object* l_panic___at_Vector_swapAt_x21___spec__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2(lean_object*); lean_object* lean_array_pop(lean_object*); LEAN_EXPORT lean_object* l_Vector_reverse(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__27; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Vector_zipWith___rarg(lean_object*, lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__9; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16; lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_map(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_take___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_getD(lean_object*, lean_object*); @@ -258,30 +266,32 @@ LEAN_EXPORT lean_object* l_Vector_swapAt_x21(lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__18; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__20; lean_object* l_Array_anyMUnsafe_any___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25; LEAN_EXPORT lean_object* l_Vector_foldrM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__19; LEAN_EXPORT uint8_t l_Vector_lex___rarg___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Vector_ofFn___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__24; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_flatten___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_eraseIdx_x21___rarg___closed__4; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31; LEAN_EXPORT lean_object* l_Vector_elimAsList___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instInhabited___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_get___rarg___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1704_; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1(lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_flatMap___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldl___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldr___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_swapAt_x21___rarg___closed__1; LEAN_EXPORT lean_object* l_Vector_drop___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___rarg(lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__13; LEAN_EXPORT lean_object* l_Vector_elimAsArray___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_flatMap___spec__1___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); @@ -290,21 +300,25 @@ static lean_object* l_Vector_zipWith___rarg___closed__1; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_eraseIdx_x21(lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23; LEAN_EXPORT lean_object* l_Vector_lex___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_swapAt_x21___rarg___closed__4; LEAN_EXPORT lean_object* l_Vector_back_x3f___rarg(lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__26; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__5; LEAN_EXPORT lean_object* l_Vector_swapAt_x21___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_eraseIdx_x21___rarg___closed__2; LEAN_EXPORT lean_object* l_Vector_set___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__17; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3; lean_object* l_Array_indexOfAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__7; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_back_x21___rarg___boxed(lean_object*, lean_object*); lean_object* l_Array_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_zipWithIndex___rarg(lean_object*); LEAN_EXPORT lean_object* l_Vector_take___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_any(lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__3; @@ -316,18 +330,23 @@ LEAN_EXPORT lean_object* l_Vector_zipWith___boxed(lean_object*, lean_object*, le LEAN_EXPORT lean_object* l_Vector_swapAt___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instBEq(lean_object*); LEAN_EXPORT lean_object* l_Vector_getD___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19; LEAN_EXPORT lean_object* l_instDecidableEqVector___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1(lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_uget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapAt___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapAt_x21___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_countP(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__6; LEAN_EXPORT lean_object* l_Vector_flatMap___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Vector_eraseIdx_x21___spec__1___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_foldr___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Vector_zipWithIndex(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instLE(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__3; LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__decEqVector____x40_Init_Data_Vector_Basic___hyg_98____rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -338,18 +357,18 @@ static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Vector_extract___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldl___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13; LEAN_EXPORT lean_object* l_Vector_lex___rarg___lambda__1___boxed(lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2034_; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16; LEAN_EXPORT lean_object* l_Vector_getD___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instGetElemNatLt___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instBEq___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_push___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6; LEAN_EXPORT uint8_t l_instDecidableEqVector___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Vector_eraseIdx_x21___spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3; static lean_object* l_Vector_eraseIdx_x21___rarg___closed__3; static lean_object* l_Vector_swapAt_x21___rarg___closed__2; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__31; @@ -363,13 +382,13 @@ LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Data_Vector_Ba lean_object* lean_string_length(lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__21; LEAN_EXPORT lean_object* l_Vector_allM___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11; uint8_t l_Array_contains___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__23; +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2160_; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_countP___boxed(lean_object*, lean_object*); static lean_object* l_Vector_instHAppendHAddNat___closed__1; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__33; LEAN_EXPORT lean_object* l_Vector_isPrefixOf(lean_object*, lean_object*, lean_object*); @@ -377,34 +396,38 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapIfInBounds(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_foldlM(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__10; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__23; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31; LEAN_EXPORT lean_object* l_Vector_term_x23v_x5b___x2c_x5d; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__11; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2; LEAN_EXPORT lean_object* l_Array_toVector___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Vector_cast(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_mapIdx___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_swapAt___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__21; lean_object* lean_panic_fn(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_count___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1830_; uint8_t l_Array_instDecidableEq___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8; lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_isEqv___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__11; LEAN_EXPORT lean_object* l_Vector_flatten___rarg___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__38; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19; +LEAN_EXPORT lean_object* l_Vector_mapIdx(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_flatMap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_range___closed__1; LEAN_EXPORT lean_object* l_Vector_append___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__7; LEAN_EXPORT lean_object* l_Vector_tail___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__5; -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Vector_all___spec__1___rarg(lean_object*, lean_object*, size_t, size_t); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__12; LEAN_EXPORT lean_object* l_Vector_mkEmpty___rarg___boxed(lean_object*); @@ -412,7 +435,9 @@ LEAN_EXPORT lean_object* l_Vector_set___rarg(lean_object*, lean_object*, lean_ob LEAN_EXPORT lean_object* l_Vector_flatMap(lean_object*, lean_object*, lean_object*); size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__15; +LEAN_EXPORT lean_object* l_Vector_countP___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Vector_eraseIdx_x21___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_setIfInBounds___boxed(lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__6; @@ -422,10 +447,11 @@ static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__V LEAN_EXPORT lean_object* l_Vector_head(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_allM___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__35; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16; LEAN_EXPORT lean_object* l_instDecidableEqVector(lean_object*, lean_object*); lean_object* l_Array_foldrMUnsafe_fold___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); -LEAN_EXPORT lean_object* l_Vector_back___rarg___boxed(lean_object*); lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18; static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__27; LEAN_EXPORT lean_object* l_Vector_reverse___rarg(lean_object*); size_t lean_array_size(lean_object*); @@ -433,27 +459,33 @@ lean_object* l_Array_foldlMUnsafe_fold___rarg(lean_object*, lean_object*, lean_o LEAN_EXPORT lean_object* l_instDecidableEqVector___boxed(lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__11; LEAN_EXPORT lean_object* l_Vector_instInhabited(lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29; static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__4; LEAN_EXPORT lean_object* l_Vector_swapIfInBounds___boxed(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9; LEAN_EXPORT lean_object* l_Vector_swapIfInBounds___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_mapFinIdx___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_flatMap___spec__1(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11; LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_foldr___spec__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088_; LEAN_EXPORT lean_object* l_Vector_set_x21___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_drop(lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT uint8_t l___private_Init_Data_Vector_Basic_0__decEqVector____x40_Init_Data_Vector_Basic___hyg_98____rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_take___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_zipWith___rarg___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27; static lean_object* l_Vector_eraseIdx_x21___rarg___closed__1; LEAN_EXPORT lean_object* l_Vector_instMembership___boxed(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Vector_indexOf_x3f___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1904_; LEAN_EXPORT lean_object* l_Vector_append___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_flatten(lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__5; LEAN_EXPORT lean_object* l_Vector_set(lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); @@ -467,30 +499,34 @@ static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init static lean_object* l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__4; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Vector_flatten___spec__2(lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); -static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5; LEAN_EXPORT lean_object* l_Vector_setIfInBounds___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__18; LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____spec__1___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6; LEAN_EXPORT lean_object* l_Vector_zipWith(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__12; LEAN_EXPORT lean_object* l_Vector_range(lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1778_; static lean_object* l_Vector_term_x23v_x5b___x2c_x5d___closed__17; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Vector_mkEmpty(lean_object*); LEAN_EXPORT lean_object* l_Vector_eraseIdx_x21___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_push___rarg(lean_object*, lean_object*); +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9; LEAN_EXPORT lean_object* l_Vector_back_x21___rarg(lean_object*, lean_object*); lean_object* l_String_toSubstring_x27(lean_object*); -LEAN_EXPORT lean_object* l_Vector_back___rarg(lean_object*); -LEAN_EXPORT lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_1091_; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); +LEAN_EXPORT lean_object* l_Vector_countP___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_anyM(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Init_Data_Vector_Basic_0__reprVector____x40_Init_Data_Vector_Basic___hyg_32____rarg___closed__13; +static lean_object* l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22; LEAN_EXPORT lean_object* l_Vector_elimAsList(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_mkVector(lean_object*); LEAN_EXPORT lean_object* l_Vector_append___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_flatten___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Vector_allM___spec__1___rarg___lambda__2(size_t, lean_object*, lean_object*, lean_object*, lean_object*, size_t, uint8_t); LEAN_EXPORT lean_object* l_Vector_drop___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instLT(lean_object*, lean_object*, lean_object*); @@ -2295,40 +2331,25 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Vector_back___rarg(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Vector_back(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_2 = lean_unsigned_to_nat(0u); -x_3 = lean_array_fget(x_1, x_2); -x_4 = l_Array_back_x21___rarg(x_3, x_1); -return x_4; +lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_5 = lean_unsigned_to_nat(1u); +x_6 = lean_nat_sub(x_1, x_5); +x_7 = lean_array_fget(x_4, x_6); +lean_dec(x_6); +return x_7; } } -LEAN_EXPORT lean_object* l_Vector_back(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Vector_back___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_4; -x_4 = lean_alloc_closure((void*)(l_Vector_back___rarg___boxed), 1, 0); -return x_4; -} -} -LEAN_EXPORT lean_object* l_Vector_back___rarg___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Vector_back___rarg(x_1); +lean_object* x_5; +x_5 = l_Vector_back(x_1, x_2, x_3, x_4); +lean_dec(x_4); lean_dec(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Vector_back___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Vector_back(x_1, x_2, x_3); -lean_dec(x_1); -return x_4; +return x_5; } } LEAN_EXPORT lean_object* l_Vector_head___rarg(lean_object* x_1) { @@ -2416,7 +2437,7 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1() { _start: { lean_object* x_1; @@ -2424,7 +2445,7 @@ x_1 = lean_mk_string_unchecked("Tactic", 6, 6); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2() { _start: { lean_object* x_1; @@ -2432,19 +2453,19 @@ x_1 = lean_mk_string_unchecked("tacticSeq", 9, 9); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1; -x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1; +x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4() { _start: { lean_object* x_1; @@ -2452,19 +2473,19 @@ x_1 = lean_mk_string_unchecked("tacticSeq1Indented", 18, 18); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1; -x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1; +x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6() { _start: { lean_object* x_1; @@ -2472,17 +2493,17 @@ x_1 = lean_mk_string_unchecked("tacticGet_elem_tactic", 21, 21); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8() { _start: { lean_object* x_1; @@ -2490,35 +2511,35 @@ x_1 = lean_mk_string_unchecked("get_elem_tactic", 15, 15); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -2526,23 +2547,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__15; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -2550,23 +2571,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -2574,23 +2595,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -2598,11 +2619,11 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; return x_1; } } @@ -3316,6 +3337,178 @@ lean_dec(x_3); return x_4; } } +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_unsigned_to_nat(0u); +x_9 = lean_nat_dec_eq(x_4, x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_10 = lean_unsigned_to_nat(1u); +x_11 = lean_nat_sub(x_4, x_10); +lean_dec(x_4); +x_12 = lean_array_fget(x_3, x_5); +lean_inc(x_1); +lean_inc(x_5); +x_13 = lean_apply_2(x_1, x_5, x_12); +x_14 = lean_nat_add(x_5, x_10); +lean_dec(x_5); +x_15 = lean_array_push(x_7, x_13); +x_4 = x_11; +x_5 = x_14; +x_6 = lean_box(0); +x_7 = x_15; +goto _start; +} +else +{ +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg___boxed), 7, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_mapIdx___rarg(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_3 = lean_array_get_size(x_2); +x_4 = lean_mk_empty_array_with_capacity(x_3); +x_5 = lean_unsigned_to_nat(0u); +x_6 = l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg(x_1, x_2, x_2, x_3, x_5, lean_box(0), x_4); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Vector_mapIdx(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Vector_mapIdx___rarg___boxed), 2, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Array_mapFinIdxM_map___at_Vector_mapIdx___spec__1___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Vector_mapIdx___rarg___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_mapIdx___rarg(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_mapIdx___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Vector_mapIdx(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_eq(x_6, x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_unsigned_to_nat(1u); +x_13 = lean_nat_sub(x_6, x_12); +lean_dec(x_6); +x_14 = lean_array_fget(x_5, x_7); +lean_inc(x_4); +lean_inc(x_7); +x_15 = lean_apply_3(x_4, x_7, x_14, lean_box(0)); +x_16 = lean_nat_add(x_7, x_12); +lean_dec(x_7); +x_17 = lean_array_push(x_9, x_15); +x_2 = lean_box(0); +x_6 = x_13; +x_7 = x_16; +x_8 = lean_box(0); +x_9 = x_17; +goto _start; +} +else +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +return x_9; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg___boxed), 9, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_mapFinIdx___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_5 = lean_array_get_size(x_3); +x_6 = lean_mk_empty_array_with_capacity(x_5); +x_7 = lean_unsigned_to_nat(0u); +x_8 = l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg(x_1, lean_box(0), x_3, x_4, x_3, x_5, x_7, lean_box(0), x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Vector_mapFinIdx(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Vector_mapFinIdx___rarg___boxed), 4, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Array_mapFinIdxM_map___at_Vector_mapFinIdx___spec__1___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Vector_mapFinIdx___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Vector_mapFinIdx___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_1); +return x_5; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Vector_flatten___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { @@ -3581,6 +3774,40 @@ lean_dec(x_2); return x_4; } } +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___rarg(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Array_zipWithIndex___rarg(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_zipWithIndex(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Vector_zipWithIndex___rarg___boxed), 1, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___rarg___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Vector_zipWithIndex___rarg(x_1); +lean_dec(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_zipWithIndex___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_zipWithIndex(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} static lean_object* _init_l_Vector_zipWith___rarg___closed__1() { _start: { @@ -3644,19 +3871,19 @@ lean_dec(x_1); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1696_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1822_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1704_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1830_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; return x_1; } } @@ -3730,11 +3957,11 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1778_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1904_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; return x_1; } } @@ -4150,11 +4377,11 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2034_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2160_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17; return x_1; } } @@ -4230,7 +4457,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Vector_eraseIdx_x21___rarg___closed__1; x_2 = l_Vector_eraseIdx_x21___rarg___closed__2; -x_3 = lean_unsigned_to_nat(268u); +x_3 = lean_unsigned_to_nat(279u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Vector_eraseIdx_x21___rarg___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4920,6 +5147,408 @@ lean_dec(x_2); return x_3; } } +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +x_6 = lean_usize_dec_eq(x_3, x_4); +if (x_6 == 0) +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_7 = 1; +x_8 = lean_usize_sub(x_3, x_7); +x_9 = lean_array_uget(x_2, x_8); +lean_inc(x_1); +x_10 = lean_apply_1(x_1, x_9); +x_11 = lean_unbox(x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +x_3 = x_8; +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_unsigned_to_nat(1u); +x_14 = lean_nat_add(x_5, x_13); +lean_dec(x_5); +x_3 = x_8; +x_5 = x_14; +goto _start; +} +} +else +{ +lean_dec(x_1); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +x_6 = lean_usize_dec_eq(x_3, x_4); +if (x_6 == 0) +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_7 = 1; +x_8 = lean_usize_sub(x_3, x_7); +x_9 = lean_array_uget(x_2, x_8); +lean_inc(x_1); +x_10 = lean_apply_1(x_1, x_9); +x_11 = lean_unbox(x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +x_3 = x_8; +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_unsigned_to_nat(1u); +x_14 = lean_nat_add(x_5, x_13); +lean_dec(x_5); +x_3 = x_8; +x_5 = x_14; +goto _start; +} +} +else +{ +lean_dec(x_1); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg___boxed), 5, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_countP___rarg(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_array_get_size(x_2); +x_4 = lean_nat_dec_le(x_3, x_3); +if (x_4 == 0) +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_lt(x_5, x_3); +if (x_6 == 0) +{ +lean_object* x_7; +lean_dec(x_3); +lean_dec(x_1); +x_7 = lean_unsigned_to_nat(0u); +return x_7; +} +else +{ +size_t x_8; size_t x_9; lean_object* x_10; +x_8 = lean_usize_of_nat(x_3); +lean_dec(x_3); +x_9 = 0; +x_10 = l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg(x_1, x_2, x_8, x_9, x_5); +return x_10; +} +} +else +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_unsigned_to_nat(0u); +x_12 = lean_nat_dec_lt(x_11, x_3); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_3); +lean_dec(x_1); +x_13 = lean_unsigned_to_nat(0u); +return x_13; +} +else +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_usize_of_nat(x_3); +lean_dec(x_3); +x_15 = 0; +x_16 = l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg(x_1, x_2, x_14, x_15, x_11); +return x_16; +} +} +} +} +LEAN_EXPORT lean_object* l_Vector_countP(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Vector_countP___rarg___boxed), 2, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__1___rarg(x_1, x_2, x_6, x_7, x_5); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = l_Array_foldrMUnsafe_fold___at_Vector_countP___spec__2___rarg(x_1, x_2, x_6, x_7, x_5); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Vector_countP___rarg___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_countP___rarg(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Vector_countP___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_countP(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = lean_usize_dec_eq(x_4, x_5); +if (x_7 == 0) +{ +size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = 1; +x_9 = lean_usize_sub(x_4, x_8); +x_10 = lean_array_uget(x_3, x_9); +lean_inc(x_1); +lean_inc(x_2); +x_11 = lean_apply_2(x_1, x_10, x_2); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +x_4 = x_9; +goto _start; +} +else +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_add(x_6, x_14); +lean_dec(x_6); +x_4 = x_9; +x_6 = x_15; +goto _start; +} +} +else +{ +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg___boxed), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = lean_usize_dec_eq(x_4, x_5); +if (x_7 == 0) +{ +size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = 1; +x_9 = lean_usize_sub(x_4, x_8); +x_10 = lean_array_uget(x_3, x_9); +lean_inc(x_1); +lean_inc(x_2); +x_11 = lean_apply_2(x_1, x_10, x_2); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +x_4 = x_9; +goto _start; +} +else +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_add(x_6, x_14); +lean_dec(x_6); +x_4 = x_9; +x_6 = x_15; +goto _start; +} +} +else +{ +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg___boxed), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Vector_count___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_array_get_size(x_3); +x_5 = lean_nat_dec_le(x_4, x_4); +if (x_5 == 0) +{ +lean_object* x_6; uint8_t x_7; +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_nat_dec_lt(x_6, x_4); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_8 = lean_unsigned_to_nat(0u); +return x_8; +} +else +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_10 = 0; +x_11 = l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg(x_1, x_2, x_3, x_9, x_10, x_6); +return x_11; +} +} +else +{ +lean_object* x_12; uint8_t x_13; +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_lt(x_12, x_4); +if (x_13 == 0) +{ +lean_object* x_14; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_14 = lean_unsigned_to_nat(0u); +return x_14; +} +else +{ +size_t x_15; size_t x_16; lean_object* x_17; +x_15 = lean_usize_of_nat(x_4); +lean_dec(x_4); +x_16 = 0; +x_17 = l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg(x_1, x_2, x_3, x_15, x_16, x_12); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l_Vector_count(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Vector_count___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = l_Array_foldrMUnsafe_fold___at_Vector_count___spec__1___rarg(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = l_Array_foldrMUnsafe_fold___at_Vector_count___spec__2___rarg(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Vector_count___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Vector_count___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Vector_count___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Vector_count(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Vector_instLT(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -4956,7 +5585,7 @@ lean_dec(x_2); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1() { _start: { lean_object* x_1; @@ -4964,41 +5593,41 @@ x_1 = lean_mk_string_unchecked("exact", 5, 5); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1; -x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1; +x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5() { _start: { lean_object* x_1; @@ -5006,19 +5635,19 @@ x_1 = lean_mk_string_unchecked("paren", 5, 5); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; x_3 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__3; -x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5; +x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -5030,17 +5659,17 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9() { _start: { lean_object* x_1; @@ -5048,17 +5677,17 @@ x_1 = lean_mk_string_unchecked("term_<_", 7, 7); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11() { _start: { lean_object* x_1; @@ -5066,19 +5695,19 @@ x_1 = lean_mk_string_unchecked("cdot", 4, 4); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__1; x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__2; x_3 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__3; -x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11; +x_4 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13() { _start: { lean_object* x_1; @@ -5086,35 +5715,35 @@ x_1 = lean_mk_string_unchecked("·", 2, 1); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5122,17 +5751,17 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18() { _start: { lean_object* x_1; @@ -5140,45 +5769,45 @@ x_1 = lean_mk_string_unchecked("<", 1, 1); return x_1; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18; x_3 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5186,17 +5815,17 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -5208,23 +5837,23 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5232,23 +5861,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5256,23 +5885,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); x_2 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__15; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5280,23 +5909,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5304,23 +5933,23 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__26; -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32; x_3 = lean_array_push(x_1, x_2); return x_3; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(2); -x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3; -x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33; +x_2 = l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3; +x_3 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33; x_4 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -5328,11 +5957,11 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457_() { +static lean_object* _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624_() { _start: { lean_object* x_1; -x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34; +x_1 = l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34; return x_1; } } @@ -5580,6 +6209,7 @@ return x_6; } } lean_object* initialize_Init_Data_Array_Lemmas(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_MapIdx(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Range(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Data_Vector_Basic(uint8_t builtin, lean_object* w) { @@ -5589,6 +6219,9 @@ _G_initialized = true; res = initialize_Init_Data_Array_Lemmas(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Data_Array_MapIdx(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Init_Data_Range(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -5776,52 +6409,52 @@ l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b lean_mark_persistent(l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__30); l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__31 = _init_l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__31(); lean_mark_persistent(l_Vector___aux__Init__Data__Vector__Basic______macroRules__Vector__term_x23v_x5b___x2c_x5d__1___closed__31); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__1); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__2); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__3); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__4); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__5); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__6); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__7); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__8); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__9); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__10); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__11); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__12); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__13); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__14); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__15); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__16); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091____closed__17); -l___auto____x40_Init_Data_Vector_Basic___hyg_1091_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1091_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1091_); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__1); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__2); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__3); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__4); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__5); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__6); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__7); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__8); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__9); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__10); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__11); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__12); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__13); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__14); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__15); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__16); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088____closed__17); +l___auto____x40_Init_Data_Vector_Basic___hyg_1088_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1088_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1088_); l_Vector_instHAppendHAddNat___closed__1 = _init_l_Vector_instHAppendHAddNat___closed__1(); lean_mark_persistent(l_Vector_instHAppendHAddNat___closed__1); l_Vector_zipWith___rarg___closed__1 = _init_l_Vector_zipWith___rarg___closed__1(); lean_mark_persistent(l_Vector_zipWith___rarg___closed__1); -l___auto____x40_Init_Data_Vector_Basic___hyg_1696_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1696_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1696_); -l___auto____x40_Init_Data_Vector_Basic___hyg_1704_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1704_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1704_); -l___auto____x40_Init_Data_Vector_Basic___hyg_1778_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1778_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1778_); +l___auto____x40_Init_Data_Vector_Basic___hyg_1822_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1822_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1822_); +l___auto____x40_Init_Data_Vector_Basic___hyg_1830_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1830_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1830_); +l___auto____x40_Init_Data_Vector_Basic___hyg_1904_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_1904_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_1904_); l_Vector_swapAt_x21___rarg___closed__1 = _init_l_Vector_swapAt_x21___rarg___closed__1(); lean_mark_persistent(l_Vector_swapAt_x21___rarg___closed__1); l_Vector_swapAt_x21___rarg___closed__2 = _init_l_Vector_swapAt_x21___rarg___closed__2(); @@ -5832,8 +6465,8 @@ l_Vector_swapAt_x21___rarg___closed__4 = _init_l_Vector_swapAt_x21___rarg___clos lean_mark_persistent(l_Vector_swapAt_x21___rarg___closed__4); l_Vector_range___closed__1 = _init_l_Vector_range___closed__1(); lean_mark_persistent(l_Vector_range___closed__1); -l___auto____x40_Init_Data_Vector_Basic___hyg_2034_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2034_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2034_); +l___auto____x40_Init_Data_Vector_Basic___hyg_2160_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2160_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2160_); l_Vector_eraseIdx_x21___rarg___closed__1 = _init_l_Vector_eraseIdx_x21___rarg___closed__1(); lean_mark_persistent(l_Vector_eraseIdx_x21___rarg___closed__1); l_Vector_eraseIdx_x21___rarg___closed__2 = _init_l_Vector_eraseIdx_x21___rarg___closed__2(); @@ -5842,76 +6475,76 @@ l_Vector_eraseIdx_x21___rarg___closed__3 = _init_l_Vector_eraseIdx_x21___rarg___ lean_mark_persistent(l_Vector_eraseIdx_x21___rarg___closed__3); l_Vector_eraseIdx_x21___rarg___closed__4 = _init_l_Vector_eraseIdx_x21___rarg___closed__4(); lean_mark_persistent(l_Vector_eraseIdx_x21___rarg___closed__4); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__1); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__2); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__3); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__4); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__5); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__6); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__7); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__8); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__9); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__10); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__11); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__12); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__13); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__14); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__15); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__16); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__17); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__18); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__19); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__20); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__21); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__22); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__23); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__24); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__25); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__26); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__27); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__28); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__29); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__30); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__31); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__32); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__33); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457____closed__34); -l___auto____x40_Init_Data_Vector_Basic___hyg_2457_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2457_(); -lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2457_); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__1); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__2); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__3); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__4); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__5); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__6); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__7); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__8); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__9); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__10); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__11); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__12); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__13); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__14); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__15); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__16); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__17); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__18); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__19); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__20); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__21); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__22); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__23); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__24); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__25); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__26); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__27); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__28); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__29); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__30); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__31); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__32); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__33); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34 = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624____closed__34); +l___auto____x40_Init_Data_Vector_Basic___hyg_2624_ = _init_l___auto____x40_Init_Data_Vector_Basic___hyg_2624_(); +lean_mark_persistent(l___auto____x40_Init_Data_Vector_Basic___hyg_2624_); l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__1 = _init_l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__1(); lean_mark_persistent(l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__1); l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__2 = _init_l_Std_Range_forIn_x27_loop___at_Vector_lex___spec__1___rarg___closed__2(); diff --git a/stage0/stdlib/Init/Data/Vector/Count.c b/stage0/stdlib/Init/Data/Vector/Count.c new file mode 100644 index 0000000000..fd0d1e5bb1 --- /dev/null +++ b/stage0/stdlib/Init/Data/Vector/Count.c @@ -0,0 +1,33 @@ +// Lean compiler output +// Module: Init.Data.Vector.Count +// Imports: Init.Data.Array.Count Init.Data.Vector.Lemmas +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* initialize_Init_Data_Array_Count(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_Lemmas(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Data_Vector_Count(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Data_Array_Count(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Vector_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Data/Vector/Lemmas.c b/stage0/stdlib/Init/Data/Vector/Lemmas.c index 27ab46a197..c769cf3437 100644 --- a/stage0/stdlib/Init/Data/Vector/Lemmas.c +++ b/stage0/stdlib/Init/Data/Vector/Lemmas.c @@ -15,6 +15,8 @@ extern "C" { #endif LEAN_EXPORT uint8_t l_Vector_instDecidableExistsVectorSucc___rarg(uint8_t); LEAN_EXPORT lean_object* l_Vector_instDecidableExistsVectorSucc___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableForallVectorSucc___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableExistsAndMemOfDecidablePred___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableForallVectorSucc(lean_object*, lean_object*, lean_object*); @@ -35,7 +37,11 @@ LEAN_EXPORT uint8_t l_Vector_instDecidableForallVectorSucc___rarg(uint8_t); LEAN_EXPORT uint8_t l_Vector_instDecidableExistsVectorZero___rarg(uint8_t); LEAN_EXPORT lean_object* l_Vector_instDecidableForallVectorZero(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableForallForallMemOfDecidablePred___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableExistsVectorSucc(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Vector_instDecidableExistsAndMemOfDecidablePred(lean_object*); uint8_t l_Array_contains___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Vector_instDecidableMemOfLawfulBEq___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -154,6 +160,80 @@ lean_dec(x_2); return x_3; } } +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_dec(x_2); +lean_inc(x_3); +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_apply_1(x_2, x_4); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Vector_Lemmas_0__Array_foldl__filterMap_x27_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_dec(x_2); +lean_inc(x_3); +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_apply_1(x_2, x_4); +return x_5; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg___boxed), 3, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Data_Vector_Lemmas_0__Vector_foldl__filterMap_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} LEAN_EXPORT uint8_t l_Vector_instDecidableForallVectorZero___rarg(uint8_t x_1) { _start: { diff --git a/stage0/stdlib/Init/Data/Vector/MapIdx.c b/stage0/stdlib/Init/Data/Vector/MapIdx.c new file mode 100644 index 0000000000..5dc2ca33eb --- /dev/null +++ b/stage0/stdlib/Init/Data/Vector/MapIdx.c @@ -0,0 +1,33 @@ +// Lean compiler output +// Module: Init.Data.Vector.MapIdx +// Imports: Init.Data.Array.MapIdx Init.Data.Vector.Lemmas +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* initialize_Init_Data_Array_MapIdx(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Vector_Lemmas(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Data_Vector_MapIdx(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Data_Array_MapIdx(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Vector_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Grind/Cases.c b/stage0/stdlib/Init/Grind/Cases.c index 3904fb59dc..280b68a0b2 100644 --- a/stage0/stdlib/Init/Grind/Cases.c +++ b/stage0/stdlib/Init/Grind/Cases.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Grind.Cases -// Imports: Init.Core +// Imports: Init.Core Init.Grind.Tactics #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,6 +14,7 @@ extern "C" { #endif lean_object* initialize_Init_Core(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Grind_Tactics(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Grind_Cases(uint8_t builtin, lean_object* w) { lean_object * res; @@ -22,6 +23,9 @@ _G_initialized = true; res = initialize_Init_Core(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Grind_Tactics(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Init/Internal/Order.c b/stage0/stdlib/Init/Internal/Order.c index 5285d39c0b..0959286870 100644 --- a/stage0/stdlib/Init/Internal/Order.c +++ b/stage0/stdlib/Init/Internal/Order.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Init.Internal.Order -// Imports: Init.Internal.Order.Basic Init.Internal.Order.Tactic +// Imports: Init.Internal.Order.Basic Init.Internal.Order.Lemmas Init.Internal.Order.Tactic #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,6 +14,7 @@ extern "C" { #endif lean_object* initialize_Init_Internal_Order_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Internal_Order_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Init_Internal_Order_Tactic(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Init_Internal_Order(uint8_t builtin, lean_object* w) { @@ -23,6 +24,9 @@ _G_initialized = true; res = initialize_Init_Internal_Order_Basic(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Internal_Order_Lemmas(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Init_Internal_Order_Tactic(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Init/Internal/Order/Lemmas.c b/stage0/stdlib/Init/Internal/Order/Lemmas.c new file mode 100644 index 0000000000..921c89dd75 --- /dev/null +++ b/stage0/stdlib/Init/Internal/Order/Lemmas.c @@ -0,0 +1,191 @@ +// Lean compiler output +// Module: Init.Internal.Order.Lemmas +// Imports: Init.Data.List.Control Init.Data.Array.Basic Init.Internal.Order.Basic +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter(lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_sub(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_eq(x_1, x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_dec(x_3); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_sub(x_1, x_7); +x_9 = lean_apply_2(x_4, x_8, lean_box(0)); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_4); +x_10 = lean_apply_1(x_3, lean_box(0)); +return x_10; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed), 4, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Internal_Order_Lemmas_0__Array_isEqvAux_match__1_splitter(x_1, x_2, x_3); +lean_dec(x_2); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_nat_dec_eq(x_1, x_4); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_unsigned_to_nat(1u); +x_7 = lean_nat_sub(x_1, x_6); +x_8 = lean_apply_1(x_3, x_7); +return x_8; +} +else +{ +lean_dec(x_3); +lean_inc(x_2); +return x_2; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed), 3, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Init_Internal_Order_Lemmas_0__Array_foldlM_loop_match__1_splitter___rarg(x_1, x_2, x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_unsigned_to_nat(0u); +x_6 = lean_nat_dec_eq(x_1, x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +lean_dec(x_3); +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_sub(x_1, x_7); +x_9 = lean_apply_2(x_4, x_8, lean_box(0)); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_4); +x_10 = lean_apply_1(x_3, lean_box(0)); +return x_10; +} +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = lean_alloc_closure((void*)(l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg___boxed), 4, 0); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___rarg(x_1, x_2, x_3, x_4); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l___private_Init_Internal_Order_Lemmas_0__Array_mapFinIdxM_map_match__1_splitter(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_5; +} +} +lean_object* initialize_Init_Data_List_Control(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Internal_Order_Basic(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Init_Internal_Order_Lemmas(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Data_List_Control(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Array_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Internal_Order_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Init/Meta.c b/stage0/stdlib/Init/Meta.c index 931c6c96bf..60ca3ab155 100644 --- a/stage0/stdlib/Init/Meta.c +++ b/stage0/stdlib/Init/Meta.c @@ -16,44 +16,46 @@ extern "C" { LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instQuoteListMkStr1(lean_object*); static lean_object* l_Lean_Name_reprPrec___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__7; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_TSyntax_expandInterpolatedStrChunks___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__3; static lean_object* l_Lean_Name_escapePart___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19; LEAN_EXPORT lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__termEval__prio____1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__26; LEAN_EXPORT lean_object* l_Lean_evalPrio(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_quoteNameMk___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30; lean_object* lean_string_utf8_extract(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); static lean_object* l_Lean_instQuoteSubstringMkStr1___closed__2; static lean_object* l_Lean_mkGroupNode___closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Name_reprPrec(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSepArray___boxed(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__4; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeNameLit(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8; LEAN_EXPORT lean_object* l_Lean_mkCIdentFromRef___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeStringGap(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_mkNameLit___closed__2; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNumLitTerm(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_mkStrLit___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSyntaxArray___boxed(lean_object*); +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; LEAN_EXPORT lean_object* l_Lean_instQuoteProdMkStr1___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_origin___closed__1; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__9; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__24; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__26; static lean_object* l_List_foldr___at_Substring_toName___spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_getHead_x3f___lambda__1(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__65; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__50; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailSyntax___rarg(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3; LEAN_EXPORT lean_object* l_Lean_Syntax_mkNameLit(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__3; @@ -61,8 +63,6 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__16; LEAN_EXPORT lean_object* l_Lean_instQuoteArrayMkStr1___rarg(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_mapSepElemsMAux___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__1; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_splitNameLitAux(lean_object*, lean_object*); @@ -71,9 +71,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion___rarg___boxed(le LEAN_EXPORT lean_object* l_Lean_HygieneInfo_mkIdent___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Macro_throwErrorAt___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14; uint32_t lean_string_utf8_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_getSepElems___rarg(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decode___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__8; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateFirst___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -81,11 +81,10 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_decodeStrLit(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_isScientificLit_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_ofElemsUsingRef___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20; static lean_object* l_Lean_TSyntax_expandInterpolatedStr___lambda__1___closed__1; lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_push___rarg(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410_(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__67; LEAN_EXPORT lean_object* l_Lean_Syntax_setHeadInfo(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_isNameLit_x3f___boxed(lean_object*); @@ -94,6 +93,8 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_dsimpKind; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decodeExp___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArith___closed__5; LEAN_EXPORT lean_object* l_Lean_Syntax_instReprTSyntax(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__12; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_toCtorIdx___boxed(lean_object*); @@ -106,17 +107,18 @@ LEAN_EXPORT lean_object* l_Lean_githash; static lean_object* l_Lean_versionString___closed__1; LEAN_EXPORT lean_object* l_Lean_TSyntax_getName(lean_object*); LEAN_EXPORT uint8_t l_String_anyAux___at_Lean_Name_isInaccessibleUserName___spec__1(uint32_t, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__84; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11; lean_object* lean_uint32_to_nat(uint32_t); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23; LEAN_EXPORT lean_object* l_Lean_Syntax_instRepr; LEAN_EXPORT lean_object* l_Lean_evalPrec(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32; LEAN_EXPORT lean_object* l_Lean_Syntax_getTailInfo___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__40; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__13; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_filterSepElemsMAux___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__52; LEAN_EXPORT lean_object* l_Lean_Name_instRepr; @@ -124,28 +126,29 @@ static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__25; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_version_getMajor___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_toStringWithSep_maybeEscape___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterSepElemsM___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__25; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__107; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28; static lean_object* l_Lean_Name_reprPrec___closed__5; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__48; LEAN_EXPORT lean_object* lean_name_append_after(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__4; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; static lean_object* l_Lean_TSyntax_getScientific___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__10; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2; static lean_object* l_Lean_termEval__prio_____closed__6; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_TSyntax_expandInterpolatedStrChunks___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__15; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9; static lean_object* l_Lean_termEval__prec_____closed__8; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__39; LEAN_EXPORT lean_object* l_Substring_takeWhileAux___at___private_Init_Meta_0__Lean_Syntax_splitNameLitAux___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__100; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18; extern lean_object* l_Lean_maxRecDepthErrorMessage; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__35; static lean_object* l_Lean_Syntax_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr4Nil___closed__3; @@ -153,37 +156,31 @@ LEAN_EXPORT lean_object* l_Lean_Name_toString___boxed(lean_object*, lean_object* lean_object* l_Lean_Syntax_getHeadInfo(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_mapSepElemsMAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__16; LEAN_EXPORT lean_object* l_List_elem___at_Lean_Meta_Occurrences_contains___spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_versionString___closed__4; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__1; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__3; static lean_object* l_Lean_Option_hasQuote___rarg___closed__4; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decode(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Tactic_location; -LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__9; LEAN_EXPORT lean_object* l_Lean_mkOptionalNode___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2; static lean_object* l_Lean_evalPrec___closed__1; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateFirst___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____boxed(lean_object*, lean_object*); static lean_object* l_Lean_versionString___closed__7; LEAN_EXPORT lean_object* l_Lean_withHeadRefOnly___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Syntax_mkNumLit___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__80; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22; LEAN_EXPORT lean_object* l_Lean_TSyntax_getString(lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_expandInterpolatedStr___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780_(uint8_t, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__37; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNumLitPrec(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_toCtorIdx(uint8_t); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeHexDigit(lean_object*, lean_object*); @@ -193,10 +190,13 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean LEAN_EXPORT lean_object* l_Lean_Syntax_structEq___boxed(lean_object*, lean_object*); static lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSyntaxArray___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__2; +LEAN_EXPORT lean_object* l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_reservedMacroScope; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4; lean_object* l_String_quote(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_toString(lean_object*, uint8_t, lean_object*); -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788_(uint8_t, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__11; static lean_object* l_Lean_Syntax_decodeNatLitVal_x3f___closed__1; lean_object* l_Lean_Syntax_getId(lean_object*); @@ -204,28 +204,29 @@ static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__6; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__27; LEAN_EXPORT lean_object* l_Lean_TSyntax_expandInterpolatedStrChunks___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_origin; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7; lean_object* l_Lean_TSyntaxArray_rawImpl___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Option_hasQuote(lean_object*); LEAN_EXPORT lean_object* l_Lean_NameGenerator_curr(lean_object*); LEAN_EXPORT lean_object* l_Lean_monadNameGeneratorLift___rarg___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_version_major___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25; lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeStrLitTerm(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__11; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeTSyntaxArrayTSepArray___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4; LEAN_EXPORT lean_object* l_Lean_TSyntax_expandInterpolatedStr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____boxed(lean_object*, lean_object*); static lean_object* l_Lean_TSyntax_expandInterpolatedStr___closed__2; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__5; +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkIdentFrom___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1; static lean_object* l_Lean_Syntax_isFieldIdx_x3f___closed__1; static lean_object* l_Lean_TSyntax_expandInterpolatedStr___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_mkSepArray___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_mkHole___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__46; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10; static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__6; LEAN_EXPORT lean_object* l_Substring_takeWhileAux___at___private_Init_Meta_0__Lean_Syntax_splitNameLitAux___spec__2___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Tactic_simpStar; @@ -234,17 +235,16 @@ uint8_t lean_usize_dec_eq(size_t, size_t); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__32; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__110; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__73; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__79; LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion___rarg(uint8_t, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkCIdentFrom___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateFirst___at_Lean_Syntax_setHeadInfoAux___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__10; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__58; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__18; LEAN_EXPORT lean_object* l_Lean_Syntax_isScientificLit_x3f___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeIdentTerm(lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); static lean_object* l_Lean_version_specialDesc___closed__1; @@ -254,61 +254,61 @@ static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__9; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__69; static lean_object* l_Lean_Syntax_instReprTSyntax___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decodeAfterExp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSepArray(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16; static lean_object* l_Lean_Syntax_SepArray_ofElems___closed__1; LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_replaceRef(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isLetterLike___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212_(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutTSepArrayTSyntaxArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar___boxed__const__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__106; static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__6; -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(lean_object*, lean_object*); static lean_object* l_Lean_termEval__prio_____closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7; lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__6; LEAN_EXPORT lean_object* l_Lean_Name_escapePart___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterSepElemsM(lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Syntax_instCoeOutTSyntaxArrayArray___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7; LEAN_EXPORT lean_object* l_Lean_Syntax_instEmptyCollectionSepArray(lean_object*); +LEAN_EXPORT uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_isNatLitAux___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_getElems___rarg(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__53; LEAN_EXPORT uint8_t l_Lean_isGreek(uint32_t); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3; LEAN_EXPORT uint8_t l_Lean_isIdBeginEscape(uint32_t); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAllArith; LEAN_EXPORT lean_object* l_Lean_Name_toStringWithSep___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_getElems___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_filterSepElems___boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__87; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044_(lean_object*, lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____boxed(lean_object*, lean_object*); static lean_object* l_Lean_instQuoteBoolMkStr1___closed__1; extern lean_object* l_Lean_Parser_Tactic_optConfig; static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__3; LEAN_EXPORT lean_object* l_Lean_Syntax_isFieldIdx_x3f___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__88; static lean_object* l_List_foldr___at_Substring_toName___spec__1___closed__1; LEAN_EXPORT uint8_t l_Lean_Syntax_instBEqTSyntax___rarg(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__13; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9; lean_object* lean_version_get_patch(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__75; LEAN_EXPORT lean_object* l_Lean_TSyntax_expandInterpolatedStrChunks(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkIdentFrom(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_instQuoteTermMkStr1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17; static lean_object* l_Lean_termEval__prec_____closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_isLit_x3f___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldr___at_Substring_toName___spec__1(lean_object*, lean_object*); @@ -322,42 +322,31 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_setTailInfoAux(lean_object*, lean_object* LEAN_EXPORT lean_object* l_Lean_isSubScriptAlnum___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArith___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_getElems(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; LEAN_EXPORT lean_object* l_List_beq___at_Lean_Syntax_structEq___spec__2___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__8; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteArray_go(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26; lean_object* l_Lean_Syntax_node5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__48; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__61; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18; static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__2; -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154_(lean_object*, lean_object*, lean_object*); lean_object* lean_string_utf8_set(lean_object*, lean_object*, uint32_t); -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(lean_object*); static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__subPrec__1___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20; LEAN_EXPORT uint32_t l_Lean_idBeginEscape; -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5; LEAN_EXPORT lean_object* l_Lean_isGreek___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__6; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__12; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__15; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__114; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7; static lean_object* l_Lean_versionString___closed__6; static lean_object* l_Lean_TSyntax_expandInterpolatedStr___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_mkSynthetic(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion___rarg___lambda__1(lean_object*); static lean_object* l_Lean_Option_hasQuote___rarg___closed__6; LEAN_EXPORT lean_object* lean_name_append_before(lean_object*, lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__21; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__10; uint8_t lean_string_dec_eq(lean_object*, lean_object*); @@ -368,38 +357,40 @@ LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSepArray__ static lean_object* l_Lean_termEval__prio_____closed__5; static lean_object* l_Lean_termEval__prec_____closed__9; LEAN_EXPORT uint8_t l_Lean_Syntax_isAtom(lean_object*); -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__2(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__47; LEAN_EXPORT lean_object* l_Lean_Meta_instReprEtaStructMode; LEAN_EXPORT lean_object* l_Lean_Syntax_mkNatLit(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__3; LEAN_EXPORT lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__subPrec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__19; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4; LEAN_EXPORT uint8_t l_Array_isEqvAux___at_Lean_Syntax_structEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14; LEAN_EXPORT uint8_t l_Lean_version_isRelease; lean_object* lean_string_utf8_byte_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeCharLitTerm___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrQuotedChar___boxed__const__1; static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__1; +LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___boxed(lean_object*, lean_object*); lean_object* lean_string_push(lean_object*, uint32_t); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__59; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__2; static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__5; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__74; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6; static lean_object* l_Lean_Syntax_instBEq___closed__1; LEAN_EXPORT lean_object* l_Lean_mkFreshId(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__71; LEAN_EXPORT lean_object* l_Lean_mkCIdentFromRef___rarg(lean_object*, lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeStrLitAux(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17725_(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7; +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16803_(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19; static lean_object* l_Lean_Parser_Tactic_getConfigItems___closed__4; LEAN_EXPORT lean_object* l_String_anyAux___at_Lean_Name_escapePart___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_getConfigItems(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__8; LEAN_EXPORT lean_object* l_Lean_Syntax_mkApp(lean_object*, lean_object*); extern lean_object* l_Lean_Parser_Tactic_discharger; @@ -407,13 +398,12 @@ static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__4; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__14; static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_instEmptyCollectionTSepArray(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decodeAfterDot___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13; LEAN_EXPORT lean_object* l_Lean_mkFreshId___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__5; LEAN_EXPORT lean_object* l_Lean_Name_toStringWithSep_maybeEscape(uint8_t, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNumLitPrio___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_isInterpolatedStrLit_x3f(lean_object*); static lean_object* l_Lean_versionStringCore___closed__2; LEAN_EXPORT lean_object* l_Lean_Syntax_splitNameLit(lean_object*); @@ -441,46 +431,45 @@ static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__3; LEAN_EXPORT lean_object* l_Lean_TSyntax_expandInterpolatedStr___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__4; static lean_object* l_Lean_Syntax_mkCharLit___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__12; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__34; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____boxed(lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; static lean_object* l_Lean_mkOptionalNode___closed__2; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__16; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNumLitTerm___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__68; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__63; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__55; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion(lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__45; LEAN_EXPORT lean_object* l_Lean_instQuoteBoolMkStr1(uint8_t); LEAN_EXPORT lean_object* l_Lean_Syntax_isIdOrAtom_x3f(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10; static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_instReprConfig; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__96; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeCharLit(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArith___closed__7; static lean_object* l_Lean_Name_toString_maybePseudoSyntax___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_TSyntax_expandInterpolatedStrChunks___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNameLitTerm___boxed(lean_object*); -LEAN_EXPORT lean_object* l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__5; LEAN_EXPORT lean_object* l_Lean_toolchain; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14; +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__37; uint8_t l_instDecidableNot___rarg(uint8_t); -LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_copyHeadTailInfoFrom(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_isFieldIdx_x3f___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Syntax_getHead_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKind___rarg(lean_object*); static lean_object* l_Array_getSepElems___rarg___closed__1; LEAN_EXPORT uint8_t l_Lean_Name_toStringWithSep___lambda__1(lean_object*); @@ -492,7 +481,6 @@ lean_object* lean_string_utf8_next(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__14; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__11; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__89; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__105; LEAN_EXPORT lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion___rarg___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instReprTransparencyMode; @@ -503,21 +491,22 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshId___rarg___lambda__1___boxed(lean_object static lean_object* l_Lean_instQuoteBoolMkStr1___closed__2; static lean_object* l_List_foldr___at_Substring_toName___spec__1___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__73; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18; lean_object* l_Char_toUpper(uint32_t); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1; static lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17425_(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_getElems___boxed(lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13; static lean_object* l_Lean_Option_hasQuote___rarg___closed__5; LEAN_EXPORT lean_object* l_Lean_Syntax_isFieldIdx_x3f(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13; LEAN_EXPORT lean_object* l_Lean_instQuoteNatNumLitKind(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_getOptionalIdent_x3f___boxed(lean_object*); static lean_object* l_Lean_termEval__prec_____closed__3; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__reprSourceInfo____x40_Init_Data_Repr___hyg_2488_(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateLast(lean_object*); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Syntax_getSepArgs___boxed(lean_object*); @@ -534,10 +523,11 @@ LEAN_EXPORT lean_object* l_Substring_takeWhileAux___at___private_Init_Meta_0__Le static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__64; static lean_object* l_Lean_Syntax_instCoeOutTSepArrayTSyntaxArray___closed__1; lean_object* l_Lean_Syntax_node6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; LEAN_EXPORT lean_object* l_Lean_Syntax_isIdOrAtom_x3f___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeHexLitAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__12; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13; static lean_object* l_Lean_TSyntax_expandInterpolatedStrChunks___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr4Nil(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_reprPrec___boxed(lean_object*, lean_object*); @@ -546,34 +536,34 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean static lean_object* l_Lean_Name_toString_maybePseudoSyntax___closed__4; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeBinLitAux___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__13; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33; +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485_(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeHexDigit___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__20; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__95; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__11; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9; LEAN_EXPORT lean_object* l_Lean_Syntax_mkStrLit(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr4Nil___closed__2; LEAN_EXPORT uint32_t l_Lean_TSyntax_getChar(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__7; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4; LEAN_EXPORT lean_object* l_Lean_versionString; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__9; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8; extern lean_object* l_Lean_Parser_Tactic_rwRuleSeq; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5; static lean_object* l_Lean_termEval__prio_____closed__9; static lean_object* l_Lean_TSyntax_expandInterpolatedStr___lambda__1___closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36; extern lean_object* l_Lean_Parser_Tactic_simpLemma; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decodeAfterExp(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1; LEAN_EXPORT lean_object* l_Lean_mkCIdentFromRef___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_ofElems___boxed(lean_object*); -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__1(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__58; LEAN_EXPORT lean_object* l_Lean_mkCIdentFrom(lean_object*, lean_object*, uint8_t); static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__2; @@ -594,30 +584,33 @@ LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeDecimalLitAu static lean_object* l_Lean_termEval__prec_____closed__6; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__56; static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__9; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_quoteNameMk(lean_object*); +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkGroupNode(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10; LEAN_EXPORT lean_object* l_Array_isEqvAux___at_Lean_Syntax_structEq___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_replacePrefix(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162_(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeDecimalLitAux___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrec__1___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14; static lean_object* l_Lean_Syntax_instBEqPreresolved___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_mkCharLit___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_getSepElems___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__70; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__69; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6; uint8_t l_List_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Parser_Tactic_getConfigItems___spec__1(lean_object*, size_t, size_t, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__9; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21; lean_object* l_Lean_Syntax_getOptional_x3f(lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8; -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____boxed(lean_object*, lean_object*); +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrLit___boxed(lean_object*); static lean_object* l_Lean_versionStringCore___closed__4; @@ -625,13 +618,13 @@ static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__5; static lean_object* l_Lean_TSyntax_expandInterpolatedStr___closed__3; lean_object* lean_array_to_list(lean_object*); LEAN_EXPORT lean_object* l_Lean_getGithash___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____boxed(lean_object*, lean_object*); lean_object* l_Lean_TSyntaxArray_mkImpl___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_getHead_x3f___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_isStrLit_x3f(lean_object*); LEAN_EXPORT lean_object* l_Substring_takeWhileAux___at___private_Init_Meta_0__Lean_Syntax_splitNameLitAux___spec__3(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16; static lean_object* l_Lean_Syntax_mkNumLit___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__22; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__4; @@ -653,11 +646,11 @@ LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_mapSepElemsMAux(lean_obj lean_object* l_Char_quote(uint32_t); LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_getElems___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__41; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12; LEAN_EXPORT lean_object* l_Lean_Name_getRoot(lean_object*); static lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_setTailInfo(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__27; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrLit_loop(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapSepElemsM___at_Array_mapSepElems___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Substring_toName(lean_object*); @@ -666,30 +659,32 @@ static lean_object* l_Lean_mkOptionalNode___closed__1; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__12; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateLast___at_Lean_Syntax_setTailInfoAux___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__18; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Syntax_instCoeTSyntaxArrayOfTSyntax___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14; static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__7; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__5; -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16795_(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_instReprConfig__1; static lean_object* l_Lean_Meta_instReprConfig__1___closed__1; static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__8; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Name_beq_match__1_splitter(lean_object*); LEAN_EXPORT lean_object* l_Lean_instQuoteCharCharLitKind___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_mkLit(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10; LEAN_EXPORT lean_object* l_Array_getSepElems___rarg___boxed(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418_(lean_object*); static lean_object* l_Lean_Syntax_mkApp___closed__2; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeTSyntaxArrayTSepArray(lean_object*); static uint8_t l_Lean_versionString___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__90; LEAN_EXPORT lean_object* l_Lean_Syntax_hasArgs___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutSepArrayArray(lean_object*); static lean_object* l_Lean_Name_reprPrec___closed__2; -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__6(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23; static lean_object* l_Lean_versionString___closed__10; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar___boxed__const__5; LEAN_EXPORT lean_object* l_Lean_mkFreshId___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); @@ -699,7 +694,6 @@ static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__10; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___boxed(lean_object*); static lean_object* l_Lean_version_minor___closed__1; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrQuotedChar(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16; LEAN_EXPORT lean_object* l_Lean_Syntax_isStrLit_x3f___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__31; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_TSyntax_expandInterpolatedStrChunks___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -716,24 +710,22 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_getHead_x3f(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__20; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__8; LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_push___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12; uint8_t lean_name_eq(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__109; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3; LEAN_EXPORT lean_object* l_Lean_Syntax_instBEqTSyntax(lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeIdentLevel(lean_object*); static lean_object* l_Lean_quoteNameMk___closed__5; LEAN_EXPORT lean_object* l_Lean_Syntax_copyHeadTailInfoFrom___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15; static lean_object* l_Lean_Syntax_mkCharLit___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar___boxed__const__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7; LEAN_EXPORT lean_object* l_Lean_Internal_isStage0___boxed(lean_object*); uint8_t lean_version_get_is_release(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___rarg___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_isNumericSubscript___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeRawStrLitAux___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__64; lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isIdRest___boxed(lean_object*); @@ -746,7 +738,6 @@ LEAN_EXPORT lean_object* l_Lean_instQuoteOfCoeHTCTTSyntaxConsSyntaxNodeKindNil__ LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_filterSepElemsMAux___at_Array_filterSepElems___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_version_minor; lean_object* lean_string_utf8_prev(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16; LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_getElems___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkOptionalNode(lean_object*); static lean_object* l___private_Init_Meta_0__Lean_quoteArray_go___rarg___closed__2; @@ -754,9 +745,13 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_getTailInfo(lean_object*); static lean_object* l_Lean_toolchain___closed__8; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__51; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__78; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__28; static lean_object* l_Lean_mkSepArray___closed__2; static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__3; @@ -765,23 +760,27 @@ LEAN_EXPORT lean_object* l_Lean_isIdBeginEscape___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__19; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKindNil___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteArray_go___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Syntax_getTailInfo_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29; static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__11; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__61; LEAN_EXPORT lean_object* l_Array_mapSepElemsM(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_18074_(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__7; lean_object* lean_version_get_special_desc(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6; static lean_object* l_Lean_Option_hasQuote___rarg___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeScientificLitTerm(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__85; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_getSepElems___spec__1(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__52; LEAN_EXPORT lean_object* l_Lean_instQuoteSubstringMkStr1(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_instQuoteNameMkStr1(lean_object*); LEAN_EXPORT lean_object* lean_mk_syntax_ident(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__41; @@ -792,66 +791,74 @@ LEAN_EXPORT lean_object* l_Lean_Name_capitalize(lean_object*); static lean_object* l_Lean_versionString___closed__5; LEAN_EXPORT lean_object* l_Lean_TSyntax_getDocString(lean_object*); static lean_object* l_Lean_instQuoteBoolMkStr1___closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__77; static lean_object* l_Lean_Syntax_isInterpolatedStrLit_x3f___closed__1; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__62; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKind(lean_object*, lean_object*); static lean_object* l_Lean_toolchain___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__44; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21; LEAN_EXPORT lean_object* l_Lean_Syntax_isToken___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterSepElems(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_version_getMinor___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_getHygieneInfo(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7; lean_object* l_Lean_MacroScopesView_review(lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar___boxed__const__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Syntax_instCoeTSyntaxArrayOfTSyntax___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_isNone___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef(lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__10; +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17733_(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__62; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27; LEAN_EXPORT lean_object* l_Lean_Name_isInaccessibleUserName___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__15; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36; lean_object* lean_get_githash(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__23; static lean_object* l_Lean_instQuoteProdMkStr1___rarg___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__17; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; LEAN_EXPORT lean_object* l_Lean_Syntax_isAtom___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3; +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__6(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_ofElems(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_mkSepArray___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__111; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__16; LEAN_EXPORT lean_object* l_Lean_version_major; static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeRawStrLitAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__104; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutTSepArrayTSyntaxArray___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_mkScientificLit___closed__2; LEAN_EXPORT lean_object* l_Lean_Syntax_getSubstring_x3f(lean_object*, uint8_t, uint8_t); +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeIdentTerm___boxed(lean_object*); +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; static lean_object* l_Lean_mkHole___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__47; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__25; LEAN_EXPORT lean_object* l_Lean_Syntax_getTrailingTailPos_x3f___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__9; static lean_object* l_Lean_versionString___closed__9; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9; LEAN_EXPORT lean_object* l_Array_mapSepElems(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18; extern lean_object* l_Lean_Parser_Tactic_simpErase; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__43; lean_object* l_Substring_takeWhileAux___at_Substring_trimLeft___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__83; LEAN_EXPORT lean_object* l_Lean_Syntax_mkCharLit(uint32_t, lean_object*); @@ -871,22 +878,18 @@ static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__29; LEAN_EXPORT lean_object* l_Array_mapSepElemsM___at_Array_mapSepElems___spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__76; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__24; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11; static lean_object* l_Lean_instQuoteProdMkStr1___rarg___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Syntax_findAux___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_quoteNameMk___closed__8; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_getElems___rarg___boxed(lean_object*); lean_object* l_Lean_Syntax_setArg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Name_toString_maybePseudoSyntax___closed__1; static lean_object* l_Lean_instQuoteBoolMkStr1___closed__7; LEAN_EXPORT lean_object* l_Lean_TSyntax_getId___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_isNameLit_x3f(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2; static lean_object* l_Lean_Syntax_getHead_x3f___closed__2; LEAN_EXPORT lean_object* l_Lean_Syntax_getTrailingTailPos_x3f(lean_object*, uint8_t); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9; static lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__2; static lean_object* l_Lean_Name_reprPrec___closed__10; LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_ofElemsUsingRef___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -895,49 +898,47 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeOctalLitAux(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Init_Meta_0__Lean_Name_hasNum(lean_object*); static lean_object* l_Lean_Syntax_mkStrLit___closed__2; -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204_(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__26; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_updateFirst___at_Lean_Syntax_setHeadInfoAux___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__5; static lean_object* l_Lean_quoteNameMk___closed__2; LEAN_EXPORT uint8_t l_Lean_Syntax_isToken(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4; static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3; static lean_object* l_Lean_instQuoteSubstringMkStr1___closed__1; static lean_object* l_Lean_Name_reprPrec___closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24; LEAN_EXPORT lean_object* l_Lean_mkCIdentFromRef___rarg___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__7; static lean_object* l_Lean_toolchain___closed__2; LEAN_EXPORT lean_object* l_Lean_TSyntax_getDocString___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeTSyntaxArrayTSepArray___rarg(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9; LEAN_EXPORT lean_object* l_Lean_Syntax_toNat___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_instQuoteCharCharLitKind(uint32_t); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__101; uint8_t l_Lean_Name_hasMacroScopes(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_getTailInfo_x3f(lean_object*); LEAN_EXPORT uint32_t l_Lean_idEndEscape; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12; static lean_object* l_Lean_Syntax_instReprPreresolved___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Occurrences_contains___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeQuotedChar(lean_object*, lean_object*); static lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg___closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16; LEAN_EXPORT uint8_t l_Lean_isNumericSubscript(uint32_t); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withHeadRefOnly___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_replacePrefix___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__99; static lean_object* l_Lean_Name_reprPrec___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__16; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeOctalLitAux___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__66; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__15; LEAN_EXPORT uint8_t l_Lean_Name_toString_maybePseudoSyntax(lean_object*); static lean_object* l_Lean_instQuoteSubstringMkStr1___closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__24; -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__14; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_getEscapedNameParts_x3f(lean_object*, lean_object*); uint8_t lean_internal_is_stage0(lean_object*); @@ -956,6 +957,8 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_getTailInfo_x3f___boxed(lean_object*); static lean_object* l_Lean_Name_toStringWithSep___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_getOptionalIdent_x3f(lean_object*); LEAN_EXPORT lean_object* l_Array_mapSepElems___boxed(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; +static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__30; static lean_object* l_Lean_Name_isInaccessibleUserName___closed__1; LEAN_EXPORT uint8_t l_Lean_Syntax_hasArgs(lean_object*); @@ -966,31 +969,26 @@ uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instQuoteOfCoeHTCTTSyntaxConsSyntaxNodeKindNil(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__4; static lean_object* l_List_foldr___at_Substring_toName___spec__1___closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutSepArrayArray___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrLit(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__54; LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_ofElems(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__28; static lean_object* l_Lean_termEval__prio_____closed__8; LEAN_EXPORT uint8_t l_Lean_isSubScriptAlnum(uint32_t); -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477_(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_TSyntax_expandInterpolatedStrChunks___spec__1___lambda__2___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__15; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__68; LEAN_EXPORT lean_object* l_Lean_Syntax_isLit_x3f(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1; lean_object* lean_nat_mod(lean_object*, lean_object*); lean_object* l_Substring_takeRightWhileAux___at_Substring_trimRight___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_getTrailingTailPos_x3f(lean_object*, uint8_t); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__42; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28; static lean_object* l_Lean_instQuoteBoolMkStr1___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__14; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_getTrailingSize___boxed(lean_object*); @@ -1003,30 +1001,32 @@ LEAN_EXPORT lean_object* l_Lean_Internal_hasLLVMBackend___boxed(lean_object*); lean_object* l_id___rarg___boxed(lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkIdentFromRef___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__20; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at_Lean_Syntax_getTailInfo_x3f___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__79; LEAN_EXPORT lean_object* l_Lean_instQuoteOfCoeHTCTTSyntaxConsSyntaxNodeKindNil___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Syntax_isInterpolatedStrLit_x3f___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__40; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAllKind; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__94; static lean_object* l_Lean_toolchain___closed__7; LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_getElems(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Syntax_SepArray_getElems___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteArray___rarg(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__17; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__38; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__6; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__5; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__67; LEAN_EXPORT lean_object* l_Lean_version_patch; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrQuotedChar___boxed(lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__19; static lean_object* l_Lean_Syntax_getHead_x3f___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__9; @@ -1036,7 +1036,6 @@ static uint8_t l_Lean_version_isRelease___closed__1; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__13; static lean_object* l_Lean_Syntax_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr4Nil___closed__1; lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(uint8_t, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__8; static lean_object* l_Lean_versionString___closed__11; LEAN_EXPORT lean_object* l_Lean_Syntax_findAux(lean_object*, lean_object*); @@ -1046,24 +1045,24 @@ uint8_t l_String_isPrefixOf(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__21; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__77; LEAN_EXPORT lean_object* l_Lean_Syntax_isCharLit_x3f(lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__76; LEAN_EXPORT lean_object* l_Lean_Name_escapePart(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_instQuoteSubstringMkStr1___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__86; LEAN_EXPORT lean_object* l_Lean_Syntax_isInterpolatedStrLit_x3f___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; LEAN_EXPORT lean_object* l_Lean_Syntax_instBEqTSyntax___rarg___boxed(lean_object*, lean_object*); lean_object* l_Substring_prevn(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21; LEAN_EXPORT lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrio__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5; LEAN_EXPORT lean_object* l_String_toName(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12; lean_object* l_Repr_addAppParen(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__13; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__21; static lean_object* l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__108; static lean_object* l_Lean_quoteNameMk___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_NameGenerator_mkChild(lean_object*); LEAN_EXPORT uint8_t l_Lean_Syntax_isNone(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeScientificLitVal_x3f_decodeExp(lean_object*, lean_object*, lean_object*, lean_object*); @@ -1073,15 +1072,12 @@ LEAN_EXPORT lean_object* l_Lean_Name_getRoot___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__8; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSyntaxArray(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_eraseSuffix_x3f(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__44; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19; LEAN_EXPORT uint8_t l_Lean_isIdEndEscape(uint32_t); LEAN_EXPORT lean_object* l_Lean_mkFreshId___rarg___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeInterpStrLit_loop___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_setInfo(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_getName___boxed(lean_object*); @@ -1091,7 +1087,6 @@ LEAN_EXPORT uint8_t l_Lean_Name_instDecidableEq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_setHeadInfoAux(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_mkNameLit___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_push(lean_object*); -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__7(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__66; LEAN_EXPORT lean_object* l_Lean_withHeadRefOnly(lean_object*); static lean_object* l_Lean_mkSepArray___closed__1; @@ -1102,23 +1097,27 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean lean_object* lean_nat_mul(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__98; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__75; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1; static lean_object* l___private_Init_Meta_0__Lean_quoteArray___rarg___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__3(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNumLitPrec___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__5; LEAN_EXPORT lean_object* l_Lean_Syntax_getTrailing_x3f(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__18; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpArith; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__6; LEAN_EXPORT lean_object* l_Lean_Name_instDecidableEq___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeScientificLitTerm___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; static lean_object* l_Lean_termEval__prec_____closed__4; static lean_object* l_Lean_Syntax_mkStrLit___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__82; LEAN_EXPORT lean_object* l_Lean_versionStringCore; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; static lean_object* l_Lean_versionString___closed__8; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutTSyntaxArrayArray___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__23; @@ -1129,7 +1128,7 @@ static lean_object* l_Lean_termEval__prec_____closed__7; LEAN_EXPORT lean_object* l_Lean_Syntax_instEmptyCollectionTSepArray___boxed(lean_object*, lean_object*); static lean_object* l_Lean_termEval__prec_____closed__5; static lean_object* l_Lean_githash___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2; LEAN_EXPORT uint8_t l_Lean_Meta_Occurrences_contains(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeNameLitTerm(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg(lean_object*, lean_object*); @@ -1137,6 +1136,7 @@ LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_ofElems___rarg___boxed(lean_obj static lean_object* l_Lean_Name_reprPrec___closed__4; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_filterSepElemsMAux(lean_object*); lean_object* lean_erase_macro_scopes(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__13; LEAN_EXPORT uint8_t lean_is_inaccessible_user_name(lean_object*); LEAN_EXPORT lean_object* l_Lean_NameGenerator_next(lean_object*); @@ -1147,30 +1147,24 @@ static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean lean_object* l_List_reverse___rarg(lean_object*); static lean_object* l_Lean_instQuoteBoolMkStr1___closed__5; static lean_object* l_Lean_instQuoteNameMkStr1___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8; static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__4; +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__4; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19; lean_object* l_String_intercalate(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKindNil___rarg___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__3; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__19; lean_object* lean_array_mk(lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Syntax_structEq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Name_beq_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__4(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17; lean_object* l_Lean_SourceInfo_getTrailing_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticErw______; LEAN_EXPORT lean_object* l_Lean_instQuoteBoolMkStr1___boxed(lean_object*); static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrio__1___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19; static lean_object* l___private_Init_Meta_0__Lean_quoteArray___rarg___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5; LEAN_EXPORT lean_object* l_Lean_instQuoteListMkStr1___rarg(lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Occurrences_isAll(lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__7; @@ -1183,77 +1177,81 @@ static lean_object* l_Lean_Meta_instReprEtaStructMode___closed__1; uint8_t l_Substring_beq(lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__18; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__29; LEAN_EXPORT lean_object* l_Lean_TSyntax_getScientific___boxed(lean_object*); -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18; +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__5(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_ofElemsUsingRef___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__92; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15; LEAN_EXPORT lean_object* l_Lean_Option_hasQuote___rarg(lean_object*, lean_object*); lean_object* l_Lean_Macro_expandMacro_x3f(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_mkCIdentFrom___closed__1; static lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg___closed__6; LEAN_EXPORT lean_object* l_Lean_TSyntax_getNat___boxed(lean_object*); static lean_object* l_Lean_Meta_instReprTransparencyMode___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__42; LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeOutTSyntaxArrayArray(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteList(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__54; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25; lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39; LEAN_EXPORT lean_object* l_Lean_version_getSpecialDesc___boxed(lean_object*); static lean_object* l_Lean_mkOptionalNode___closed__3; size_t lean_array_size(lean_object*); static lean_object* l_Lean_termEval__prec_____closed__10; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__97; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__53; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailSyntax___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__36; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12; LEAN_EXPORT lean_object* l_Array_filterSepElemsM___at_Array_filterSepElems___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__116; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__5; +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__4(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__22; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17; LEAN_EXPORT lean_object* l_Lean_mkSepArray___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedSyntax; static lean_object* l_Lean_versionStringCore___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__115; lean_object* lean_version_get_minor(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__22; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19; static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__17; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_getConfigItems___closed__3; LEAN_EXPORT lean_object* l_Lean_Syntax_unsetTrailing(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__24; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__51; LEAN_EXPORT lean_object* l_Lean_Syntax_mkCApp(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__4; LEAN_EXPORT lean_object* l_Lean_instQuoteProdMkStr1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkCIdent(lean_object*); static lean_object* l_Lean_quoteNameMk___closed__4; LEAN_EXPORT lean_object* l_List_foldr___at_Substring_toName___spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKindNil(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__55; LEAN_EXPORT lean_object* l_Lean_Syntax_decodeCharLit___boxed(lean_object*); static lean_object* l_Lean_toolchain___closed__5; lean_object* l_Lean_Syntax_setKind(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__21; static lean_object* l_Lean_Syntax_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr4Nil___closed__4; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__8; static lean_object* l_Lean_quoteNameMk___closed__3; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_filterSepElemsMAux___at_Array_filterSepElems___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17; LEAN_EXPORT lean_object* l_Lean_TSyntax_getChar___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26; lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_quoteArray_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_SepArray_ofElemsUsingRef(lean_object*); @@ -1262,30 +1260,32 @@ static lean_object* l_Lean_Name_reprPrec___closed__8; lean_object* l_Lean_mkAtomFrom(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeNatLitVal_x3f___boxed(lean_object*); static lean_object* l_Lean_termEval__prec_____closed__2; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__72; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_mkSepArray___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__termEval__prec____1(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_pred(lean_object*); +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(uint8_t, lean_object*); static lean_object* l_Lean_Parser_Tactic_tacticErw_________closed__10; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Syntax_SepArray_getElems___spec__1(lean_object*, size_t, size_t, lean_object*); lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_Parser_Tactic_getConfigItems___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__17; lean_object* l_panic___at___private_Init_Prelude_0__Lean_assembleParts___spec__1(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__34; LEAN_EXPORT lean_object* l_Lean_Meta_Occurrences_isAll___boxed(lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4; LEAN_EXPORT lean_object* l_Lean_Syntax_isNatLit_x3f(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__10; static lean_object* l_Lean_instQuoteTermMkStr1___closed__1; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7; static lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg___closed__2; LEAN_EXPORT lean_object* l_Array_mapSepElemsM___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_instReprTSyntax___boxed(lean_object*); static lean_object* l___private_Init_Meta_0__Lean_Syntax_splitNameLitAux___closed__1; +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052_(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__72; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_mapSepElemsMAux___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__9; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__31; static lean_object* l_Lean_mkGroupNode___closed__1; @@ -1300,7 +1300,6 @@ static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__9; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__33; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_mapSepElemsMAux___at_Array_mapSepElems___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6; LEAN_EXPORT lean_object* l_Lean_instQuoteArrayMkStr1(lean_object*); static lean_object* l_Lean_termEval__prio_____closed__2; static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__subPrec__1___closed__1; @@ -1311,6 +1310,7 @@ LEAN_EXPORT lean_object* l_Lean_TSyntax_getString___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_toString_maybePseudoSyntax___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_decodeStringGap___boxed(lean_object*, lean_object*); static lean_object* l_Lean_evalPrio___closed__1; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__14; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__30; LEAN_EXPORT lean_object* l_Lean_Name_toStringWithSep(lean_object*, uint8_t, lean_object*, lean_object*); @@ -1318,29 +1318,26 @@ static lean_object* l___private_Init_Meta_0__Lean_quoteArray_go___rarg___closed_ static lean_object* l_Lean_Parser_Tactic_simpArith___closed__2; LEAN_EXPORT lean_object* l_Lean_HygieneInfo_mkIdent(lean_object*, lean_object*, uint8_t); static lean_object* l_Lean_toolchain___closed__4; +static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_decodeBinLitAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__21; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33; LEAN_EXPORT lean_object* l_Lean_version_getIsRelease___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_instCoeTermTSyntaxConsSyntaxNodeKindMkStr4Nil(lean_object*); static lean_object* l_Lean_Meta_ApplyNewGoals_noConfusion___rarg___closed__1; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15; LEAN_EXPORT lean_object* l_String_anyAux___at_Lean_Name_isInaccessibleUserName___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_TSepArray_ofElems___rarg(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__16; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__13; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__91; LEAN_EXPORT lean_object* l_Array_getSepElems(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__70; -static lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10; +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2___boxed(lean_object*); static lean_object* l_Lean_termEval__prio_____closed__3; LEAN_EXPORT lean_object* l_Lean_TSyntax_Compat_instCoeTailSyntax___rarg___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__78; -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__5(lean_object*); LEAN_EXPORT lean_object* l_Lean_Syntax_mkScientificLit(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__12; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_simpAutoUnfold; @@ -1348,55 +1345,56 @@ static lean_object* l_Lean_termEval__prio_____closed__4; static lean_object* l_Lean_Option_hasQuote___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_mkHole___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32; LEAN_EXPORT lean_object* l_Lean_expandMacros(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_modifyBase(lean_object*, lean_object*); +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_appendConfig(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13; +LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_isIdFirst(uint32_t); static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrio__1___closed__2; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__17; LEAN_EXPORT lean_object* l_Lean_version_specialDesc; LEAN_EXPORT lean_object* l_String_anyAux___at_Lean_Name_escapePart___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__60; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12; lean_object* l_String_toSubstring_x27(lean_object*); LEAN_EXPORT lean_object* l_Lean_Name_toStringWithSep___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__23; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__27; +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_18082_(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllKind___closed__8; static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__addPrec__1___closed__3; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6; LEAN_EXPORT lean_object* l_Lean_Syntax_instBEq; static lean_object* l_Lean_instQuoteNameMkStr1___closed__1; static lean_object* l_Lean_Name_toStringWithSep___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8; LEAN_EXPORT lean_object* l_Lean_mkCIdentFromRef(lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* lean_version_get_major(lean_object*); static lean_object* l_Lean_Parser_Tactic_simpAllArith___closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__43; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7; -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15; LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeIdentLevel___boxed(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20; lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8; static lean_object* l_Lean_termEval__prec_____closed__11; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__38; LEAN_EXPORT lean_object* l_Lean_isIdFirst___boxed(lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__10; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___closed__39; -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17417_(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instReprConfig___closed__1; LEAN_EXPORT lean_object* l_Lean_Syntax_toNat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_dsimpAutoUnfold; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_isNatLitAux(lean_object*, lean_object*); static lean_object* l_Lean_Syntax_SepArray_ofElems___closed__2; -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; static lean_object* l_Lean_Name_instRepr___closed__1; static lean_object* l_Lean_Syntax_instRepr___closed__1; -static lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17; LEAN_EXPORT lean_object* l_Lean_monadNameGeneratorLift(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_dsimpKind___closed__8; static lean_object* l_Lean_toolchain___closed__1; @@ -1407,21 +1405,23 @@ static lean_object* l_Lean_Name_toString_maybePseudoSyntax___closed__3; LEAN_EXPORT uint8_t l_Lean_isIdRest(uint32_t); LEAN_EXPORT lean_object* l_Lean_TSyntax_instCoeConsSyntaxNodeKind___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__57; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__11; +LEAN_EXPORT uint8_t l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Array_getSepElems___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__7(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_declareSimpLikeTactic___closed__7; +static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21; LEAN_EXPORT lean_object* l_Lean_Syntax_mkNumLit(lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6; static lean_object* l_Lean_Parser_Tactic_simpArith___closed__10; static lean_object* l_Lean_Parser_Tactic_simpAutoUnfold___closed__3; static lean_object* l___private_Init_Meta_0__Lean_quoteList___rarg___closed__5; +static lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5; static lean_object* l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__1; static lean_object* l_Lean___aux__Init__Meta______macroRules__Lean__Parser__Syntax__subPrio__1___closed__1; static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__45; LEAN_EXPORT lean_object* l___private_Init_Meta_0__Array_filterSepElemsMAux___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7; static lean_object* l_Lean_versionStringCore___closed__6; -LEAN_EXPORT uint8_t l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_TSyntax_getHygieneInfo___boxed(lean_object*); static lean_object* l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__declareSimpLikeTactic__1___lambda__1___closed__14; LEAN_EXPORT lean_object* l_Lean_termEval__prec__; @@ -2260,15 +2260,40 @@ return x_4; LEAN_EXPORT uint8_t l_Lean_isSubScriptAlnum(uint32_t x_1) { _start: { -lean_object* x_2; uint32_t x_19; uint8_t x_20; -x_19 = 8320; -x_20 = lean_uint32_dec_le(x_19, x_1); -if (x_20 == 0) +lean_object* x_2; uint32_t x_13; uint8_t x_14; +x_13 = 8320; +x_14 = lean_uint32_dec_le(x_13, x_1); +if (x_14 == 0) { -lean_object* x_21; -x_21 = lean_box(0); -x_2 = x_21; -goto block_18; +uint32_t x_15; uint8_t x_16; +x_15 = 8336; +x_16 = lean_uint32_dec_le(x_15, x_1); +if (x_16 == 0) +{ +lean_object* x_17; +x_17 = lean_box(0); +x_2 = x_17; +goto block_12; +} +else +{ +uint32_t x_18; uint8_t x_19; +x_18 = 8348; +x_19 = lean_uint32_dec_le(x_1, x_18); +if (x_19 == 0) +{ +lean_object* x_20; +x_20 = lean_box(0); +x_2 = x_20; +goto block_12; +} +else +{ +uint8_t x_21; +x_21 = 1; +return x_21; +} +} } else { @@ -2277,72 +2302,73 @@ x_22 = 8329; x_23 = lean_uint32_dec_le(x_1, x_22); if (x_23 == 0) { -lean_object* x_24; -x_24 = lean_box(0); -x_2 = x_24; -goto block_18; +uint32_t x_24; uint8_t x_25; +x_24 = 8336; +x_25 = lean_uint32_dec_le(x_24, x_1); +if (x_25 == 0) +{ +lean_object* x_26; +x_26 = lean_box(0); +x_2 = x_26; +goto block_12; } else { -uint8_t x_25; -x_25 = 1; -return x_25; +uint32_t x_27; uint8_t x_28; +x_27 = 8348; +x_28 = lean_uint32_dec_le(x_1, x_27); +if (x_28 == 0) +{ +lean_object* x_29; +x_29 = lean_box(0); +x_2 = x_29; +goto block_12; +} +else +{ +uint8_t x_30; +x_30 = 1; +return x_30; } } -block_18: +} +else +{ +uint8_t x_31; +x_31 = 1; +return x_31; +} +} +block_12: { uint32_t x_3; uint8_t x_4; lean_dec(x_2); -x_3 = 8336; +x_3 = 7522; x_4 = lean_uint32_dec_le(x_3, x_1); if (x_4 == 0) { uint32_t x_5; uint8_t x_6; -x_5 = 7522; -x_6 = lean_uint32_dec_le(x_5, x_1); -if (x_6 == 0) -{ -uint8_t x_7; -x_7 = 0; -return x_7; +x_5 = 11388; +x_6 = lean_uint32_dec_eq(x_1, x_5); +return x_6; } else { -uint32_t x_8; uint8_t x_9; -x_8 = 7530; -x_9 = lean_uint32_dec_le(x_1, x_8); -return x_9; -} +uint32_t x_7; uint8_t x_8; +x_7 = 7530; +x_8 = lean_uint32_dec_le(x_1, x_7); +if (x_8 == 0) +{ +uint32_t x_9; uint8_t x_10; +x_9 = 11388; +x_10 = lean_uint32_dec_eq(x_1, x_9); +return x_10; } else { -uint32_t x_10; uint8_t x_11; -x_10 = 8348; -x_11 = lean_uint32_dec_le(x_1, x_10); -if (x_11 == 0) -{ -uint32_t x_12; uint8_t x_13; -x_12 = 7522; -x_13 = lean_uint32_dec_le(x_12, x_1); -if (x_13 == 0) -{ -uint8_t x_14; -x_14 = 0; -return x_14; -} -else -{ -uint32_t x_15; uint8_t x_16; -x_15 = 7530; -x_16 = lean_uint32_dec_le(x_1, x_15); -return x_16; -} -} -else -{ -uint8_t x_17; -x_17 = 1; -return x_17; +uint8_t x_11; +x_11 = 1; +return x_11; } } } @@ -5082,7 +5108,7 @@ x_3 = lean_alloc_closure((void*)(l_Lean_monadNameGeneratorLift___rarg), 2, 0); return x_3; } } -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; @@ -5092,7 +5118,7 @@ lean_ctor_set(x_3, 0, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -5113,7 +5139,7 @@ lean_inc(x_1); lean_ctor_set_tag(x_3, 5); lean_ctor_set(x_3, 1, x_1); lean_ctor_set(x_3, 0, x_2); -x_7 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(x_5); +x_7 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(x_5); lean_dec(x_5); x_8 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_8, 0, x_3); @@ -5134,7 +5160,7 @@ lean_inc(x_1); x_12 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_12, 0, x_2); lean_ctor_set(x_12, 1, x_1); -x_13 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(x_10); +x_13 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(x_10); lean_dec(x_10); x_14 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_14, 0, x_12); @@ -5146,7 +5172,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -5168,7 +5194,7 @@ lean_dec(x_2); x_5 = lean_ctor_get(x_1, 0); lean_inc(x_5); lean_dec(x_1); -x_6 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(x_5); +x_6 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(x_5); lean_dec(x_5); return x_6; } @@ -5178,15 +5204,15 @@ lean_object* x_7; lean_object* x_8; lean_object* x_9; x_7 = lean_ctor_get(x_1, 0); lean_inc(x_7); lean_dec(x_1); -x_8 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(x_7); +x_8 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(x_7); lean_dec(x_7); -x_9 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__4(x_2, x_8, x_4); +x_9 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__4(x_2, x_8, x_4); return x_9; } } } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1() { _start: { lean_object* x_1; @@ -5194,17 +5220,17 @@ x_1 = lean_mk_string_unchecked("[]", 2, 2); return x_1; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3() { _start: { lean_object* x_1; @@ -5212,21 +5238,21 @@ x_1 = lean_mk_string_unchecked(",", 1, 1); return x_1; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -5234,7 +5260,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6() { _start: { lean_object* x_1; @@ -5242,35 +5268,35 @@ x_1 = lean_mk_string_unchecked("[", 1, 1); return x_1; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; x_2 = lean_string_length(x_1); return x_2; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7; x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10() { _start: { lean_object* x_1; @@ -5278,31 +5304,31 @@ x_1 = lean_mk_string_unchecked("]", 1, 1); return x_1; } } -static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11() { +static lean_object* _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) { lean_object* x_3; -x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2; +x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2; return x_3; } else { lean_object* x_4; lean_object* x_5; uint8_t x_6; -x_4 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5; +x_4 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5; lean_inc(x_1); -x_5 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_1, x_4); +x_5 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_1, x_4); x_6 = !lean_is_exclusive(x_1); if (x_6 == 0) { @@ -5311,15 +5337,15 @@ x_7 = lean_ctor_get(x_1, 1); lean_dec(x_7); x_8 = lean_ctor_get(x_1, 0); lean_dec(x_8); -x_9 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9; +x_9 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_5); lean_ctor_set(x_1, 0, x_9); -x_10 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_10 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_11 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_11, 0, x_1); lean_ctor_set(x_11, 1, x_10); -x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8; +x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8; x_13 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_13, 0, x_12); lean_ctor_set(x_13, 1, x_11); @@ -5333,15 +5359,15 @@ else { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_dec(x_1); -x_16 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9; +x_16 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9; x_17 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_5); -x_18 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_18 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_19 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); -x_20 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8; +x_20 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8; x_21 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -5354,7 +5380,7 @@ return x_23; } } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1() { _start: { lean_object* x_1; @@ -5362,21 +5388,21 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.Preresolved.namespace", 33, 33); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -5384,7 +5410,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -5393,7 +5419,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -5402,7 +5428,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6() { _start: { lean_object* x_1; @@ -5410,21 +5436,21 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.Preresolved.decl", 28, 28); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -5432,7 +5458,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -5444,14 +5470,14 @@ lean_dec(x_1); x_4 = lean_unsigned_to_nat(1024u); x_5 = lean_nat_dec_le(x_4, x_2); x_6 = l_Lean_Name_reprPrec(x_3, x_4); -x_7 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3; +x_7 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3; x_8 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_8, 0, x_7); lean_ctor_set(x_8, 1, x_6); if (x_5 == 0) { lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; -x_9 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_9 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_10 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_8); @@ -5465,7 +5491,7 @@ return x_13; else { lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; -x_14 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_14 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_15 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_15, 0, x_14); lean_ctor_set(x_15, 1, x_8); @@ -5489,7 +5515,7 @@ x_21 = lean_ctor_get(x_1, 1); x_22 = lean_unsigned_to_nat(1024u); x_23 = lean_nat_dec_le(x_22, x_2); x_24 = l_Lean_Name_reprPrec(x_20, x_22); -x_25 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8; +x_25 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_24); lean_ctor_set(x_1, 0, x_25); @@ -5497,14 +5523,14 @@ x_26 = lean_box(1); x_27 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_27, 0, x_1); lean_ctor_set(x_27, 1, x_26); -x_28 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(x_21, x_22); +x_28 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(x_21, x_22); x_29 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_29, 0, x_27); lean_ctor_set(x_29, 1, x_28); if (x_23 == 0) { lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; lean_object* x_34; -x_30 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_30 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_31 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_29); @@ -5518,7 +5544,7 @@ return x_34; else { lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; lean_object* x_39; -x_35 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_35 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_36 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_36, 0, x_35); lean_ctor_set(x_36, 1, x_29); @@ -5541,7 +5567,7 @@ lean_dec(x_1); x_42 = lean_unsigned_to_nat(1024u); x_43 = lean_nat_dec_le(x_42, x_2); x_44 = l_Lean_Name_reprPrec(x_40, x_42); -x_45 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8; +x_45 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8; x_46 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_46, 0, x_45); lean_ctor_set(x_46, 1, x_44); @@ -5549,14 +5575,14 @@ x_47 = lean_box(1); x_48 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_48, 0, x_46); lean_ctor_set(x_48, 1, x_47); -x_49 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(x_41, x_42); +x_49 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(x_41, x_42); x_50 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_50, 0, x_48); lean_ctor_set(x_50, 1, x_49); if (x_43 == 0) { lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; lean_object* x_55; -x_51 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_51 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_52 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_52, 0, x_51); lean_ctor_set(x_52, 1, x_50); @@ -5570,7 +5596,7 @@ return x_55; else { lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; -x_56 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_56 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_57 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_57, 0, x_56); lean_ctor_set(x_57, 1, x_50); @@ -5585,29 +5611,29 @@ return x_60; } } } -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__2(x_1); +x_2 = l_repr___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__2(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(x_1, x_2); +x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_1, x_2); lean_dec(x_2); return x_3; } @@ -5616,7 +5642,7 @@ static lean_object* _init_l_Lean_Syntax_instReprPreresolved___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____boxed), 2, 0); return x_1; } } @@ -5628,16 +5654,16 @@ x_1 = l_Lean_Syntax_instReprPreresolved___closed__1; return x_1; } } -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__1(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -5659,7 +5685,7 @@ lean_ctor_set_tag(x_3, 5); lean_ctor_set(x_3, 1, x_1); lean_ctor_set(x_3, 0, x_2); x_7 = lean_unsigned_to_nat(0u); -x_8 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_5, x_7); +x_8 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_5, x_7); x_9 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_9, 0, x_3); lean_ctor_set(x_9, 1, x_8); @@ -5680,7 +5706,7 @@ x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_2); lean_ctor_set(x_13, 1, x_1); x_14 = lean_unsigned_to_nat(0u); -x_15 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_11, x_14); +x_15 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_11, x_14); x_16 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_16, 0, x_13); lean_ctor_set(x_16, 1, x_15); @@ -5691,7 +5717,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__2(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -5714,7 +5740,7 @@ x_5 = lean_ctor_get(x_1, 0); lean_inc(x_5); lean_dec(x_1); x_6 = lean_unsigned_to_nat(0u); -x_7 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_5, x_6); +x_7 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_5, x_6); return x_7; } else @@ -5724,23 +5750,23 @@ x_8 = lean_ctor_get(x_1, 0); lean_inc(x_8); lean_dec(x_1); x_9 = lean_unsigned_to_nat(0u); -x_10 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_8, x_9); -x_11 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__3(x_2, x_10, x_4); +x_10 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_8, x_9); +x_11 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__3(x_2, x_10, x_4); return x_11; } } } } -LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__5(lean_object* x_1) { +LEAN_EXPORT lean_object* l_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__5(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; x_2 = lean_unsigned_to_nat(0u); -x_3 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -5762,7 +5788,7 @@ lean_ctor_set_tag(x_3, 5); lean_ctor_set(x_3, 1, x_1); lean_ctor_set(x_3, 0, x_2); x_7 = lean_unsigned_to_nat(0u); -x_8 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_5, x_7); +x_8 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_5, x_7); x_9 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_9, 0, x_3); lean_ctor_set(x_9, 1, x_8); @@ -5783,7 +5809,7 @@ x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_2); lean_ctor_set(x_13, 1, x_1); x_14 = lean_unsigned_to_nat(0u); -x_15 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_11, x_14); +x_15 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_11, x_14); x_16 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_16, 0, x_13); lean_ctor_set(x_16, 1, x_15); @@ -5794,7 +5820,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__6(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__6(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -5817,7 +5843,7 @@ x_5 = lean_ctor_get(x_1, 0); lean_inc(x_5); lean_dec(x_1); x_6 = lean_unsigned_to_nat(0u); -x_7 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_5, x_6); +x_7 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_5, x_6); return x_7; } else @@ -5827,28 +5853,28 @@ x_8 = lean_ctor_get(x_1, 0); lean_inc(x_8); lean_dec(x_1); x_9 = lean_unsigned_to_nat(0u); -x_10 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056_(x_8, x_9); -x_11 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__7(x_2, x_10, x_4); +x_10 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064_(x_8, x_9); +x_11 = l_List_foldl___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__7(x_2, x_10, x_4); return x_11; } } } } -LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) { lean_object* x_3; -x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2; +x_3 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2; return x_3; } else { lean_object* x_4; lean_object* x_5; uint8_t x_6; -x_4 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5; +x_4 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5; lean_inc(x_1); -x_5 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__6(x_1, x_4); +x_5 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__6(x_1, x_4); x_6 = !lean_is_exclusive(x_1); if (x_6 == 0) { @@ -5857,15 +5883,15 @@ x_7 = lean_ctor_get(x_1, 1); lean_dec(x_7); x_8 = lean_ctor_get(x_1, 0); lean_dec(x_8); -x_9 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9; +x_9 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_5); lean_ctor_set(x_1, 0, x_9); -x_10 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_10 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_11 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_11, 0, x_1); lean_ctor_set(x_11, 1, x_10); -x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8; +x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8; x_13 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_13, 0, x_12); lean_ctor_set(x_13, 1, x_11); @@ -5879,15 +5905,15 @@ else { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_dec(x_1); -x_16 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9; +x_16 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9; x_17 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_5); -x_18 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_18 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_19 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); -x_20 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8; +x_20 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8; x_21 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -5900,7 +5926,7 @@ return x_23; } } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1() { _start: { lean_object* x_1; @@ -5908,33 +5934,33 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.missing", 19, 19); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5942,23 +5968,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -5966,7 +5992,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7() { _start: { lean_object* x_1; @@ -5974,21 +6000,21 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.node", 16, 16); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -5996,7 +6022,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10() { _start: { lean_object* x_1; @@ -6004,35 +6030,35 @@ x_1 = lean_mk_string_unchecked("#[", 2, 2); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10; x_2 = lean_string_length(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11; x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14() { _start: { lean_object* x_1; @@ -6040,17 +6066,17 @@ x_1 = lean_mk_string_unchecked("#[]", 3, 3); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16() { _start: { lean_object* x_1; @@ -6058,21 +6084,21 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.atom", 16, 16); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -6080,7 +6106,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19() { _start: { lean_object* x_1; @@ -6088,21 +6114,21 @@ x_1 = lean_mk_string_unchecked("Lean.Syntax.ident", 17, 17); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20; x_2 = lean_box(1); x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -6110,7 +6136,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22() { _start: { lean_object* x_1; @@ -6118,7 +6144,7 @@ x_1 = lean_mk_string_unchecked(".toSubstring", 12, 12); return x_1; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object* x_1, lean_object* x_2) { _start: { switch (lean_obj_tag(x_1)) { @@ -6130,14 +6156,14 @@ x_4 = lean_nat_dec_le(x_3, x_2); if (x_4 == 0) { lean_object* x_5; lean_object* x_6; -x_5 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4; +x_5 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4; x_6 = l_Repr_addAppParen(x_5, x_2); return x_6; } else { lean_object* x_7; lean_object* x_8; -x_7 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6; +x_7 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6; x_8 = l_Repr_addAppParen(x_7, x_2); return x_8; } @@ -6155,7 +6181,7 @@ lean_dec(x_1); x_12 = lean_unsigned_to_nat(1024u); x_13 = lean_nat_dec_le(x_12, x_2); x_14 = l___private_Init_Data_Repr_0__reprSourceInfo____x40_Init_Data_Repr___hyg_2488_(x_9, x_12); -x_15 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9; +x_15 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9; x_16 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_14); @@ -6180,17 +6206,17 @@ if (x_24 == 0) { lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; x_25 = lean_array_to_list(x_11); -x_26 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5; -x_27 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__2(x_25, x_26); -x_28 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13; +x_26 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5; +x_27 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__2(x_25, x_26); +x_28 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13; x_29 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); -x_30 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_30 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_31 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_31, 0, x_29); lean_ctor_set(x_31, 1, x_30); -x_32 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12; +x_32 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12; x_33 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -6201,7 +6227,7 @@ lean_ctor_set_uint8(x_35, sizeof(void*)*1, x_34); x_36 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_36, 0, x_21); lean_ctor_set(x_36, 1, x_35); -x_37 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_37 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_38 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_36); @@ -6216,11 +6242,11 @@ else { lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; lean_object* x_47; lean_object* x_48; lean_dec(x_11); -x_42 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15; +x_42 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15; x_43 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_43, 0, x_21); lean_ctor_set(x_43, 1, x_42); -x_44 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_44 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_45 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_45, 0, x_44); lean_ctor_set(x_45, 1, x_43); @@ -6238,17 +6264,17 @@ if (x_24 == 0) { lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; lean_object* x_65; x_49 = lean_array_to_list(x_11); -x_50 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5; -x_51 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__2(x_49, x_50); -x_52 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13; +x_50 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5; +x_51 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__2(x_49, x_50); +x_52 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13; x_53 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_53, 0, x_52); lean_ctor_set(x_53, 1, x_51); -x_54 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11; +x_54 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11; x_55 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_55, 0, x_53); lean_ctor_set(x_55, 1, x_54); -x_56 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12; +x_56 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12; x_57 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_57, 0, x_56); lean_ctor_set(x_57, 1, x_55); @@ -6259,7 +6285,7 @@ lean_ctor_set_uint8(x_59, sizeof(void*)*1, x_58); x_60 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_60, 0, x_21); lean_ctor_set(x_60, 1, x_59); -x_61 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_61 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_62 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_62, 0, x_61); lean_ctor_set(x_62, 1, x_60); @@ -6274,11 +6300,11 @@ else { lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; lean_object* x_71; lean_object* x_72; lean_dec(x_11); -x_66 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15; +x_66 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15; x_67 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_67, 0, x_21); lean_ctor_set(x_67, 1, x_66); -x_68 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_68 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_69 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_69, 0, x_68); lean_ctor_set(x_69, 1, x_67); @@ -6303,7 +6329,7 @@ x_75 = lean_ctor_get(x_1, 1); x_76 = lean_unsigned_to_nat(1024u); x_77 = lean_nat_dec_le(x_76, x_2); x_78 = l___private_Init_Data_Repr_0__reprSourceInfo____x40_Init_Data_Repr___hyg_2488_(x_74, x_76); -x_79 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18; +x_79 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_78); lean_ctor_set(x_1, 0, x_79); @@ -6321,7 +6347,7 @@ lean_ctor_set(x_84, 1, x_83); if (x_77 == 0) { lean_object* x_85; lean_object* x_86; uint8_t x_87; lean_object* x_88; lean_object* x_89; -x_85 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_85 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_86 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_86, 0, x_85); lean_ctor_set(x_86, 1, x_84); @@ -6335,7 +6361,7 @@ return x_89; else { lean_object* x_90; lean_object* x_91; uint8_t x_92; lean_object* x_93; lean_object* x_94; -x_90 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_90 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_91 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_91, 0, x_90); lean_ctor_set(x_91, 1, x_84); @@ -6358,7 +6384,7 @@ lean_dec(x_1); x_97 = lean_unsigned_to_nat(1024u); x_98 = lean_nat_dec_le(x_97, x_2); x_99 = l___private_Init_Data_Repr_0__reprSourceInfo____x40_Init_Data_Repr___hyg_2488_(x_95, x_97); -x_100 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18; +x_100 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18; x_101 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_101, 0, x_100); lean_ctor_set(x_101, 1, x_99); @@ -6376,7 +6402,7 @@ lean_ctor_set(x_106, 1, x_105); if (x_98 == 0) { lean_object* x_107; lean_object* x_108; uint8_t x_109; lean_object* x_110; lean_object* x_111; -x_107 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_107 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_108 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_108, 0, x_107); lean_ctor_set(x_108, 1, x_106); @@ -6390,7 +6416,7 @@ return x_111; else { lean_object* x_112; lean_object* x_113; uint8_t x_114; lean_object* x_115; lean_object* x_116; -x_112 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_112 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_113 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_113, 0, x_112); lean_ctor_set(x_113, 1, x_106); @@ -6418,7 +6444,7 @@ lean_dec(x_1); x_121 = lean_unsigned_to_nat(1024u); x_122 = lean_nat_dec_le(x_121, x_2); x_123 = l___private_Init_Data_Repr_0__reprSourceInfo____x40_Init_Data_Repr___hyg_2488_(x_117, x_121); -x_124 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21; +x_124 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21; x_125 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_125, 0, x_124); lean_ctor_set(x_125, 1, x_123); @@ -6427,7 +6453,7 @@ x_127 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_127, 0, x_125); lean_ctor_set(x_127, 1, x_126); x_128 = l_Lean_Name_reprPrec(x_119, x_121); -x_129 = l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4(x_120, x_121); +x_129 = l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4(x_120, x_121); if (x_122 == 0) { lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; uint8_t x_145; lean_object* x_146; lean_object* x_147; @@ -6444,7 +6470,7 @@ lean_dec(x_131); lean_dec(x_130); x_134 = l_String_quote(x_133); lean_dec(x_133); -x_135 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22; +x_135 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22; x_136 = lean_string_append(x_134, x_135); x_137 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_137, 0, x_136); @@ -6463,7 +6489,7 @@ lean_ctor_set(x_141, 1, x_126); x_142 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_142, 0, x_141); lean_ctor_set(x_142, 1, x_129); -x_143 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; +x_143 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; x_144 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_144, 0, x_143); lean_ctor_set(x_144, 1, x_142); @@ -6490,7 +6516,7 @@ lean_dec(x_149); lean_dec(x_148); x_152 = l_String_quote(x_151); lean_dec(x_151); -x_153 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22; +x_153 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22; x_154 = lean_string_append(x_152, x_153); x_155 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_155, 0, x_154); @@ -6509,7 +6535,7 @@ lean_ctor_set(x_159, 1, x_126); x_160 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_160, 0, x_159); lean_ctor_set(x_160, 1, x_129); -x_161 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; +x_161 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; x_162 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_162, 0, x_161); lean_ctor_set(x_162, 1, x_160); @@ -6524,20 +6550,20 @@ return x_165; } } } -LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____spec__4(x_1, x_2); +x_3 = l_List_repr___at___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____spec__4(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_1, x_2); lean_dec(x_2); return x_3; } @@ -6546,7 +6572,7 @@ static lean_object* _init_l_Lean_Syntax_instRepr___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____boxed), 2, 0); return x_1; } } @@ -6558,7 +6584,7 @@ x_1 = l_Lean_Syntax_instRepr___closed__1; return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1() { _start: { lean_object* x_1; @@ -6566,29 +6592,29 @@ x_1 = lean_mk_string_unchecked("raw", 3, 3); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4() { _start: { lean_object* x_1; @@ -6596,29 +6622,29 @@ x_1 = lean_mk_string_unchecked(" := ", 4, 4); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -6627,7 +6653,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8() { _start: { lean_object* x_1; @@ -6635,35 +6661,35 @@ x_1 = lean_mk_string_unchecked("{ ", 2, 2); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8; x_2 = lean_string_length(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9; x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12() { _start: { lean_object* x_1; @@ -6671,23 +6697,23 @@ x_1 = lean_mk_string_unchecked(" }", 2, 2); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; x_3 = lean_unsigned_to_nat(0u); -x_4 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_1, x_3); -x_5 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7; +x_4 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_1, x_3); +x_5 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7; x_6 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_6, 0, x_5); lean_ctor_set(x_6, 1, x_4); @@ -6695,19 +6721,19 @@ x_7 = 0; x_8 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_8, 0, x_6); lean_ctor_set_uint8(x_8, sizeof(void*)*1, x_7); -x_9 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6; +x_9 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6; x_10 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_8); -x_11 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; +x_11 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; x_12 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_10); -x_13 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; +x_13 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; x_14 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); -x_15 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; +x_15 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; x_16 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_14); @@ -6717,28 +6743,28 @@ lean_ctor_set_uint8(x_17, sizeof(void*)*1, x_7); return x_17; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418_(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___boxed), 2, 0); +x_2 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___boxed), 2, 0); return x_2; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410_(x_1); +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418_(x_1); lean_dec(x_1); return x_2; } @@ -6747,7 +6773,7 @@ static lean_object* _init_l_Lean_Syntax_instReprTSyntax___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___boxed), 2, 0); return x_1; } } @@ -7050,7 +7076,7 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -7100,7 +7126,7 @@ goto _start; } } } -LEAN_EXPORT uint8_t l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886_(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -7145,29 +7171,29 @@ return x_13; else { uint8_t x_14; -x_14 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(x_9, x_11); +x_14 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(x_9, x_11); return x_14; } } } } } -LEAN_EXPORT lean_object* l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(x_1, x_2); +x_3 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); @@ -7178,7 +7204,7 @@ static lean_object* _init_l_Lean_Syntax_instBEqPreresolved___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____boxed), 2, 0); return x_1; } } @@ -7262,7 +7288,7 @@ x_6 = lean_ctor_get(x_1, 0); x_7 = lean_ctor_get(x_1, 1); x_8 = lean_ctor_get(x_2, 0); x_9 = lean_ctor_get(x_2, 1); -x_10 = l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878_(x_6, x_8); +x_10 = l___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886_(x_6, x_8); if (x_10 == 0) { uint8_t x_11; @@ -14840,7 +14866,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_List_foldr___at_Substring_toName___spec__1___closed__1; x_2 = l_List_foldr___at_Substring_toName___spec__1___closed__2; -x_3 = lean_unsigned_to_nat(984u); +x_3 = lean_unsigned_to_nat(985u); x_4 = lean_unsigned_to_nat(10u); x_5 = l_List_foldr___at_Substring_toName___spec__1___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -20634,7 +20660,7 @@ lean_dec(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1() { _start: { lean_object* x_1; @@ -20642,33 +20668,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.TransparencyMode.all", 30, 30); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20676,23 +20702,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20700,7 +20726,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7() { _start: { lean_object* x_1; @@ -20708,33 +20734,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.TransparencyMode.default", 34, 34); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20742,23 +20768,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20766,7 +20792,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13() { _start: { lean_object* x_1; @@ -20774,33 +20800,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.TransparencyMode.reducible", 36, 36); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20808,23 +20834,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20832,7 +20858,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19() { _start: { lean_object* x_1; @@ -20840,33 +20866,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.TransparencyMode.instances", 36, 36); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20874,23 +20900,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -20898,7 +20924,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780_(uint8_t x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788_(uint8_t x_1, lean_object* x_2) { _start: { switch (x_1) { @@ -20910,14 +20936,14 @@ x_4 = lean_nat_dec_le(x_3, x_2); if (x_4 == 0) { lean_object* x_5; lean_object* x_6; -x_5 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4; +x_5 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4; x_6 = l_Repr_addAppParen(x_5, x_2); return x_6; } else { lean_object* x_7; lean_object* x_8; -x_7 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6; +x_7 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6; x_8 = l_Repr_addAppParen(x_7, x_2); return x_8; } @@ -20930,14 +20956,14 @@ x_10 = lean_nat_dec_le(x_9, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; -x_11 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10; +x_11 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10; x_12 = l_Repr_addAppParen(x_11, x_2); return x_12; } else { lean_object* x_13; lean_object* x_14; -x_13 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12; +x_13 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12; x_14 = l_Repr_addAppParen(x_13, x_2); return x_14; } @@ -20950,14 +20976,14 @@ x_16 = lean_nat_dec_le(x_15, x_2); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; -x_17 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16; +x_17 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16; x_18 = l_Repr_addAppParen(x_17, x_2); return x_18; } else { lean_object* x_19; lean_object* x_20; -x_19 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18; +x_19 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18; x_20 = l_Repr_addAppParen(x_19, x_2); return x_20; } @@ -20970,14 +20996,14 @@ x_22 = lean_nat_dec_le(x_21, x_2); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; -x_23 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22; +x_23 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22; x_24 = l_Repr_addAppParen(x_23, x_2); return x_24; } else { lean_object* x_25; lean_object* x_26; -x_25 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24; +x_25 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24; x_26 = l_Repr_addAppParen(x_25, x_2); return x_26; } @@ -20985,13 +21011,13 @@ return x_26; } } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; x_3 = lean_unbox(x_1); lean_dec(x_1); -x_4 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780_(x_3, x_2); +x_4 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788_(x_3, x_2); lean_dec(x_2); return x_4; } @@ -21000,7 +21026,7 @@ static lean_object* _init_l_Lean_Meta_instReprTransparencyMode___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____boxed), 2, 0); return x_1; } } @@ -21012,7 +21038,7 @@ x_1 = l_Lean_Meta_instReprTransparencyMode___closed__1; return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1() { _start: { lean_object* x_1; @@ -21020,33 +21046,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.EtaStructMode.all", 27, 27); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21054,23 +21080,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21078,7 +21104,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7() { _start: { lean_object* x_1; @@ -21086,33 +21112,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.EtaStructMode.notClasses", 34, 34); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21120,23 +21146,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21144,7 +21170,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13() { _start: { lean_object* x_1; @@ -21152,33 +21178,33 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.EtaStructMode.none", 28, 28); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21186,23 +21212,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21210,7 +21236,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(uint8_t x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(uint8_t x_1, lean_object* x_2) { _start: { switch (x_1) { @@ -21222,14 +21248,14 @@ x_4 = lean_nat_dec_le(x_3, x_2); if (x_4 == 0) { lean_object* x_5; lean_object* x_6; -x_5 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4; +x_5 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4; x_6 = l_Repr_addAppParen(x_5, x_2); return x_6; } else { lean_object* x_7; lean_object* x_8; -x_7 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6; +x_7 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6; x_8 = l_Repr_addAppParen(x_7, x_2); return x_8; } @@ -21242,14 +21268,14 @@ x_10 = lean_nat_dec_le(x_9, x_2); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; -x_11 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10; +x_11 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10; x_12 = l_Repr_addAppParen(x_11, x_2); return x_12; } else { lean_object* x_13; lean_object* x_14; -x_13 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12; +x_13 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12; x_14 = l_Repr_addAppParen(x_13, x_2); return x_14; } @@ -21262,14 +21288,14 @@ x_16 = lean_nat_dec_le(x_15, x_2); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; -x_17 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16; +x_17 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16; x_18 = l_Repr_addAppParen(x_17, x_2); return x_18; } else { lean_object* x_19; lean_object* x_20; -x_19 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18; +x_19 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18; x_20 = l_Repr_addAppParen(x_19, x_2); return x_20; } @@ -21277,13 +21303,13 @@ return x_20; } } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; x_3 = lean_unbox(x_1); lean_dec(x_1); -x_4 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(x_3, x_2); +x_4 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(x_3, x_2); lean_dec(x_2); return x_4; } @@ -21292,7 +21318,7 @@ static lean_object* _init_l_Lean_Meta_instReprEtaStructMode___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____boxed), 2, 0); return x_1; } } @@ -21304,7 +21330,7 @@ x_1 = l_Lean_Meta_instReprEtaStructMode___closed__1; return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1() { _start: { lean_object* x_1; @@ -21312,41 +21338,41 @@ x_1 = lean_mk_string_unchecked("zeta", 4, 4); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -21355,7 +21381,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6() { _start: { lean_object* x_1; @@ -21363,17 +21389,17 @@ x_1 = lean_mk_string_unchecked("beta", 4, 4); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8() { _start: { lean_object* x_1; @@ -21381,17 +21407,17 @@ x_1 = lean_mk_string_unchecked("eta", 3, 3); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10() { _start: { lean_object* x_1; @@ -21399,17 +21425,17 @@ x_1 = lean_mk_string_unchecked("etaStruct", 9, 9); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12() { _start: { lean_object* x_1; lean_object* x_2; @@ -21418,7 +21444,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13() { _start: { lean_object* x_1; @@ -21426,17 +21452,17 @@ x_1 = lean_mk_string_unchecked("iota", 4, 4); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15() { _start: { lean_object* x_1; @@ -21444,17 +21470,17 @@ x_1 = lean_mk_string_unchecked("proj", 4, 4); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17() { _start: { lean_object* x_1; @@ -21462,17 +21488,17 @@ x_1 = lean_mk_string_unchecked("decide", 6, 6); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19() { _start: { lean_object* x_1; lean_object* x_2; @@ -21481,7 +21507,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20() { _start: { lean_object* x_1; @@ -21489,17 +21515,17 @@ x_1 = lean_mk_string_unchecked("autoUnfold", 10, 10); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22() { _start: { lean_object* x_1; lean_object* x_2; @@ -21508,7 +21534,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23() { _start: { lean_object* x_1; @@ -21516,17 +21542,17 @@ x_1 = lean_mk_string_unchecked("failIfUnchanged", 15, 15); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25() { _start: { lean_object* x_1; lean_object* x_2; @@ -21535,7 +21561,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26() { _start: { lean_object* x_1; @@ -21543,17 +21569,17 @@ x_1 = lean_mk_string_unchecked("unfoldPartialApp", 16, 16); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28() { _start: { lean_object* x_1; lean_object* x_2; @@ -21562,7 +21588,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29() { _start: { lean_object* x_1; @@ -21570,17 +21596,17 @@ x_1 = lean_mk_string_unchecked("zetaDelta", 9, 9); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31() { _start: { lean_object* x_1; @@ -21588,17 +21614,17 @@ x_1 = lean_mk_string_unchecked("index", 5, 5); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33() { _start: { lean_object* x_1; lean_object* x_2; @@ -21607,7 +21633,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34() { _start: { lean_object* x_1; lean_object* x_2; @@ -21617,23 +21643,23 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21641,7 +21667,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37() { _start: { lean_object* x_1; lean_object* x_2; @@ -21651,23 +21677,23 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -21675,7 +21701,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052_(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; uint8_t x_4; uint8_t x_5; uint8_t x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; uint8_t x_13; uint8_t x_14; uint8_t x_15; uint8_t x_16; uint8_t x_17; uint8_t x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; @@ -21684,8 +21710,8 @@ x_4 = lean_ctor_get_uint8(x_1, 1); x_5 = lean_ctor_get_uint8(x_1, 2); x_6 = lean_ctor_get_uint8(x_1, 3); x_7 = lean_unsigned_to_nat(0u); -x_8 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(x_6, x_7); -x_9 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12; +x_8 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(x_6, x_7); +x_9 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12; x_10 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_8); @@ -21704,32 +21730,32 @@ x_20 = lean_ctor_get_uint8(x_1, 11); if (x_3 == 0) { lean_object* x_173; -x_173 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_173 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_21 = x_173; goto block_172; } else { lean_object* x_174; -x_174 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_174 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_21 = x_174; goto block_172; } block_172: { lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_22 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5; +x_22 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5; x_23 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_23, 0, x_22); lean_ctor_set(x_23, 1, x_21); x_24 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_24, 0, x_23); lean_ctor_set_uint8(x_24, sizeof(void*)*1, x_11); -x_25 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4; +x_25 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4; x_26 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_24); -x_27 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4; +x_27 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4; x_28 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -21737,25 +21763,25 @@ x_29 = lean_box(1); x_30 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_30, 0, x_28); lean_ctor_set(x_30, 1, x_29); -x_31 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7; +x_31 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7; x_32 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); -x_33 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; +x_33 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; x_34 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_34, 0, x_32); lean_ctor_set(x_34, 1, x_33); if (x_4 == 0) { lean_object* x_170; -x_170 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_170 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_35 = x_170; goto block_169; } else { lean_object* x_171; -x_171 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_171 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_35 = x_171; goto block_169; } @@ -21777,7 +21803,7 @@ lean_ctor_set(x_39, 1, x_27); x_40 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_40, 0, x_39); lean_ctor_set(x_40, 1, x_29); -x_41 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9; +x_41 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9; x_42 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_42, 0, x_40); lean_ctor_set(x_42, 1, x_41); @@ -21787,21 +21813,21 @@ lean_ctor_set(x_43, 1, x_33); if (x_5 == 0) { lean_object* x_167; -x_167 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_167 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_44 = x_167; goto block_166; } else { lean_object* x_168; -x_168 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_168 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_44 = x_168; goto block_166; } block_166: { lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_45 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7; +x_45 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7; x_46 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_46, 0, x_45); lean_ctor_set(x_46, 1, x_44); @@ -21817,7 +21843,7 @@ lean_ctor_set(x_49, 1, x_27); x_50 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_50, 0, x_49); lean_ctor_set(x_50, 1, x_29); -x_51 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11; +x_51 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11; x_52 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_52, 0, x_50); lean_ctor_set(x_52, 1, x_51); @@ -21833,7 +21859,7 @@ lean_ctor_set(x_55, 1, x_27); x_56 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_56, 0, x_55); lean_ctor_set(x_56, 1, x_29); -x_57 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14; +x_57 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14; x_58 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_58, 0, x_56); lean_ctor_set(x_58, 1, x_57); @@ -21843,14 +21869,14 @@ lean_ctor_set(x_59, 1, x_33); if (x_13 == 0) { lean_object* x_164; -x_164 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_164 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_60 = x_164; goto block_163; } else { lean_object* x_165; -x_165 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_165 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_60 = x_165; goto block_163; } @@ -21872,7 +21898,7 @@ lean_ctor_set(x_64, 1, x_27); x_65 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_65, 0, x_64); lean_ctor_set(x_65, 1, x_29); -x_66 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16; +x_66 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16; x_67 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_67, 0, x_65); lean_ctor_set(x_67, 1, x_66); @@ -21882,14 +21908,14 @@ lean_ctor_set(x_68, 1, x_33); if (x_14 == 0) { lean_object* x_161; -x_161 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_161 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_69 = x_161; goto block_160; } else { lean_object* x_162; -x_162 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_162 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_69 = x_162; goto block_160; } @@ -21911,7 +21937,7 @@ lean_ctor_set(x_73, 1, x_27); x_74 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_74, 0, x_73); lean_ctor_set(x_74, 1, x_29); -x_75 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18; +x_75 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18; x_76 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_76, 0, x_74); lean_ctor_set(x_76, 1, x_75); @@ -21921,21 +21947,21 @@ lean_ctor_set(x_77, 1, x_33); if (x_15 == 0) { lean_object* x_158; -x_158 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_158 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_78 = x_158; goto block_157; } else { lean_object* x_159; -x_159 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_159 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_78 = x_159; goto block_157; } block_157: { lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_79 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19; +x_79 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19; x_80 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_80, 0, x_79); lean_ctor_set(x_80, 1, x_78); @@ -21951,7 +21977,7 @@ lean_ctor_set(x_83, 1, x_27); x_84 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_84, 0, x_83); lean_ctor_set(x_84, 1, x_29); -x_85 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21; +x_85 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21; x_86 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_86, 0, x_84); lean_ctor_set(x_86, 1, x_85); @@ -21961,21 +21987,21 @@ lean_ctor_set(x_87, 1, x_33); if (x_16 == 0) { lean_object* x_155; -x_155 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_155 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_88 = x_155; goto block_154; } else { lean_object* x_156; -x_156 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_156 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_88 = x_156; goto block_154; } block_154: { lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_89 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22; +x_89 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22; x_90 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_90, 0, x_89); lean_ctor_set(x_90, 1, x_88); @@ -21991,7 +22017,7 @@ lean_ctor_set(x_93, 1, x_27); x_94 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_94, 0, x_93); lean_ctor_set(x_94, 1, x_29); -x_95 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24; +x_95 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24; x_96 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_96, 0, x_94); lean_ctor_set(x_96, 1, x_95); @@ -22001,21 +22027,21 @@ lean_ctor_set(x_97, 1, x_33); if (x_17 == 0) { lean_object* x_152; -x_152 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_152 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_98 = x_152; goto block_151; } else { lean_object* x_153; -x_153 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_153 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_98 = x_153; goto block_151; } block_151: { lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_99 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25; +x_99 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25; x_100 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_100, 0, x_99); lean_ctor_set(x_100, 1, x_98); @@ -22031,7 +22057,7 @@ lean_ctor_set(x_103, 1, x_27); x_104 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_104, 0, x_103); lean_ctor_set(x_104, 1, x_29); -x_105 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27; +x_105 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27; x_106 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_106, 0, x_104); lean_ctor_set(x_106, 1, x_105); @@ -22041,21 +22067,21 @@ lean_ctor_set(x_107, 1, x_33); if (x_18 == 0) { lean_object* x_149; -x_149 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_149 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_108 = x_149; goto block_148; } else { lean_object* x_150; -x_150 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_150 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_108 = x_150; goto block_148; } block_148: { lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; -x_109 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28; +x_109 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28; x_110 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_110, 0, x_109); lean_ctor_set(x_110, 1, x_108); @@ -22071,7 +22097,7 @@ lean_ctor_set(x_113, 1, x_27); x_114 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_114, 0, x_113); lean_ctor_set(x_114, 1, x_29); -x_115 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30; +x_115 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30; x_116 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_116, 0, x_114); lean_ctor_set(x_116, 1, x_115); @@ -22081,14 +22107,14 @@ lean_ctor_set(x_117, 1, x_33); if (x_19 == 0) { lean_object* x_146; -x_146 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_146 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_118 = x_146; goto block_145; } else { lean_object* x_147; -x_147 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_147 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_118 = x_147; goto block_145; } @@ -22110,7 +22136,7 @@ lean_ctor_set(x_122, 1, x_27); x_123 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_123, 0, x_122); lean_ctor_set(x_123, 1, x_29); -x_124 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32; +x_124 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32; x_125 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_125, 0, x_123); lean_ctor_set(x_125, 1, x_124); @@ -22120,19 +22146,19 @@ lean_ctor_set(x_126, 1, x_33); if (x_20 == 0) { lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; -x_127 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36; +x_127 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36; x_128 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_128, 0, x_126); lean_ctor_set(x_128, 1, x_127); -x_129 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; +x_129 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; x_130 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_130, 0, x_129); lean_ctor_set(x_130, 1, x_128); -x_131 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; +x_131 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; x_132 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_132, 0, x_130); lean_ctor_set(x_132, 1, x_131); -x_133 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; +x_133 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; x_134 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_134, 0, x_133); lean_ctor_set(x_134, 1, x_132); @@ -22144,19 +22170,19 @@ return x_135; else { lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; -x_136 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39; +x_136 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39; x_137 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_137, 0, x_126); lean_ctor_set(x_137, 1, x_136); -x_138 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; +x_138 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; x_139 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_139, 0, x_138); lean_ctor_set(x_139, 1, x_137); -x_140 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; +x_140 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; x_141 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_141, 0, x_139); lean_ctor_set(x_141, 1, x_140); -x_142 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; +x_142 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; x_143 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_143, 0, x_142); lean_ctor_set(x_143, 1, x_141); @@ -22177,11 +22203,11 @@ return x_144; } } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052_(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; @@ -22191,7 +22217,7 @@ static lean_object* _init_l_Lean_Meta_instReprConfig___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____boxed), 2, 0); return x_1; } } @@ -22203,7 +22229,7 @@ x_1 = l_Lean_Meta_instReprConfig___closed__1; return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1() { _start: { lean_object* x_1; @@ -22211,41 +22237,41 @@ x_1 = lean_mk_string_unchecked("maxSteps", 8, 8); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3; -x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3; +x_2 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -22254,7 +22280,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6() { _start: { lean_object* x_1; @@ -22262,17 +22288,17 @@ x_1 = lean_mk_string_unchecked("maxDischargeDepth", 17, 17); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8() { _start: { lean_object* x_1; lean_object* x_2; @@ -22281,7 +22307,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9() { _start: { lean_object* x_1; @@ -22289,17 +22315,17 @@ x_1 = lean_mk_string_unchecked("contextual", 10, 10); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11() { _start: { lean_object* x_1; @@ -22307,17 +22333,17 @@ x_1 = lean_mk_string_unchecked("memoize", 7, 7); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13() { _start: { lean_object* x_1; lean_object* x_2; @@ -22326,7 +22352,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14() { _start: { lean_object* x_1; @@ -22334,17 +22360,17 @@ x_1 = lean_mk_string_unchecked("singlePass", 10, 10); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16() { _start: { lean_object* x_1; @@ -22352,17 +22378,17 @@ x_1 = lean_mk_string_unchecked("arith", 5, 5); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18() { _start: { lean_object* x_1; @@ -22370,17 +22396,17 @@ x_1 = lean_mk_string_unchecked("dsimp", 5, 5); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20() { _start: { lean_object* x_1; @@ -22388,17 +22414,17 @@ x_1 = lean_mk_string_unchecked("ground", 6, 6); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22() { _start: { lean_object* x_1; @@ -22406,17 +22432,17 @@ x_1 = lean_mk_string_unchecked("implicitDefEqProofs", 19, 19); return x_1; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24() { _start: { lean_object* x_1; lean_object* x_2; @@ -22425,23 +22451,23 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -22449,23 +22475,23 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24; -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_3 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28() { +static lean_object* _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -22473,7 +22499,7 @@ lean_ctor_set_uint8(x_3, sizeof(void*)*1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310_(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; uint8_t x_33; uint8_t x_34; uint8_t x_35; uint8_t x_36; uint8_t x_37; uint8_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; uint8_t x_45; uint8_t x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; uint8_t x_55; lean_object* x_56; @@ -22482,7 +22508,7 @@ lean_inc(x_3); x_4 = l___private_Init_Data_Repr_0__Nat_reprFast(x_3); x_5 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_5, 0, x_4); -x_6 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5; +x_6 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5; x_7 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); @@ -22490,11 +22516,11 @@ x_8 = 0; x_9 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_9, 0, x_7); lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_8); -x_10 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4; +x_10 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4; x_11 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_9); -x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4; +x_12 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4; x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_11); lean_ctor_set(x_13, 1, x_12); @@ -22502,11 +22528,11 @@ x_14 = lean_box(1); x_15 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); -x_16 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7; +x_16 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7; x_17 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_17, 0, x_15); lean_ctor_set(x_17, 1, x_16); -x_18 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5; +x_18 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5; x_19 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); @@ -22515,7 +22541,7 @@ lean_inc(x_20); x_21 = l___private_Init_Data_Repr_0__Nat_reprFast(x_20); x_22 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_22, 0, x_21); -x_23 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8; +x_23 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8; x_24 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_24, 0, x_23); lean_ctor_set(x_24, 1, x_22); @@ -22531,7 +22557,7 @@ lean_ctor_set(x_27, 1, x_12); x_28 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_28, 0, x_27); lean_ctor_set(x_28, 1, x_14); -x_29 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10; +x_29 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10; x_30 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_30, 0, x_28); lean_ctor_set(x_30, 1, x_29); @@ -22546,8 +22572,8 @@ x_36 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 4); x_37 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 5); x_38 = lean_ctor_get_uint8(x_1, sizeof(void*)*2 + 6); x_39 = lean_unsigned_to_nat(0u); -x_40 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(x_38, x_39); -x_41 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12; +x_40 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(x_38, x_39); +x_41 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12; x_42 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_42, 0, x_41); lean_ctor_set(x_42, 1, x_40); @@ -22570,21 +22596,21 @@ lean_dec(x_1); if (x_32 == 0) { lean_object* x_290; -x_290 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_290 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_56 = x_290; goto block_289; } else { lean_object* x_291; -x_291 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_291 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_56 = x_291; goto block_289; } block_289: { lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_57 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22; +x_57 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22; x_58 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_58, 0, x_57); lean_ctor_set(x_58, 1, x_56); @@ -22600,7 +22626,7 @@ lean_ctor_set(x_61, 1, x_12); x_62 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_62, 0, x_61); lean_ctor_set(x_62, 1, x_14); -x_63 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12; +x_63 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12; x_64 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_64, 0, x_62); lean_ctor_set(x_64, 1, x_63); @@ -22610,21 +22636,21 @@ lean_ctor_set(x_65, 1, x_18); if (x_33 == 0) { lean_object* x_287; -x_287 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_287 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_66 = x_287; goto block_286; } else { lean_object* x_288; -x_288 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_288 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_66 = x_288; goto block_286; } block_286: { lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_67 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13; +x_67 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13; x_68 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_68, 0, x_67); lean_ctor_set(x_68, 1, x_66); @@ -22640,7 +22666,7 @@ lean_ctor_set(x_71, 1, x_12); x_72 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_72, 0, x_71); lean_ctor_set(x_72, 1, x_14); -x_73 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15; +x_73 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15; x_74 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_74, 0, x_72); lean_ctor_set(x_74, 1, x_73); @@ -22650,14 +22676,14 @@ lean_ctor_set(x_75, 1, x_18); if (x_34 == 0) { lean_object* x_284; -x_284 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_284 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_76 = x_284; goto block_283; } else { lean_object* x_285; -x_285 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_285 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_76 = x_285; goto block_283; } @@ -22679,7 +22705,7 @@ lean_ctor_set(x_80, 1, x_12); x_81 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_81, 0, x_80); lean_ctor_set(x_81, 1, x_14); -x_82 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2; +x_82 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2; x_83 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_83, 0, x_81); lean_ctor_set(x_83, 1, x_82); @@ -22689,21 +22715,21 @@ lean_ctor_set(x_84, 1, x_18); if (x_35 == 0) { lean_object* x_281; -x_281 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_281 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_85 = x_281; goto block_280; } else { lean_object* x_282; -x_282 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_282 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_85 = x_282; goto block_280; } block_280: { lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_86 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5; +x_86 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5; x_87 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_87, 0, x_86); lean_ctor_set(x_87, 1, x_85); @@ -22719,7 +22745,7 @@ lean_ctor_set(x_90, 1, x_12); x_91 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_91, 0, x_90); lean_ctor_set(x_91, 1, x_14); -x_92 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7; +x_92 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7; x_93 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_93, 0, x_91); lean_ctor_set(x_93, 1, x_92); @@ -22729,14 +22755,14 @@ lean_ctor_set(x_94, 1, x_18); if (x_36 == 0) { lean_object* x_278; -x_278 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_278 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_95 = x_278; goto block_277; } else { lean_object* x_279; -x_279 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_279 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_95 = x_279; goto block_277; } @@ -22758,7 +22784,7 @@ lean_ctor_set(x_99, 1, x_12); x_100 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_100, 0, x_99); lean_ctor_set(x_100, 1, x_14); -x_101 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9; +x_101 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9; x_102 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_102, 0, x_100); lean_ctor_set(x_102, 1, x_101); @@ -22768,21 +22794,21 @@ lean_ctor_set(x_103, 1, x_18); if (x_37 == 0) { lean_object* x_275; -x_275 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_275 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_104 = x_275; goto block_274; } else { lean_object* x_276; -x_276 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_276 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_104 = x_276; goto block_274; } block_274: { lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_105 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7; +x_105 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7; x_106 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_106, 0, x_105); lean_ctor_set(x_106, 1, x_104); @@ -22798,7 +22824,7 @@ lean_ctor_set(x_109, 1, x_12); x_110 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_110, 0, x_109); lean_ctor_set(x_110, 1, x_14); -x_111 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11; +x_111 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11; x_112 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_112, 0, x_110); lean_ctor_set(x_112, 1, x_111); @@ -22814,7 +22840,7 @@ lean_ctor_set(x_115, 1, x_12); x_116 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_116, 0, x_115); lean_ctor_set(x_116, 1, x_14); -x_117 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14; +x_117 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14; x_118 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_118, 0, x_116); lean_ctor_set(x_118, 1, x_117); @@ -22824,14 +22850,14 @@ lean_ctor_set(x_119, 1, x_18); if (x_44 == 0) { lean_object* x_272; -x_272 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_272 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_120 = x_272; goto block_271; } else { lean_object* x_273; -x_273 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_273 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_120 = x_273; goto block_271; } @@ -22853,7 +22879,7 @@ lean_ctor_set(x_124, 1, x_12); x_125 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_125, 0, x_124); lean_ctor_set(x_125, 1, x_14); -x_126 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16; +x_126 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16; x_127 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_127, 0, x_125); lean_ctor_set(x_127, 1, x_126); @@ -22863,14 +22889,14 @@ lean_ctor_set(x_128, 1, x_18); if (x_45 == 0) { lean_object* x_269; -x_269 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_269 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_129 = x_269; goto block_268; } else { lean_object* x_270; -x_270 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_270 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_129 = x_270; goto block_268; } @@ -22892,7 +22918,7 @@ lean_ctor_set(x_133, 1, x_12); x_134 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_134, 0, x_133); lean_ctor_set(x_134, 1, x_14); -x_135 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18; +x_135 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18; x_136 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_136, 0, x_134); lean_ctor_set(x_136, 1, x_135); @@ -22902,21 +22928,21 @@ lean_ctor_set(x_137, 1, x_18); if (x_46 == 0) { lean_object* x_266; -x_266 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_266 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_138 = x_266; goto block_265; } else { lean_object* x_267; -x_267 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_267 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_138 = x_267; goto block_265; } block_265: { lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; -x_139 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19; +x_139 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19; x_140 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_140, 0, x_139); lean_ctor_set(x_140, 1, x_138); @@ -22932,7 +22958,7 @@ lean_ctor_set(x_143, 1, x_12); x_144 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_144, 0, x_143); lean_ctor_set(x_144, 1, x_14); -x_145 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17; +x_145 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17; x_146 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_146, 0, x_144); lean_ctor_set(x_146, 1, x_145); @@ -22942,21 +22968,21 @@ lean_ctor_set(x_147, 1, x_18); if (x_47 == 0) { lean_object* x_263; -x_263 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_263 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_148 = x_263; goto block_262; } else { lean_object* x_264; -x_264 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_264 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_148 = x_264; goto block_262; } block_262: { lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_149 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33; +x_149 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33; x_150 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_150, 0, x_149); lean_ctor_set(x_150, 1, x_148); @@ -22972,7 +22998,7 @@ lean_ctor_set(x_153, 1, x_12); x_154 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_154, 0, x_153); lean_ctor_set(x_154, 1, x_14); -x_155 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21; +x_155 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21; x_156 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_156, 0, x_154); lean_ctor_set(x_156, 1, x_155); @@ -22982,14 +23008,14 @@ lean_ctor_set(x_157, 1, x_18); if (x_48 == 0) { lean_object* x_260; -x_260 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_260 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_158 = x_260; goto block_259; } else { lean_object* x_261; -x_261 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_261 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_158 = x_261; goto block_259; } @@ -23011,7 +23037,7 @@ lean_ctor_set(x_162, 1, x_12); x_163 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_163, 0, x_162); lean_ctor_set(x_163, 1, x_14); -x_164 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19; +x_164 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19; x_165 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_165, 0, x_163); lean_ctor_set(x_165, 1, x_164); @@ -23021,14 +23047,14 @@ lean_ctor_set(x_166, 1, x_18); if (x_49 == 0) { lean_object* x_257; -x_257 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_257 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_167 = x_257; goto block_256; } else { lean_object* x_258; -x_258 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_258 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_167 = x_258; goto block_256; } @@ -23050,7 +23076,7 @@ lean_ctor_set(x_171, 1, x_12); x_172 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_172, 0, x_171); lean_ctor_set(x_172, 1, x_14); -x_173 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24; +x_173 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24; x_174 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_174, 0, x_172); lean_ctor_set(x_174, 1, x_173); @@ -23060,21 +23086,21 @@ lean_ctor_set(x_175, 1, x_18); if (x_50 == 0) { lean_object* x_254; -x_254 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_254 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_176 = x_254; goto block_253; } else { lean_object* x_255; -x_255 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_255 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_176 = x_255; goto block_253; } block_253: { lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; -x_177 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25; +x_177 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25; x_178 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_178, 0, x_177); lean_ctor_set(x_178, 1, x_176); @@ -23090,7 +23116,7 @@ lean_ctor_set(x_181, 1, x_12); x_182 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_182, 0, x_181); lean_ctor_set(x_182, 1, x_14); -x_183 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21; +x_183 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21; x_184 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_184, 0, x_182); lean_ctor_set(x_184, 1, x_183); @@ -23100,14 +23126,14 @@ lean_ctor_set(x_185, 1, x_18); if (x_51 == 0) { lean_object* x_251; -x_251 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_251 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_186 = x_251; goto block_250; } else { lean_object* x_252; -x_252 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_252 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_186 = x_252; goto block_250; } @@ -23129,7 +23155,7 @@ lean_ctor_set(x_190, 1, x_12); x_191 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_191, 0, x_190); lean_ctor_set(x_191, 1, x_14); -x_192 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27; +x_192 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27; x_193 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_193, 0, x_191); lean_ctor_set(x_193, 1, x_192); @@ -23139,21 +23165,21 @@ lean_ctor_set(x_194, 1, x_18); if (x_52 == 0) { lean_object* x_248; -x_248 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_248 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_195 = x_248; goto block_247; } else { lean_object* x_249; -x_249 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_249 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_195 = x_249; goto block_247; } block_247: { lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; -x_196 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28; +x_196 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28; x_197 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_197, 0, x_196); lean_ctor_set(x_197, 1, x_195); @@ -23169,7 +23195,7 @@ lean_ctor_set(x_200, 1, x_12); x_201 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_201, 0, x_200); lean_ctor_set(x_201, 1, x_14); -x_202 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30; +x_202 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30; x_203 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_203, 0, x_201); lean_ctor_set(x_203, 1, x_202); @@ -23179,14 +23205,14 @@ lean_ctor_set(x_204, 1, x_18); if (x_53 == 0) { lean_object* x_245; -x_245 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_245 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_205 = x_245; goto block_244; } else { lean_object* x_246; -x_246 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_246 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_205 = x_246; goto block_244; } @@ -23208,7 +23234,7 @@ lean_ctor_set(x_209, 1, x_12); x_210 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_210, 0, x_209); lean_ctor_set(x_210, 1, x_14); -x_211 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32; +x_211 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32; x_212 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_212, 0, x_210); lean_ctor_set(x_212, 1, x_211); @@ -23218,14 +23244,14 @@ lean_ctor_set(x_213, 1, x_18); if (x_54 == 0) { lean_object* x_242; -x_242 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34; +x_242 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34; x_214 = x_242; goto block_241; } else { lean_object* x_243; -x_243 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37; +x_243 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37; x_214 = x_243; goto block_241; } @@ -23247,7 +23273,7 @@ lean_ctor_set(x_218, 1, x_12); x_219 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_219, 0, x_218); lean_ctor_set(x_219, 1, x_14); -x_220 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23; +x_220 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23; x_221 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_221, 0, x_219); lean_ctor_set(x_221, 1, x_220); @@ -23257,19 +23283,19 @@ lean_ctor_set(x_222, 1, x_18); if (x_55 == 0) { lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; -x_223 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26; +x_223 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26; x_224 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_224, 0, x_222); lean_ctor_set(x_224, 1, x_223); -x_225 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; +x_225 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; x_226 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_226, 0, x_225); lean_ctor_set(x_226, 1, x_224); -x_227 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; +x_227 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; x_228 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_228, 0, x_226); lean_ctor_set(x_228, 1, x_227); -x_229 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; +x_229 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; x_230 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_230, 0, x_229); lean_ctor_set(x_230, 1, x_228); @@ -23281,19 +23307,19 @@ return x_231; else { lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; -x_232 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28; +x_232 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28; x_233 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_233, 0, x_222); lean_ctor_set(x_233, 1, x_232); -x_234 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11; +x_234 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11; x_235 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_235, 0, x_234); lean_ctor_set(x_235, 1, x_233); -x_236 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13; +x_236 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13; x_237 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_237, 0, x_235); lean_ctor_set(x_237, 1, x_236); -x_238 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10; +x_238 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10; x_239 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_239, 0, x_238); lean_ctor_set(x_239, 1, x_237); @@ -23321,11 +23347,11 @@ return x_240; } } } -LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302_(x_1, x_2); +x_3 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310_(x_1, x_2); lean_dec(x_2); return x_3; } @@ -23334,7 +23360,7 @@ static lean_object* _init_l_Lean_Meta_instReprConfig__1___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____boxed), 2, 0); return x_1; } } @@ -24436,7 +24462,7 @@ static lean_object* _init_l_Lean_Parser_Tactic_simpAllKind___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4; +x_1 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4; x_2 = lean_alloc_ctor(5, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; @@ -24552,7 +24578,7 @@ static lean_object* _init_l_Lean_Parser_Tactic_dsimpKind___closed__3() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_2 = 0; x_3 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_3, 0, x_1); @@ -26155,7 +26181,7 @@ lean_inc(x_15); x_28 = l_Lean_Syntax_node2(x_15, x_27, x_23, x_26); lean_inc(x_15); x_29 = l_Lean_Syntax_node1(x_15, x_18, x_28); -x_30 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; +x_30 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; lean_inc(x_15); x_31 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_31, 0, x_15); @@ -26394,7 +26420,7 @@ lean_ctor_set(x_129, 0, x_15); lean_ctor_set(x_129, 1, x_127); lean_ctor_set(x_129, 2, x_126); lean_ctor_set(x_129, 3, x_128); -x_130 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; +x_130 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; lean_inc(x_15); x_131 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_131, 0, x_15); @@ -26626,7 +26652,7 @@ lean_inc(x_210); x_224 = l_Lean_Syntax_node2(x_210, x_223, x_219, x_222); lean_inc(x_210); x_225 = l_Lean_Syntax_node1(x_210, x_213, x_224); -x_226 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; +x_226 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; lean_inc(x_210); x_227 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_227, 0, x_210); @@ -26865,7 +26891,7 @@ lean_ctor_set(x_325, 0, x_210); lean_ctor_set(x_325, 1, x_323); lean_ctor_set(x_325, 2, x_322); lean_ctor_set(x_325, 3, x_324); -x_326 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; +x_326 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; lean_inc(x_210); x_327 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_327, 0, x_210); @@ -27114,7 +27140,7 @@ lean_inc(x_408); x_423 = l_Lean_Syntax_node2(x_408, x_422, x_417, x_421); lean_inc(x_408); x_424 = l_Lean_Syntax_node1(x_408, x_411, x_423); -x_425 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; +x_425 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; lean_inc(x_408); x_426 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_426, 0, x_408); @@ -27353,7 +27379,7 @@ lean_ctor_set(x_524, 0, x_408); lean_ctor_set(x_524, 1, x_522); lean_ctor_set(x_524, 2, x_521); lean_ctor_set(x_524, 3, x_523); -x_525 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6; +x_525 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6; lean_inc(x_408); x_526 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_526, 0, x_408); @@ -27563,7 +27589,7 @@ static lean_object* _init_l_Lean_Parser_Tactic___aux__Init__Meta______macroRules _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_2 = l_String_toSubstring_x27(x_1); return x_2; } @@ -27573,7 +27599,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } @@ -27585,7 +27611,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__1; x_2 = l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__2; x_3 = l_Lean_Parser_Tactic_getConfigItems___closed__1; -x_4 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_4 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } @@ -29834,7 +29860,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; x_1 = l_Lean_Parser_Tactic_simpAutoUnfold___closed__15; -x_2 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3; +x_2 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3; x_3 = l_Lean_Parser_Tactic_simpAutoUnfold___closed__17; x_4 = 0; x_5 = lean_alloc_ctor(10, 3, 1); @@ -29863,7 +29889,7 @@ static lean_object* _init_l_Lean_Parser_Tactic_simpAutoUnfold___closed__20() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10; +x_1 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10; x_2 = lean_alloc_ctor(5, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; @@ -29945,26 +29971,26 @@ x_1 = l_Lean_Parser_Tactic_simpAutoUnfold___closed__25; return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; @@ -29983,12 +30009,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -30178,81 +30204,81 @@ x_1 = l_Lean_Parser_Tactic_simpArith___closed__10; return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17; +x_1 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17; x_2 = l_String_toSubstring_x27(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17; +x_2 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__1; x_2 = l_Array_mapMUnsafe_map___at_Lean_expandMacros___spec__1___lambda__1___closed__2; x_3 = l_Lean_Parser_Tactic_getConfigItems___closed__1; -x_4 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17; +x_4 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5; +x_2 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6; +x_2 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; @@ -30271,12 +30297,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -30315,10 +30341,10 @@ x_26 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_15, x_17, x_22, x_24); x_27 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__5; lean_inc(x_6); x_28 = l_Lean_Syntax_node1(x_6, x_27, x_26); -x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4; +x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4; x_30 = l_Lean_addMacroScope(x_8, x_29, x_7); -x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3; -x_32 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7; +x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3; +x_32 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7; lean_inc(x_6); x_33 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_33, 0, x_6); @@ -30486,7 +30512,7 @@ x_1 = l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__10; return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16795_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16803_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; @@ -30505,12 +30531,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -30549,11 +30575,11 @@ x_26 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_15, x_17, x_22, x_24); x_27 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__5; lean_inc(x_6); x_28 = l_Lean_Syntax_node1(x_6, x_27, x_26); -x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; +x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; lean_inc(x_7); lean_inc(x_8); x_30 = l_Lean_addMacroScope(x_8, x_29, x_7); -x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; +x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; lean_inc(x_6); x_32 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_32, 0, x_6); @@ -30568,10 +30594,10 @@ lean_inc(x_6); x_33 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_32, x_17, x_22, x_24); lean_inc(x_6); x_34 = l_Lean_Syntax_node1(x_6, x_27, x_33); -x_35 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4; +x_35 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4; x_36 = l_Lean_addMacroScope(x_8, x_35, x_7); -x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3; -x_38 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7; +x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3; +x_38 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7; lean_inc(x_6); x_39 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_39, 0, x_6); @@ -30694,7 +30720,7 @@ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; x_1 = l_Lean_Parser_Tactic_simpAutoUnfold___closed__14; -x_2 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3; +x_2 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3; x_3 = l_Lean_Parser_Tactic_simpAutoUnfold___closed__17; x_4 = 0; x_5 = lean_alloc_ctor(10, 3, 1); @@ -30781,7 +30807,7 @@ x_1 = l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__13; return x_1; } } -static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1() { +static lean_object* _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1() { _start: { lean_object* x_1; @@ -30789,7 +30815,7 @@ x_1 = lean_mk_string_unchecked("simp_all", 8, 8); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; @@ -30808,12 +30834,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -30855,7 +30881,7 @@ x_33 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tac x_34 = l_Lean_Syntax_setKind(x_1, x_33); x_35 = lean_unsigned_to_nat(0u); x_36 = l_Lean_Syntax_getArg(x_34, x_35); -x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1; +x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1; x_38 = 1; x_39 = l_Lean_mkAtomFrom(x_36, x_37, x_38); lean_dec(x_36); @@ -30989,7 +31015,7 @@ x_1 = l_Lean_Parser_Tactic_simpAllArith___closed__9; return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17417_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17425_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; @@ -31008,12 +31034,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -31052,10 +31078,10 @@ x_26 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_15, x_17, x_22, x_24); x_27 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__5; lean_inc(x_6); x_28 = l_Lean_Syntax_node1(x_6, x_27, x_26); -x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4; +x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4; x_30 = l_Lean_addMacroScope(x_8, x_29, x_7); -x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3; -x_32 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7; +x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3; +x_32 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7; lean_inc(x_6); x_33 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_33, 0, x_6); @@ -31075,7 +31101,7 @@ x_40 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tac x_41 = l_Lean_Syntax_setKind(x_1, x_40); x_42 = lean_unsigned_to_nat(0u); x_43 = l_Lean_Syntax_getArg(x_41, x_42); -x_44 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1; +x_44 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1; x_45 = 1; x_46 = l_Lean_mkAtomFrom(x_43, x_44, x_45); lean_dec(x_43); @@ -31209,7 +31235,7 @@ x_1 = l_Lean_Parser_Tactic_simpAllArithAutoUnfold___closed__9; return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17725_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17733_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; @@ -31228,12 +31254,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -31272,11 +31298,11 @@ x_26 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_15, x_17, x_22, x_24); x_27 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tactic__tacticErw________1___closed__5; lean_inc(x_6); x_28 = l_Lean_Syntax_node1(x_6, x_27, x_26); -x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; +x_29 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; lean_inc(x_7); lean_inc(x_8); x_30 = l_Lean_addMacroScope(x_8, x_29, x_7); -x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; +x_31 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; lean_inc(x_6); x_32 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_32, 0, x_6); @@ -31291,10 +31317,10 @@ lean_inc(x_6); x_33 = l_Lean_Syntax_node5(x_6, x_25, x_10, x_32, x_17, x_22, x_24); lean_inc(x_6); x_34 = l_Lean_Syntax_node1(x_6, x_27, x_33); -x_35 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4; +x_35 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4; x_36 = l_Lean_addMacroScope(x_8, x_35, x_7); -x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3; -x_38 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7; +x_37 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3; +x_38 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7; lean_inc(x_6); x_39 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_39, 0, x_6); @@ -31314,7 +31340,7 @@ x_46 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tac x_47 = l_Lean_Syntax_setKind(x_1, x_46); x_48 = lean_unsigned_to_nat(0u); x_49 = l_Lean_Syntax_getArg(x_47, x_48); -x_50 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1; +x_50 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1; x_51 = 1; x_52 = l_Lean_mkAtomFrom(x_49, x_50, x_51); lean_dec(x_49); @@ -31462,7 +31488,7 @@ x_1 = l_Lean_Parser_Tactic_dsimpAutoUnfold___closed__10; return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_18074_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_18082_(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; @@ -31481,12 +31507,12 @@ lean_inc(x_6); x_10 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_10, 0, x_6); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2; +x_11 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2; lean_inc(x_7); lean_inc(x_8); x_12 = l_Lean_addMacroScope(x_8, x_11, x_7); x_13 = lean_box(0); -x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1; +x_14 = l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1; lean_inc(x_6); x_15 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_15, 0, x_6); @@ -31528,7 +31554,7 @@ x_33 = l_Lean_Parser_Tactic___aux__Init__Meta______macroRules__Lean__Parser__Tac x_34 = l_Lean_Syntax_setKind(x_1, x_33); x_35 = lean_unsigned_to_nat(0u); x_36 = l_Lean_Syntax_getArg(x_34, x_35); -x_37 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18; +x_37 = l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18; x_38 = 1; x_39 = l_Lean_mkAtomFrom(x_36, x_37, x_38); lean_dec(x_36); @@ -31695,122 +31721,122 @@ l_Lean_Name_instRepr___closed__1 = _init_l_Lean_Name_instRepr___closed__1(); lean_mark_persistent(l_Lean_Name_instRepr___closed__1); l_Lean_Name_instRepr = _init_l_Lean_Name_instRepr(); lean_mark_persistent(l_Lean_Name_instRepr); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__1); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__2); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__3); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__4); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__5); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__6); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__7); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__8); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__9); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__10); -l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11(); -lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1___closed__11); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__1); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__2); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__3); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__4); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__5); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__6); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__7); -l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____closed__8); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__1); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__2); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__3); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__4); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__5); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__6); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__7); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__8); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__9); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__10); +l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11 = _init_l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11(); +lean_mark_persistent(l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1___closed__11); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__1); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__2); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__3); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__4); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__5); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__6); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__7); +l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____closed__8); l_Lean_Syntax_instReprPreresolved___closed__1 = _init_l_Lean_Syntax_instReprPreresolved___closed__1(); lean_mark_persistent(l_Lean_Syntax_instReprPreresolved___closed__1); l_Lean_Syntax_instReprPreresolved = _init_l_Lean_Syntax_instReprPreresolved(); lean_mark_persistent(l_Lean_Syntax_instReprPreresolved); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__1); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__2); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__3); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__4); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__5); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__6); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__7); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__8); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__9); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__10); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__11); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__12); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__13); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__14); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__15); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__16); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__17); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__18); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__19); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__20); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__21); -l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170____closed__22); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__1); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__2); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__3); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__4); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__5); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__6); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__7); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__8); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__9); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__10); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__11); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__12); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__13); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__14); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__15); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__16); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__17); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__18); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__19); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__20); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__21); +l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22 = _init_l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178____closed__22); l_Lean_Syntax_instRepr___closed__1 = _init_l_Lean_Syntax_instRepr___closed__1(); lean_mark_persistent(l_Lean_Syntax_instRepr___closed__1); l_Lean_Syntax_instRepr = _init_l_Lean_Syntax_instRepr(); lean_mark_persistent(l_Lean_Syntax_instRepr); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__1); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__2); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__3); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__4); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__5); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__6); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__7); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__8); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__9); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__10); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__11); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__12); -l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg___closed__13); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__1); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__2); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__3); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__4); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__5); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__6); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__7); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__8); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__9); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__10); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__11); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__12); +l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13 = _init_l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg___closed__13); l_Lean_Syntax_instReprTSyntax___closed__1 = _init_l_Lean_Syntax_instReprTSyntax___closed__1(); lean_mark_persistent(l_Lean_Syntax_instReprTSyntax___closed__1); l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSyntaxArray___closed__1 = _init_l_Lean_TSyntax_Compat_instCoeTailArraySyntaxTSyntaxArray___closed__1(); @@ -32115,236 +32141,236 @@ l_Lean_TSyntax_expandInterpolatedStr___closed__4 = _init_l_Lean_TSyntax_expandIn lean_mark_persistent(l_Lean_TSyntax_expandInterpolatedStr___closed__4); l_Lean_TSyntax_expandInterpolatedStr___closed__5 = _init_l_Lean_TSyntax_expandInterpolatedStr___closed__5(); lean_mark_persistent(l_Lean_TSyntax_expandInterpolatedStr___closed__5); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__1); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__2); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__3); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__4); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__5); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__6); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__7); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__8); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__9); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__10); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__11); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__12); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__13); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__14); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__15); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__16); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__17); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__18); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__19); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__20); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__21); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__22); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__23); -l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780____closed__24); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__1); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__2); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__3); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__4); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__5); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__6); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__7); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__8); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__9); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__10); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__11); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__12); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__13); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__14); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__15); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__16); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__17); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__18); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__19); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__20); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__21); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__22); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__23); +l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788____closed__24); l_Lean_Meta_instReprTransparencyMode___closed__1 = _init_l_Lean_Meta_instReprTransparencyMode___closed__1(); lean_mark_persistent(l_Lean_Meta_instReprTransparencyMode___closed__1); l_Lean_Meta_instReprTransparencyMode = _init_l_Lean_Meta_instReprTransparencyMode(); lean_mark_persistent(l_Lean_Meta_instReprTransparencyMode); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__1); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__2); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__3); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__4); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__5); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__6); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__7); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__8); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__9); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__10); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__11); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__12); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__13); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__14); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__15); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__16); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__17); -l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928____closed__18); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__1); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__2); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__3); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__4); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__5); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__6); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__7); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__8); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__9); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__10); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__11); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__12); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__13); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__14); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__15); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__16); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__17); +l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936____closed__18); l_Lean_Meta_instReprEtaStructMode___closed__1 = _init_l_Lean_Meta_instReprEtaStructMode___closed__1(); lean_mark_persistent(l_Lean_Meta_instReprEtaStructMode___closed__1); l_Lean_Meta_instReprEtaStructMode = _init_l_Lean_Meta_instReprEtaStructMode(); lean_mark_persistent(l_Lean_Meta_instReprEtaStructMode); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__1); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__2); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__3); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__4); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__5); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__6); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__7); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__8); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__9); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__10); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__11); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__12); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__13); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__14); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__15); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__16); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__17); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__18); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__19); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__20); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__21); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__22); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__23); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__24); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__25); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__26); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__27); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__28); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__29); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__30); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__31); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__32); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__33); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__34); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__35); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__36); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__37); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__38); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12044____closed__39); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__1); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__2); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__3); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__4); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__5); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__6); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__7); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__8); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__9); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__10); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__11); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__12); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__13); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__14); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__15); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__16); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__17); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__18); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__19); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__20); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__21); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__22); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__23); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__24); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__25); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__26); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__27); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__28); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__29); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__30); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__31); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__32); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__33); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__34); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__35); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__36); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__37); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__38); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12052____closed__39); l_Lean_Meta_instReprConfig___closed__1 = _init_l_Lean_Meta_instReprConfig___closed__1(); lean_mark_persistent(l_Lean_Meta_instReprConfig___closed__1); l_Lean_Meta_instReprConfig = _init_l_Lean_Meta_instReprConfig(); lean_mark_persistent(l_Lean_Meta_instReprConfig); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__1); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__2); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__3); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__4); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__5); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__6); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__7); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__8); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__9); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__10); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__11); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__12); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__13); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__14); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__15); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__16); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__17); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__18); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__19); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__20); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__21); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__22); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__23); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__24); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__25); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__26); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__27); -l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28(); -lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12302____closed__28); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__1); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__2); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__3); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__4); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__5); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__6); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__7); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__8); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__9); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__10); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__11); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__12); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__13); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__14); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__15); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__16); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__17); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__18); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__19); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__20); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__21); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__22); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__23); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__24); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__25); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__26); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__27); +l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28 = _init_l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28(); +lean_mark_persistent(l___private_Init_Meta_0__Lean_Meta_reprConfig____x40_Init_Meta___hyg_12310____closed__28); l_Lean_Meta_instReprConfig__1___closed__1 = _init_l_Lean_Meta_instReprConfig__1___closed__1(); lean_mark_persistent(l_Lean_Meta_instReprConfig__1___closed__1); l_Lean_Meta_instReprConfig__1 = _init_l_Lean_Meta_instReprConfig__1(); @@ -32991,10 +33017,10 @@ l_Lean_Parser_Tactic_simpAutoUnfold___closed__25 = _init_l_Lean_Parser_Tactic_si lean_mark_persistent(l_Lean_Parser_Tactic_simpAutoUnfold___closed__25); l_Lean_Parser_Tactic_simpAutoUnfold = _init_l_Lean_Parser_Tactic_simpAutoUnfold(); lean_mark_persistent(l_Lean_Parser_Tactic_simpAutoUnfold); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__1); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16204____closed__2); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__1); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16212____closed__2); l_Lean_Parser_Tactic_simpArith___closed__1 = _init_l_Lean_Parser_Tactic_simpArith___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_simpArith___closed__1); l_Lean_Parser_Tactic_simpArith___closed__2 = _init_l_Lean_Parser_Tactic_simpArith___closed__2(); @@ -33017,20 +33043,20 @@ l_Lean_Parser_Tactic_simpArith___closed__10 = _init_l_Lean_Parser_Tactic_simpAri lean_mark_persistent(l_Lean_Parser_Tactic_simpArith___closed__10); l_Lean_Parser_Tactic_simpArith = _init_l_Lean_Parser_Tactic_simpArith(); lean_mark_persistent(l_Lean_Parser_Tactic_simpArith); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__1); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__2); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__3); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__4); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__5); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__6); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16477____closed__7); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__1); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__2); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__3); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__4); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__5); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__6); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_16485____closed__7); l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__1 = _init_l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__1); l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__2 = _init_l_Lean_Parser_Tactic_simpArithAutoUnfold___closed__2(); @@ -33081,8 +33107,8 @@ l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__13 = _init_l_Lean_Parser_Tactic lean_mark_persistent(l_Lean_Parser_Tactic_simpAllAutoUnfold___closed__13); l_Lean_Parser_Tactic_simpAllAutoUnfold = _init_l_Lean_Parser_Tactic_simpAllAutoUnfold(); lean_mark_persistent(l_Lean_Parser_Tactic_simpAllAutoUnfold); -l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1(); -lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17154____closed__1); +l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1 = _init_l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1(); +lean_mark_persistent(l_Lean_Parser_Tactic_expandSimp____x40_Init_Meta___hyg_17162____closed__1); l_Lean_Parser_Tactic_simpAllArith___closed__1 = _init_l_Lean_Parser_Tactic_simpAllArith___closed__1(); lean_mark_persistent(l_Lean_Parser_Tactic_simpAllArith___closed__1); l_Lean_Parser_Tactic_simpAllArith___closed__2 = _init_l_Lean_Parser_Tactic_simpAllArith___closed__2(); diff --git a/stage0/stdlib/Lake/Build/Actions.c b/stage0/stdlib/Lake/Build/Actions.c index c028b5802e..fd1c85bf38 100644 --- a/stage0/stdlib/Lake/Build/Actions.c +++ b/stage0/stdlib/Lake/Build/Actions.c @@ -76,7 +76,6 @@ LEAN_EXPORT lean_object* l_Lake_download___boxed(lean_object*, lean_object*, lea lean_object* l_Lake_mkCmdLog(lean_object*); static lean_object* l___private_Lake_Build_Actions_0__Lake_getMacOSXDeploymentEnv___closed__6; LEAN_EXPORT lean_object* l_Lake_compileLeanModule___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357_(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lake_tar___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_compileLeanModule___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lake_LogLevel_ofMessageSeverity(uint8_t); @@ -145,6 +144,7 @@ uint8_t lean_nat_dec_le(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Lake_compileLeanModule___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_compileLeanModule___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550_(lean_object*); LEAN_EXPORT lean_object* l_Lake_compileLeanModule___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lake_compileLeanModule___lambda__2___closed__1; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); @@ -435,7 +435,7 @@ lean_object* x_28; lean_object* x_29; x_28 = lean_ctor_get(x_26, 0); lean_inc(x_28); lean_dec(x_26); -x_29 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357_(x_28); +x_29 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550_(x_28); if (lean_obj_tag(x_29) == 0) { lean_object* x_30; diff --git a/stage0/stdlib/Lake/CLI/Error.c b/stage0/stdlib/Lake/CLI/Error.c index a954b8e628..09734ff7f4 100644 --- a/stage0/stdlib/Lake/CLI/Error.c +++ b/stage0/stdlib/Lake/CLI/Error.c @@ -29,7 +29,6 @@ LEAN_EXPORT lean_object* l_Lake_CliError_toString___lambda__1___boxed(lean_objec static lean_object* l_Lake_CliError_toString___closed__33; static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__58; static lean_object* l_Lake_CliError_toString___closed__27; -lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(lean_object*, lean_object*); static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__81; static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__94; static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__12; @@ -55,6 +54,7 @@ static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_ LEAN_EXPORT lean_object* l_Lake_instReprCliError; static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__49; static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__41; +lean_object* l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(lean_object*, lean_object*); static lean_object* l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__44; static lean_object* l_Lake_CliError_toString___closed__8; lean_object* lean_string_utf8_byte_size(lean_object*); @@ -1842,7 +1842,7 @@ lean_inc(x_239); lean_dec(x_1); x_240 = lean_unsigned_to_nat(1024u); x_241 = lean_nat_dec_le(x_240, x_2); -x_242 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__1(x_239, x_240); +x_242 = l_List_repr_x27___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__1(x_239, x_240); x_243 = l___private_Lake_CLI_Error_0__Lake_reprCliError____x40_Lake_CLI_Error___hyg_323____closed__29; x_244 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_244, 0, x_243); diff --git a/stage0/stdlib/Lake/Config/InstallPath.c b/stage0/stdlib/Lake/Config/InstallPath.c index 0c90716dd1..c4ede87136 100644 --- a/stage0/stdlib/Lake/Config/InstallPath.c +++ b/stage0/stdlib/Lake/Config/InstallPath.c @@ -53,7 +53,6 @@ static lean_object* l_Lake_getLakeInstall_x3f___closed__1; static lean_object* l___private_Lake_Config_InstallPath_0__Lake_reprLakeInstall____x40_Lake_Config_InstallPath___hyg_1106____closed__1; static lean_object* l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__50; LEAN_EXPORT lean_object* l_Lake_instReprLakeInstall; -lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(lean_object*, lean_object*); extern lean_object* l_System_FilePath_exeExtension; LEAN_EXPORT lean_object* l_Lake_LeanInstall_get___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__29; @@ -224,6 +223,7 @@ static lean_object* l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall_ static lean_object* l_Lake_LeanInstall_get_setCc___closed__2; lean_object* l_Lean_Compiler_FFI_getCFlags(lean_object*); static lean_object* l_Lake_initSharedLib___closed__2; +lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_LeanInstall_get_withInternalCc(lean_object*, lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); static lean_object* l_Lake_findLakeInstall_x3f___lambda__1___closed__1; @@ -2321,7 +2321,7 @@ if (x_189 == 0) lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; uint8_t x_354; lean_object* x_355; x_345 = lean_array_to_list(x_187); x_346 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_347 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_345, x_346); +x_347 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_345, x_346); x_348 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_349 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_349, 0, x_348); @@ -2379,7 +2379,7 @@ if (x_192 == 0) lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; uint8_t x_341; lean_object* x_342; x_332 = lean_array_to_list(x_190); x_333 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_334 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_332, x_333); +x_334 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_332, x_333); x_335 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_336 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_336, 0, x_335); @@ -2438,7 +2438,7 @@ if (x_195 == 0) lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; lean_object* x_327; uint8_t x_328; lean_object* x_329; x_319 = lean_array_to_list(x_193); x_320 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_321 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_319, x_320); +x_321 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_319, x_320); x_322 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_323 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_323, 0, x_322); @@ -2496,7 +2496,7 @@ if (x_198 == 0) lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; uint8_t x_315; lean_object* x_316; x_306 = lean_array_to_list(x_196); x_307 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_308 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_306, x_307); +x_308 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_306, x_307); x_309 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_310 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_310, 0, x_309); @@ -2554,7 +2554,7 @@ if (x_201 == 0) lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; uint8_t x_302; lean_object* x_303; x_293 = lean_array_to_list(x_199); x_294 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_295 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_293, x_294); +x_295 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_293, x_294); x_296 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_297 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_297, 0, x_296); @@ -2613,7 +2613,7 @@ if (x_204 == 0) lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; uint8_t x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; x_262 = lean_array_to_list(x_202); x_263 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__48; -x_264 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_262, x_263); +x_264 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_262, x_263); x_265 = l___private_Lake_Config_InstallPath_0__Lake_reprLeanInstall____x40_Lake_Config_InstallPath___hyg_541____closed__52; x_266 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_266, 0, x_265); diff --git a/stage0/stdlib/Lake/Config/LeanConfig.c b/stage0/stdlib/Lake/Config/LeanConfig.c index dd83fdbca8..db9b6f8d2d 100644 --- a/stage0/stdlib/Lake/Config/LeanConfig.c +++ b/stage0/stdlib/Lake/Config/LeanConfig.c @@ -43,7 +43,6 @@ static lean_object* l_Lake_instInhabitedLeanConfig___closed__1; static lean_object* l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__21; LEAN_EXPORT uint8_t l_Lake_instMaxBuildType(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Option_repr___at___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____spec__2___boxed(lean_object*, lean_object*); -lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(lean_object*, lean_object*); static lean_object* l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__29; LEAN_EXPORT lean_object* l_Lake_Backend_orPreferLeft___boxed(lean_object*, lean_object*); static lean_object* l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__1; @@ -204,6 +203,7 @@ LEAN_EXPORT uint8_t l_Lake_instMinBuildType(uint8_t, uint8_t); static lean_object* l___private_Lake_Config_LeanConfig_0__Lake_reprBackend____x40_Lake_Config_LeanConfig___hyg_411____closed__7; static lean_object* l_Lake_BuildType_ofString_x3f___closed__4; static lean_object* l_Lake_instReprBuildType___closed__1; +lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); static lean_object* l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__10; static lean_object* l_Lake_BuildType_leancArgs___closed__7; @@ -3243,7 +3243,7 @@ if (x_25 == 0) lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; uint8_t x_250; lean_object* x_251; x_241 = lean_array_to_list(x_23); x_242 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_243 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_241, x_242); +x_243 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_241, x_242); x_244 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_245 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_245, 0, x_244); @@ -3302,7 +3302,7 @@ if (x_28 == 0) lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; uint8_t x_237; lean_object* x_238; x_228 = lean_array_to_list(x_26); x_229 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_230 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_228, x_229); +x_230 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_228, x_229); x_231 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_232 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_232, 0, x_231); @@ -3360,7 +3360,7 @@ if (x_31 == 0) lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; uint8_t x_224; lean_object* x_225; x_215 = lean_array_to_list(x_29); x_216 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_217 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_215, x_216); +x_217 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_215, x_216); x_218 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_219 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_219, 0, x_218); @@ -3478,7 +3478,7 @@ if (x_37 == 0) lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; uint8_t x_198; lean_object* x_199; x_189 = lean_array_to_list(x_35); x_190 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_191 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_189, x_190); +x_191 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_189, x_190); x_192 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_193 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_193, 0, x_192); @@ -3536,7 +3536,7 @@ if (x_40 == 0) lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; uint8_t x_185; lean_object* x_186; x_176 = lean_array_to_list(x_38); x_177 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_178 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_176, x_177); +x_178 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_176, x_177); x_179 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_180 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_180, 0, x_179); @@ -3594,7 +3594,7 @@ if (x_43 == 0) lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; uint8_t x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; x_121 = lean_array_to_list(x_41); x_122 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__32; -x_123 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_121, x_122); +x_123 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_121, x_122); x_124 = l___private_Lake_Config_LeanConfig_0__Lake_reprLeanConfig____x40_Lake_Config_LeanConfig___hyg_1183____closed__36; x_125 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_125, 0, x_124); diff --git a/stage0/stdlib/Lake/Util/Log.c b/stage0/stdlib/Lake/Util/Log.c index cc17cf0833..e6ddf4914d 100644 --- a/stage0/stdlib/Lake/Util/Log.c +++ b/stage0/stdlib/Lake/Util/Log.c @@ -461,6 +461,7 @@ static lean_object* l___private_Lake_Util_Log_0__Lake_fromJsonLogLevel____x40_La LEAN_EXPORT lean_object* l_Lake_instLEVerbosity; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lake_ELogT_replayLog_x3f___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lake_Ansi_chalk___closed__1; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lake_ELogT_replayLog_x3f___spec__2___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Repr_addAppParen(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_withLogErrorPos___rarg(lean_object*, lean_object*, lean_object*, lean_object*); @@ -581,7 +582,6 @@ uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_LogLevel_ofString_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lake_MonadLog_instOfMonadLift___rarg(lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_Verbosity_toCtorIdx___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lake_ELog_orElse(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lake_MonadLog_instInhabitedOfPure___rarg___boxed(lean_object*, lean_object*); @@ -3412,7 +3412,7 @@ x_12 = lean_ctor_get(x_3, 0); lean_inc(x_12); lean_dec(x_3); x_13 = l___private_Lake_Util_Log_0__Lake_toJsonLogEntry____x40_Lake_Util_Log___hyg_1402____closed__2; -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Main.c b/stage0/stdlib/Lean/Compiler/LCNF/Main.c index c7f2871f94..2b4394be68 100644 --- a/stage0/stdlib/Lean/Compiler/LCNF/Main.c +++ b/stage0/stdlib/Lean/Compiler/LCNF/Main.c @@ -14,13 +14,16 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22; uint8_t lean_is_matcher(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__11; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2___closed__4; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10; static lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___closed__3; lean_object* l_Lean_Compiler_LCNF_toDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_main___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__10; lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -28,22 +31,23 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_Pa static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___closed__4; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Compiler_LCNF_compile___closed__1; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7; lean_object* l_Lean_PersistentArray_toArray___rarg(lean_object*); lean_object* l_Lean_profileitIOUnsafe___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__3; lean_object* l_Lean_ConstantInfo_type(lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15; +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Compiler_LCNF_PassManager_run___spec__3___rarg(lean_object*, lean_object*); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double lean_float_div(double, double); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__3; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Core_wrapAsyncAsSnapshot___spec__3___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_compile___closed__5; -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413_(lean_object*); lean_object* l_Lean_MessageData_ofList(lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -51,7 +55,6 @@ lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___closed__2; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); uint8_t l_Lean_Option_get___at_Lean_Compiler_LCNF_toConfigOptions___spec__2(lean_object*, lean_object*); @@ -64,7 +67,6 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpo LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_casesOnSuffix; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_checkpoint___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -87,7 +89,7 @@ lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Compiler_LCNF_PassManager_run___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* lean_lcnf_compile_decls(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_maxRecDepth; -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_compile(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Compiler_LCNF_LCtx_toLocalContext(lean_object*); LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Compiler_LCNF_main___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -110,7 +112,6 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__3(lea LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__18; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_main___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20; LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Compiler_LCNF_main___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -119,54 +120,56 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_main___lambda__1(lean_object*, lea static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__11; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_main___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__4; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Compiler_LCNF_PassManager_run___spec__3___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___closed__5; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Compiler_LCNF_PassManager_run___spec__9(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2___closed__7; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1; lean_object* l_Lean_Compiler_LCNF_withPhase___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static uint64_t l_Lean_Compiler_LCNF_shouldGenerateCode___closed__2; lean_object* l_Lean_Meta_isTypeFormerType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17; lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__19; lean_object* lean_st_mk_ref(lean_object*, lean_object*); uint8_t l___private_Lean_Compiler_InlineAttrs_0__Lean_Compiler_hasInlineAttrCore(lean_object*, uint8_t, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); lean_object* l_Lean_Name_append(lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__1; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Core_wrapAsyncAsSnapshot___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__3___closed__2; lean_object* lean_io_mono_nanos_now(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__2; static lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__3___closed__1; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10; lean_object* l_Lean_Compiler_LCNF_markRecDecls(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Compiler_LCNF_main___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__2___closed__1; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__17; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_showDecl___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isMatcher___at_Lean_Compiler_LCNF_shouldGenerateCode___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_isExtern(lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__3; extern lean_object* l_Lean_trace_profiler_threshold; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11; +static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_compile___closed__2; @@ -174,15 +177,15 @@ extern lean_object* l_Lean_diagnostics; LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Compiler_LCNF_PassManager_run___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__9; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__7; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__1___closed__1; LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Compiler_LCNF_PassManager_run___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8; lean_object* l_Lean_KVMap_setBool(lean_object*, lean_object*, uint8_t); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__16; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Compiler_LCNF_saveSpecParamInfo___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -191,30 +194,32 @@ double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Compiler_compiler_check; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode_isCompIrrelevant(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8; static lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___lambda__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__6; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12; +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456_(lean_object*); lean_object* l_Lean_Compiler_LCNF_CompilerM_run___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__10; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___closed__1; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__5; +lean_object* l_Lean_ParametricAttribute_getParam_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__4; lean_object* l_Lean_Compiler_LCNF_CompilerM_run___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Option_get___at_Lean_Compiler_LCNF_toConfigOptions___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__8; +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -224,9 +229,10 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassMan static double l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__5; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__2; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5; LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Compiler_LCNF_PassManager_run___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Compiler_LCNF_Decl_check(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_PassManager_run___spec__2___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -235,14 +241,13 @@ lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_obj lean_object* l_Lean_Compiler_LCNF_getDeclInfo_x3f(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_checkpoint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Compiler_LCNF_Decl_size(lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18; static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__3; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__14; lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_Compiler_LCNF_showDecl___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__9; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Compiler_LCNF_PassManager_run___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__8; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__15; @@ -250,6 +255,8 @@ LEAN_EXPORT lean_object* l_Lean_profileitM___at_Lean_Compiler_LCNF_main___spec__ size_t lean_usize_add(size_t, size_t); lean_object* l_Lean_Compiler_LCNF_ppDecl_x27(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_showDecl(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13; +extern lean_object* l_Lean_instInhabitedName; lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); extern lean_object* l_Lean_trace_profiler; @@ -257,6 +264,7 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Compiler_LCNF_main___spe lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Core_wrapAsyncAsSnapshot___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_main___closed__1; +extern lean_object* l_Lean_Compiler_implementedByAttr; static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__1; uint8_t l_Lean_isAuxRecursorWithSuffix(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___closed__3; @@ -274,10 +282,8 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__2(lea lean_object* l_List_mapTR_loop___at_Lean_compileDecl___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_compile___closed__3; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Compiler_LCNF_PassManager_run___spec__3___rarg___boxed(lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); @@ -287,7 +293,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_ch LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_PassManager_run___lambda__2___closed__2; static lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___closed__5; -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__6___lambda__1___closed__13; double lean_float_sub(double, double); LEAN_EXPORT lean_object* l_Lean_Meta_isMatcher___at_Lean_Compiler_LCNF_shouldGenerateCode___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -555,9 +561,50 @@ return x_20; } } } +static lean_object* _init_l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Compiler_implementedByAttr; +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = l_Lean_instInhabitedName; +x_8 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1; +lean_inc(x_1); +lean_inc(x_2); +x_9 = l_Lean_ParametricAttribute_getParam_x3f___rarg(x_7, x_8, x_2, x_1); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__3(x_1, x_2, x_10, x_4, x_5, x_6); +return x_11; +} +else +{ +uint8_t x_12; lean_object* x_13; lean_object* x_14; +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_12 = 0; +x_13 = lean_box(x_12); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_6); +return x_14; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ uint8_t x_7; uint8_t x_8; x_7 = 2; lean_inc(x_1); @@ -567,7 +614,7 @@ if (x_8 == 0) { lean_object* x_9; lean_object* x_10; x_9 = lean_box(0); -x_10 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__3(x_1, x_2, x_9, x_4, x_5, x_6); +x_10 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4(x_1, x_2, x_9, x_4, x_5, x_6); return x_10; } else @@ -586,7 +633,7 @@ return x_13; } } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; @@ -659,7 +706,7 @@ else lean_object* x_25; lean_object* x_26; lean_free_object(x_7); x_25 = lean_box(0); -x_26 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4(x_1, x_2, x_25, x_4, x_5, x_18); +x_26 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(x_1, x_2, x_25, x_4, x_5, x_18); return x_26; } } @@ -693,14 +740,14 @@ else { lean_object* x_34; lean_object* x_35; x_34 = lean_box(0); -x_35 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4(x_1, x_2, x_34, x_4, x_5, x_27); +x_35 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(x_1, x_2, x_34, x_4, x_5, x_27); return x_35; } } } } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; uint8_t x_7; @@ -722,7 +769,7 @@ if (x_11 == 0) lean_object* x_12; lean_object* x_13; lean_free_object(x_6); x_12 = lean_box(0); -x_13 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(x_1, x_10, x_12, x_3, x_4, x_9); +x_13 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(x_1, x_10, x_12, x_3, x_4, x_9); return x_13; } else @@ -756,7 +803,7 @@ if (x_19 == 0) { lean_object* x_20; lean_object* x_21; x_20 = lean_box(0); -x_21 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__5(x_1, x_18, x_20, x_3, x_4, x_17); +x_21 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(x_1, x_18, x_20, x_3, x_4, x_17); return x_21; } else @@ -1018,7 +1065,7 @@ x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); lean_dec(x_13); x_16 = lean_box(0); -x_17 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(x_1, x_16, x_2, x_3, x_15); +x_17 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7(x_1, x_16, x_2, x_3, x_15); return x_17; } else @@ -1138,11 +1185,20 @@ lean_dec(x_3); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_3); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; -x_6 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__6(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__7(x_1, x_2, x_3, x_4, x_5); lean_dec(x_2); return x_6; } @@ -5562,7 +5618,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__1; x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__2; -x_3 = lean_unsigned_to_nat(83u); +x_3 = lean_unsigned_to_nat(84u); x_4 = lean_unsigned_to_nat(52u); x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_PassManager_run___spec__8___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -9473,7 +9529,7 @@ lean_dec(x_1); return x_7; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1() { _start: { lean_object* x_1; @@ -9481,17 +9537,17 @@ x_1 = lean_mk_string_unchecked("init", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__1; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3() { _start: { lean_object* x_1; @@ -9499,27 +9555,27 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4; x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6() { _start: { lean_object* x_1; @@ -9527,17 +9583,17 @@ x_1 = lean_mk_string_unchecked("LCNF", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8() { _start: { lean_object* x_1; @@ -9545,17 +9601,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10() { _start: { lean_object* x_1; @@ -9563,47 +9619,47 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12; x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15() { _start: { lean_object* x_1; @@ -9611,17 +9667,17 @@ x_1 = lean_mk_string_unchecked("Main", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17() { _start: { lean_object* x_1; @@ -9629,27 +9685,27 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17; +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18; -x_2 = lean_unsigned_to_nat(1413u); +x_1 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18; +x_2 = lean_unsigned_to_nat(1456u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20() { _start: { lean_object* x_1; @@ -9657,17 +9713,17 @@ x_1 = lean_mk_string_unchecked("test", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__1; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22() { _start: { lean_object* x_1; @@ -9675,23 +9731,23 @@ x_1 = lean_mk_string_unchecked("jp", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_checkpoint___spec__1___lambda__3___closed__1; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2; x_3 = 1; -x_4 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19; +x_4 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); if (lean_obj_tag(x_5) == 0) { @@ -9699,7 +9755,7 @@ lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = lean_ctor_get(x_5, 1); lean_inc(x_6); lean_dec(x_5); -x_7 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21; +x_7 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21; x_8 = l_Lean_registerTraceClass(x_7, x_3, x_4, x_6); if (lean_obj_tag(x_8) == 0) { @@ -9715,7 +9771,7 @@ lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; x_12 = lean_ctor_get(x_11, 1); lean_inc(x_12); lean_dec(x_11); -x_13 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23; +x_13 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23; x_14 = 0; x_15 = l_Lean_registerTraceClass(x_13, x_14, x_4, x_12); return x_15; @@ -9837,6 +9893,8 @@ if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__2___closed__1 = _init_l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__2___closed__1); +l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1 = _init_l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Compiler_LCNF_shouldGenerateCode___lambda__4___closed__1); l_Lean_Compiler_LCNF_shouldGenerateCode___closed__1 = _init_l_Lean_Compiler_LCNF_shouldGenerateCode___closed__1(); lean_mark_persistent(l_Lean_Compiler_LCNF_shouldGenerateCode___closed__1); l_Lean_Compiler_LCNF_shouldGenerateCode___closed__2 = _init_l_Lean_Compiler_LCNF_shouldGenerateCode___closed__2(); @@ -9989,53 +10047,53 @@ l_Lean_Compiler_LCNF_main___lambda__1___closed__2 = _init_l_Lean_Compiler_LCNF_m lean_mark_persistent(l_Lean_Compiler_LCNF_main___lambda__1___closed__2); l_Lean_Compiler_LCNF_main___closed__1 = _init_l_Lean_Compiler_LCNF_main___closed__1(); lean_mark_persistent(l_Lean_Compiler_LCNF_main___closed__1); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__1); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__2); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__3); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__4); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__5); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__6); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__7); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__8); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__9); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__10); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__11); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__12); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__13); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__14); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__15); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__16); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__17); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__18); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__19); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__20); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__21); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__22); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413____closed__23); -if (builtin) {res = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1413_(lean_io_mk_world()); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__1); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__2); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__3); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__4); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__5); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__6); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__7); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__8); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__9); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__10); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__11); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__12); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__13); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__14); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__15); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__16); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__17); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__18); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__19); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__20); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__21); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__22); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456____closed__23); +if (builtin) {res = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_Main___hyg_1456_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Compiler/LCNF/MonoTypes.c b/stage0/stdlib/Lean/Compiler/LCNF/MonoTypes.c index aa196abc51..649df1970e 100644 --- a/stage0/stdlib/Lean/Compiler/LCNF/MonoTypes.c +++ b/stage0/stdlib/Lean/Compiler/LCNF/MonoTypes.c @@ -20,12 +20,15 @@ static lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Compiler_LCNF_toMonoType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Compiler_LCNF_hasTrivialStructure_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__9; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_monoTypeExt; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__8; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Compiler_LCNF_builtinRuntimeTypes; lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_instInhabitedCoreM___boxed(lean_object*, lean_object*, lean_object*); @@ -35,6 +38,7 @@ lean_object* l_Lean_Expr_sort___override(lean_object*); static lean_object* l_Lean_Compiler_LCNF_hasTrivialStructure_x3f___lambda__2___closed__1; lean_object* lean_array_push(lean_object*, lean_object*); lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Compiler_LCNF_getOtherDeclBaseType___spec__1(lean_object*, lean_object*); lean_object* l_Lean_EnvExtensionInterfaceUnsafe_registerExt___rarg(lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); @@ -49,12 +53,16 @@ static lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__4; static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__7; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__12; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__3; +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660_(lean_object*); static lean_object* l_Lean_Compiler_LCNF_instInhabitedTrivialStructureInfo___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Compiler_LCNF_hasTrivialStructure_x3f___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_string_dec_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__4; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__17; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__15; static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___lambda__1___closed__1; +static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1; lean_object* l_Lean_EnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_getOtherDeclMonoType___closed__2; lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Compiler_LCNF_getOtherDeclBaseType___spec__4(lean_object*, lean_object*, lean_object*); @@ -86,23 +94,21 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_getParamTypes(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_getOtherDeclMonoType___closed__1; lean_object* l_EStateM_pure___rarg(lean_object*, lean_object*); -uint8_t l_Lean_Compiler_LCNF_isTypeFormerType(lean_object*); extern lean_object* l_Lean_levelZero; extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_getParamTypes_go(lean_object*, lean_object*); -uint8_t lean_name_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_hasTrivialStructure_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__13; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Compiler_LCNF_getOtherDeclBaseType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__11; static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__2; -uint8_t l_Lean_Expr_isErased(lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__18; static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__15; -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Compiler_LCNF_hasTrivialStructure_x3f___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__5; LEAN_EXPORT lean_object* l_Subarray_forInUnsafe_loop___at_Lean_Compiler_LCNF_getRelevantCtorFields___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -126,6 +132,7 @@ static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LC static lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__5; static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__12; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__14; lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -139,15 +146,15 @@ lean_object* l_Array_ofSubarray___rarg(lean_object*); lean_object* l_Lean_getConstInfo___at___private_Lean_Compiler_LCNF_Util_0__Lean_Compiler_LCNF_getCasesOnInductiveVal_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Compiler_LCNF_getRelevantCtorFields___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633_(lean_object*); +extern lean_object* l_Lean_Compiler_LCNF_anyExpr; lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; lean_object* l_Lean_Expr_headBeta(lean_object*); lean_object* lean_array_get_size(lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -163,7 +170,6 @@ static lean_object* l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__1; static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__19; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_hasTrivialStructure_x3f___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Compiler_LCNF_MonoTypes_0__Lean_Compiler_LCNF_reprTrivialStructureInfo____x40_Lean_Compiler_LCNF_MonoTypes___hyg_253____closed__13; -static lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1; static lean_object* _init_l_panic___at_Lean_Compiler_LCNF_getRelevantCtorFields___spec__1___closed__1() { _start: { @@ -1880,13 +1886,21 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__1; x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__1; -x_3 = lean_unsigned_to_nat(97u); +x_3 = lean_unsigned_to_nat(99u); x_4 = lean_unsigned_to_nat(50u); x_5 = l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("lcErased", 8, 8); +return x_1; +} +} LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -1915,66 +1929,109 @@ lean_inc(x_32); x_33 = l_Lean_Expr_headBeta(x_32); if (lean_obj_tag(x_33) == 7) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_49; +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; x_34 = lean_ctor_get(x_33, 1); lean_inc(x_34); x_35 = lean_ctor_get(x_33, 2); lean_inc(x_35); lean_dec(x_33); x_36 = l_Lean_Expr_headBeta(x_12); -x_49 = l_Lean_Expr_isErased(x_36); -if (x_49 == 0) +switch (lean_obj_tag(x_34)) { +case 3: { -uint8_t x_50; -x_50 = l_Lean_Expr_isErased(x_34); -if (x_50 == 0) +lean_object* x_49; +lean_dec(x_34); +x_49 = lean_box(0); +x_37 = x_49; +goto block_48; +} +case 4: { -if (lean_obj_tag(x_34) == 3) +lean_object* x_50; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +if (lean_obj_tag(x_50) == 1) { lean_object* x_51; -lean_dec(x_34); -x_51 = lean_box(0); -x_37 = x_51; -goto block_48; -} -else +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -lean_dec(x_34); -x_52 = l_Lean_Compiler_LCNF_erasedExpr; -x_53 = l_Lean_Expr_app___override(x_31, x_52); -x_54 = lean_box(0); -x_55 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_53, x_32, x_54, x_7, x_8, x_9); +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Compiler_LCNF_erasedExpr; +x_56 = l_Lean_Expr_app___override(x_31, x_55); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_56, x_32, x_57, x_7, x_8, x_9); lean_dec(x_32); lean_dec(x_36); lean_dec(x_35); -x_13 = x_55; +x_13 = x_58; goto block_30; } -} else { -lean_object* x_56; -lean_dec(x_34); -x_56 = lean_box(0); -x_37 = x_56; +lean_object* x_59; +x_59 = lean_box(0); +x_37 = x_59; goto block_48; } } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_34); -lean_inc(x_36); -x_57 = l_Lean_Expr_app___override(x_31, x_36); -x_58 = lean_box(0); -x_59 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_57, x_32, x_58, x_7, x_8, x_9); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_51); +lean_dec(x_50); +x_60 = l_Lean_Compiler_LCNF_erasedExpr; +x_61 = l_Lean_Expr_app___override(x_31, x_60); +x_62 = lean_box(0); +x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_61, x_32, x_62, x_7, x_8, x_9); lean_dec(x_32); lean_dec(x_36); lean_dec(x_35); -x_13 = x_59; +x_13 = x_63; goto block_30; } +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_50); +x_64 = l_Lean_Compiler_LCNF_erasedExpr; +x_65 = l_Lean_Expr_app___override(x_31, x_64); +x_66 = lean_box(0); +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_65, x_32, x_66, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_67; +goto block_30; +} +} +default: +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_34); +x_68 = l_Lean_Compiler_LCNF_erasedExpr; +x_69 = l_Lean_Expr_app___override(x_31, x_68); +x_70 = lean_box(0); +x_71 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_69, x_32, x_70, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_71; +goto block_30; +} +} block_48: { lean_object* x_38; @@ -2032,72 +2089,72 @@ goto block_30; } else { -lean_object* x_60; lean_object* x_61; +lean_object* x_72; lean_object* x_73; lean_dec(x_33); lean_dec(x_12); -x_60 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; lean_inc(x_8); lean_inc(x_7); -x_61 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_60, x_7, x_8, x_9); -if (lean_obj_tag(x_61) == 0) +x_73 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_72, x_7, x_8, x_9); +if (lean_obj_tag(x_73) == 0) { -uint8_t x_62; -x_62 = !lean_is_exclusive(x_61); -if (x_62 == 0) +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_61, 0); -lean_dec(x_63); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_31); -lean_ctor_set(x_64, 1, x_32); -x_65 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_61, 0, x_65); -x_13 = x_61; +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_73, 0); +lean_dec(x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_31); +lean_ctor_set(x_76, 1, x_32); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_73, 0, x_77); +x_13 = x_73; goto block_30; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_66 = lean_ctor_get(x_61, 1); -lean_inc(x_66); -lean_dec(x_61); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_31); -lean_ctor_set(x_67, 1, x_32); -x_68 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_68, 0, x_67); -x_69 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_69, 0, x_68); -lean_ctor_set(x_69, 1, x_66); -x_13 = x_69; +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); +lean_dec(x_73); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_31); +lean_ctor_set(x_79, 1, x_32); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_78); +x_13 = x_81; goto block_30; } } else { -uint8_t x_70; +uint8_t x_82; lean_dec(x_32); lean_dec(x_31); -x_70 = !lean_is_exclusive(x_61); -if (x_70 == 0) +x_82 = !lean_is_exclusive(x_73); +if (x_82 == 0) { -x_13 = x_61; +x_13 = x_73; goto block_30; } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_61, 0); -x_72 = lean_ctor_get(x_61, 1); -lean_inc(x_72); -lean_inc(x_71); -lean_dec(x_61); -x_73 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -x_13 = x_73; +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_73, 0); +x_84 = lean_ctor_get(x_73, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_73); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_13 = x_85; goto block_30; } } @@ -2186,14 +2243,1436 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_8; +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_5, x_4); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_6); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_12 = lean_array_uget(x_3, x_5); +x_31 = lean_ctor_get(x_6, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_6, 1); +lean_inc(x_32); +lean_dec(x_6); +lean_inc(x_32); +x_33 = l_Lean_Expr_headBeta(x_32); +if (lean_obj_tag(x_33) == 7) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 2); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l_Lean_Expr_headBeta(x_12); +switch (lean_obj_tag(x_34)) { +case 3: +{ +lean_object* x_49; +lean_dec(x_34); +x_49 = lean_box(0); +x_37 = x_49; +goto block_48; +} +case 4: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +if (lean_obj_tag(x_50) == 1) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Compiler_LCNF_erasedExpr; +x_56 = l_Lean_Expr_app___override(x_31, x_55); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_56, x_32, x_57, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_58; +goto block_30; +} +else +{ +lean_object* x_59; +x_59 = lean_box(0); +x_37 = x_59; +goto block_48; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_51); +lean_dec(x_50); +x_60 = l_Lean_Compiler_LCNF_erasedExpr; +x_61 = l_Lean_Expr_app___override(x_31, x_60); +x_62 = lean_box(0); +x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_61, x_32, x_62, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_63; +goto block_30; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_50); +x_64 = l_Lean_Compiler_LCNF_erasedExpr; +x_65 = l_Lean_Expr_app___override(x_31, x_64); +x_66 = lean_box(0); +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_65, x_32, x_66, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_67; +goto block_30; +} +} +default: +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_34); +x_68 = l_Lean_Compiler_LCNF_erasedExpr; +x_69 = l_Lean_Expr_app___override(x_31, x_68); +x_70 = lean_box(0); +x_71 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_69, x_32, x_70, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_71; +goto block_30; +} +} +block_48: +{ +lean_object* x_38; +lean_dec(x_37); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_36); +x_38 = l_Lean_Compiler_LCNF_toMonoType(x_36, x_7, x_8, x_9); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Expr_app___override(x_31, x_39); +x_42 = lean_box(0); +x_43 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_41, x_32, x_42, x_7, x_8, x_40); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_43; +goto block_30; +} +else +{ +uint8_t x_44; +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +x_44 = !lean_is_exclusive(x_38); +if (x_44 == 0) +{ +x_13 = x_38; +goto block_30; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_38, 0); +x_46 = lean_ctor_get(x_38, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_38); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_13 = x_47; +goto block_30; +} +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_33); +lean_dec(x_12); +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; +lean_inc(x_8); +lean_inc(x_7); +x_73 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_72, x_7, x_8, x_9); +if (lean_obj_tag(x_73) == 0) +{ +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_73, 0); +lean_dec(x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_31); +lean_ctor_set(x_76, 1, x_32); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_73, 0, x_77); +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); +lean_dec(x_73); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_31); +lean_ctor_set(x_79, 1, x_32); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_78); +x_13 = x_81; +goto block_30; +} +} +else +{ +uint8_t x_82; +lean_dec(x_32); +lean_dec(x_31); +x_82 = !lean_is_exclusive(x_73); +if (x_82 == 0) +{ +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_73, 0); +x_84 = lean_ctor_get(x_73, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_73); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_13 = x_85; +goto block_30; +} +} +} +block_30: +{ +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +lean_dec(x_8); +lean_dec(x_7); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_14, 0); +lean_inc(x_17); +lean_dec(x_14); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = lean_ctor_get(x_14, 0); +lean_inc(x_19); +lean_dec(x_14); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +else +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_dec(x_13); +x_22 = lean_ctor_get(x_14, 0); +lean_inc(x_22); +lean_dec(x_14); +x_23 = 1; +x_24 = lean_usize_add(x_5, x_23); +x_5 = x_24; +x_6 = x_22; +x_9 = x_21; +goto _start; +} +} +else +{ +uint8_t x_26; +lean_dec(x_8); +lean_dec(x_7); +x_26 = !lean_is_exclusive(x_13); +if (x_26 == 0) +{ +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 0); +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_5, x_4); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_6); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_12 = lean_array_uget(x_3, x_5); +x_31 = lean_ctor_get(x_6, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_6, 1); +lean_inc(x_32); +lean_dec(x_6); +lean_inc(x_32); +x_33 = l_Lean_Expr_headBeta(x_32); +if (lean_obj_tag(x_33) == 7) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 2); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l_Lean_Expr_headBeta(x_12); +switch (lean_obj_tag(x_34)) { +case 3: +{ +lean_object* x_49; +lean_dec(x_34); +x_49 = lean_box(0); +x_37 = x_49; +goto block_48; +} +case 4: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +if (lean_obj_tag(x_50) == 1) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Compiler_LCNF_erasedExpr; +x_56 = l_Lean_Expr_app___override(x_31, x_55); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_56, x_32, x_57, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_58; +goto block_30; +} +else +{ +lean_object* x_59; +x_59 = lean_box(0); +x_37 = x_59; +goto block_48; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_51); +lean_dec(x_50); +x_60 = l_Lean_Compiler_LCNF_erasedExpr; +x_61 = l_Lean_Expr_app___override(x_31, x_60); +x_62 = lean_box(0); +x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_61, x_32, x_62, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_63; +goto block_30; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_50); +x_64 = l_Lean_Compiler_LCNF_erasedExpr; +x_65 = l_Lean_Expr_app___override(x_31, x_64); +x_66 = lean_box(0); +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_65, x_32, x_66, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_67; +goto block_30; +} +} +default: +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_34); +x_68 = l_Lean_Compiler_LCNF_erasedExpr; +x_69 = l_Lean_Expr_app___override(x_31, x_68); +x_70 = lean_box(0); +x_71 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_69, x_32, x_70, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_71; +goto block_30; +} +} +block_48: +{ +lean_object* x_38; +lean_dec(x_37); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_36); +x_38 = l_Lean_Compiler_LCNF_toMonoType(x_36, x_7, x_8, x_9); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Expr_app___override(x_31, x_39); +x_42 = lean_box(0); +x_43 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_41, x_32, x_42, x_7, x_8, x_40); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_43; +goto block_30; +} +else +{ +uint8_t x_44; +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +x_44 = !lean_is_exclusive(x_38); +if (x_44 == 0) +{ +x_13 = x_38; +goto block_30; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_38, 0); +x_46 = lean_ctor_get(x_38, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_38); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_13 = x_47; +goto block_30; +} +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_33); +lean_dec(x_12); +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; +lean_inc(x_8); +lean_inc(x_7); +x_73 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_72, x_7, x_8, x_9); +if (lean_obj_tag(x_73) == 0) +{ +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_73, 0); +lean_dec(x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_31); +lean_ctor_set(x_76, 1, x_32); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_73, 0, x_77); +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); +lean_dec(x_73); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_31); +lean_ctor_set(x_79, 1, x_32); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_78); +x_13 = x_81; +goto block_30; +} +} +else +{ +uint8_t x_82; +lean_dec(x_32); +lean_dec(x_31); +x_82 = !lean_is_exclusive(x_73); +if (x_82 == 0) +{ +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_73, 0); +x_84 = lean_ctor_get(x_73, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_73); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_13 = x_85; +goto block_30; +} +} +} +block_30: +{ +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +lean_dec(x_8); +lean_dec(x_7); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_14, 0); +lean_inc(x_17); +lean_dec(x_14); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = lean_ctor_get(x_14, 0); +lean_inc(x_19); +lean_dec(x_14); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +else +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_dec(x_13); +x_22 = lean_ctor_get(x_14, 0); +lean_inc(x_22); +lean_dec(x_14); +x_23 = 1; +x_24 = lean_usize_add(x_5, x_23); +x_5 = x_24; +x_6 = x_22; +x_9 = x_21; +goto _start; +} +} +else +{ +uint8_t x_26; +lean_dec(x_8); +lean_dec(x_7); +x_26 = !lean_is_exclusive(x_13); +if (x_26 == 0) +{ +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 0); +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_5, x_4); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_6); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_12 = lean_array_uget(x_3, x_5); +x_31 = lean_ctor_get(x_6, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_6, 1); +lean_inc(x_32); +lean_dec(x_6); +lean_inc(x_32); +x_33 = l_Lean_Expr_headBeta(x_32); +if (lean_obj_tag(x_33) == 7) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 2); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l_Lean_Expr_headBeta(x_12); +switch (lean_obj_tag(x_34)) { +case 3: +{ +lean_object* x_49; +lean_dec(x_34); +x_49 = lean_box(0); +x_37 = x_49; +goto block_48; +} +case 4: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +if (lean_obj_tag(x_50) == 1) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Compiler_LCNF_erasedExpr; +x_56 = l_Lean_Expr_app___override(x_31, x_55); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_56, x_32, x_57, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_58; +goto block_30; +} +else +{ +lean_object* x_59; +x_59 = lean_box(0); +x_37 = x_59; +goto block_48; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_51); +lean_dec(x_50); +x_60 = l_Lean_Compiler_LCNF_erasedExpr; +x_61 = l_Lean_Expr_app___override(x_31, x_60); +x_62 = lean_box(0); +x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_61, x_32, x_62, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_63; +goto block_30; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_50); +x_64 = l_Lean_Compiler_LCNF_erasedExpr; +x_65 = l_Lean_Expr_app___override(x_31, x_64); +x_66 = lean_box(0); +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_65, x_32, x_66, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_67; +goto block_30; +} +} +default: +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_34); +x_68 = l_Lean_Compiler_LCNF_erasedExpr; +x_69 = l_Lean_Expr_app___override(x_31, x_68); +x_70 = lean_box(0); +x_71 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_69, x_32, x_70, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_71; +goto block_30; +} +} +block_48: +{ +lean_object* x_38; +lean_dec(x_37); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_36); +x_38 = l_Lean_Compiler_LCNF_toMonoType(x_36, x_7, x_8, x_9); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Expr_app___override(x_31, x_39); +x_42 = lean_box(0); +x_43 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_41, x_32, x_42, x_7, x_8, x_40); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_43; +goto block_30; +} +else +{ +uint8_t x_44; +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +x_44 = !lean_is_exclusive(x_38); +if (x_44 == 0) +{ +x_13 = x_38; +goto block_30; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_38, 0); +x_46 = lean_ctor_get(x_38, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_38); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_13 = x_47; +goto block_30; +} +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_33); +lean_dec(x_12); +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; +lean_inc(x_8); +lean_inc(x_7); +x_73 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_72, x_7, x_8, x_9); +if (lean_obj_tag(x_73) == 0) +{ +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_73, 0); +lean_dec(x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_31); +lean_ctor_set(x_76, 1, x_32); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_73, 0, x_77); +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); +lean_dec(x_73); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_31); +lean_ctor_set(x_79, 1, x_32); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_78); +x_13 = x_81; +goto block_30; +} +} +else +{ +uint8_t x_82; +lean_dec(x_32); +lean_dec(x_31); +x_82 = !lean_is_exclusive(x_73); +if (x_82 == 0) +{ +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_73, 0); +x_84 = lean_ctor_get(x_73, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_73); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_13 = x_85; +goto block_30; +} +} +} +block_30: +{ +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +lean_dec(x_8); +lean_dec(x_7); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_14, 0); +lean_inc(x_17); +lean_dec(x_14); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = lean_ctor_get(x_14, 0); +lean_inc(x_19); +lean_dec(x_14); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +else +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_dec(x_13); +x_22 = lean_ctor_get(x_14, 0); +lean_inc(x_22); +lean_dec(x_14); +x_23 = 1; +x_24 = lean_usize_add(x_5, x_23); +x_5 = x_24; +x_6 = x_22; +x_9 = x_21; +goto _start; +} +} +else +{ +uint8_t x_26; +lean_dec(x_8); +lean_dec(x_7); +x_26 = !lean_is_exclusive(x_13); +if (x_26 == 0) +{ +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 0); +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_5, x_4); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_6); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_12 = lean_array_uget(x_3, x_5); +x_31 = lean_ctor_get(x_6, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_6, 1); +lean_inc(x_32); +lean_dec(x_6); +lean_inc(x_32); +x_33 = l_Lean_Expr_headBeta(x_32); +if (lean_obj_tag(x_33) == 7) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 2); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l_Lean_Expr_headBeta(x_12); +switch (lean_obj_tag(x_34)) { +case 3: +{ +lean_object* x_49; +lean_dec(x_34); +x_49 = lean_box(0); +x_37 = x_49; +goto block_48; +} +case 4: +{ +lean_object* x_50; +x_50 = lean_ctor_get(x_34, 0); +lean_inc(x_50); +lean_dec(x_34); +if (lean_obj_tag(x_50) == 1) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_54 = lean_string_dec_eq(x_52, x_53); +lean_dec(x_52); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_55 = l_Lean_Compiler_LCNF_erasedExpr; +x_56 = l_Lean_Expr_app___override(x_31, x_55); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_56, x_32, x_57, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_58; +goto block_30; +} +else +{ +lean_object* x_59; +x_59 = lean_box(0); +x_37 = x_59; +goto block_48; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_51); +lean_dec(x_50); +x_60 = l_Lean_Compiler_LCNF_erasedExpr; +x_61 = l_Lean_Expr_app___override(x_31, x_60); +x_62 = lean_box(0); +x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_61, x_32, x_62, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_63; +goto block_30; +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_50); +x_64 = l_Lean_Compiler_LCNF_erasedExpr; +x_65 = l_Lean_Expr_app___override(x_31, x_64); +x_66 = lean_box(0); +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_65, x_32, x_66, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_67; +goto block_30; +} +} +default: +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_34); +x_68 = l_Lean_Compiler_LCNF_erasedExpr; +x_69 = l_Lean_Expr_app___override(x_31, x_68); +x_70 = lean_box(0); +x_71 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_69, x_32, x_70, x_7, x_8, x_9); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_71; +goto block_30; +} +} +block_48: +{ +lean_object* x_38; +lean_dec(x_37); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_36); +x_38 = l_Lean_Compiler_LCNF_toMonoType(x_36, x_7, x_8, x_9); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Expr_app___override(x_31, x_39); +x_42 = lean_box(0); +x_43 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1(x_35, x_36, x_41, x_32, x_42, x_7, x_8, x_40); +lean_dec(x_32); +lean_dec(x_36); +lean_dec(x_35); +x_13 = x_43; +goto block_30; +} +else +{ +uint8_t x_44; +lean_dec(x_36); +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_31); +x_44 = !lean_is_exclusive(x_38); +if (x_44 == 0) +{ +x_13 = x_38; +goto block_30; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_38, 0); +x_46 = lean_ctor_get(x_38, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_38); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_13 = x_47; +goto block_30; +} +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_33); +lean_dec(x_12); +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2; +lean_inc(x_8); +lean_inc(x_7); +x_73 = l_panic___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__1(x_72, x_7, x_8, x_9); +if (lean_obj_tag(x_73) == 0) +{ +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_73, 0); +lean_dec(x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_31); +lean_ctor_set(x_76, 1, x_32); +x_77 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_73, 0, x_77); +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); +lean_dec(x_73); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_31); +lean_ctor_set(x_79, 1, x_32); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_78); +x_13 = x_81; +goto block_30; +} +} +else +{ +uint8_t x_82; +lean_dec(x_32); +lean_dec(x_31); +x_82 = !lean_is_exclusive(x_73); +if (x_82 == 0) +{ +x_13 = x_73; +goto block_30; +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_73, 0); +x_84 = lean_ctor_get(x_73, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_73); +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_13 = x_85; +goto block_30; +} +} +} +block_30: +{ +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +lean_dec(x_8); +lean_dec(x_7); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_14, 0); +lean_inc(x_17); +lean_dec(x_14); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = lean_ctor_get(x_14, 0); +lean_inc(x_19); +lean_dec(x_14); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +else +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_dec(x_13); +x_22 = lean_ctor_get(x_14, 0); +lean_inc(x_22); +lean_dec(x_14); +x_23 = 1; +x_24 = lean_usize_add(x_5, x_23); +x_5 = x_24; +x_6 = x_22; +x_9 = x_21; +goto _start; +} +} +else +{ +uint8_t x_26; +lean_dec(x_8); +lean_dec(x_7); +x_26 = !lean_is_exclusive(x_13); +if (x_26 == 0) +{ +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 0); +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("lcAny", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Decidable", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Bool", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__4; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +if (lean_obj_tag(x_1) == 4) +{ +lean_object* x_6; +x_6 = lean_ctor_get(x_1, 0); lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_1); -x_8 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_1, x_5, x_6, x_7); +switch (lean_obj_tag(x_6)) { +case 0: +{ +lean_object* x_7; lean_object* x_8; +x_7 = lean_ctor_get(x_1, 1); +lean_inc(x_7); +lean_dec(x_1); +lean_inc(x_4); +lean_inc(x_3); +x_8 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_6, x_3, x_4, x_5); if (lean_obj_tag(x_8) == 0) { lean_object* x_9; @@ -2206,11 +3685,10 @@ x_10 = lean_ctor_get(x_8, 1); lean_inc(x_10); lean_dec(x_8); x_11 = lean_box(0); -lean_inc(x_1); -x_12 = l_Lean_Expr_const___override(x_1, x_11); -lean_inc(x_6); -lean_inc(x_5); -x_13 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_1, x_2, x_5, x_6, x_10); +x_12 = l_Lean_Expr_const___override(x_6, x_11); +lean_inc(x_4); +lean_inc(x_3); +x_13 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_6, x_7, x_3, x_4, x_10); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; size_t x_18; size_t x_19; lean_object* x_20; @@ -2223,10 +3701,10 @@ x_16 = lean_box(0); x_17 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_17, 0, x_12); lean_ctor_set(x_17, 1, x_14); -x_18 = lean_array_size(x_3); +x_18 = lean_array_size(x_2); x_19 = 0; -x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2(x_3, x_16, x_3, x_18, x_19, x_17, x_5, x_6, x_15); -lean_dec(x_3); +x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2(x_2, x_16, x_2, x_18, x_19, x_17, x_3, x_4, x_15); +lean_dec(x_2); if (lean_obj_tag(x_20) == 0) { uint8_t x_21; @@ -2285,9 +3763,9 @@ else { uint8_t x_32; lean_dec(x_12); -lean_dec(x_6); -lean_dec(x_5); +lean_dec(x_4); lean_dec(x_3); +lean_dec(x_2); x_32 = !lean_is_exclusive(x_13); if (x_32 == 0) { @@ -2311,8 +3789,7 @@ return x_35; else { lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_dec(x_2); -lean_dec(x_1); +lean_dec(x_7); x_36 = lean_ctor_get(x_8, 1); lean_inc(x_36); lean_dec(x_8); @@ -2322,9 +3799,9 @@ lean_dec(x_9); x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); x_39 = lean_box(0); -lean_inc(x_6); -lean_inc(x_5); -x_40 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_38, x_39, x_5, x_6, x_36); +lean_inc(x_4); +lean_inc(x_3); +x_40 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_38, x_39, x_3, x_4, x_36); if (lean_obj_tag(x_40) == 0) { lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; @@ -2336,10 +3813,10 @@ lean_dec(x_40); x_43 = lean_ctor_get(x_37, 1); lean_inc(x_43); x_44 = lean_unsigned_to_nat(0u); -x_45 = l_Array_toSubarray___rarg(x_3, x_44, x_43); +x_45 = l_Array_toSubarray___rarg(x_2, x_44, x_43); x_46 = l_Array_ofSubarray___rarg(x_45); lean_dec(x_45); -x_47 = l_Lean_Compiler_LCNF_instantiateForall_go(x_46, x_44, x_41, x_5, x_6, x_42); +x_47 = l_Lean_Compiler_LCNF_instantiateForall_go(x_46, x_44, x_41, x_3, x_4, x_42); lean_dec(x_46); if (lean_obj_tag(x_47) == 0) { @@ -2363,7 +3840,7 @@ lean_dec(x_51); lean_dec(x_50); x_54 = l_Lean_instInhabitedExpr; x_55 = l_outOfBounds___rarg(x_54); -x_56 = l_Lean_Compiler_LCNF_toMonoType(x_55, x_5, x_6, x_49); +x_56 = l_Lean_Compiler_LCNF_toMonoType(x_55, x_3, x_4, x_49); return x_56; } else @@ -2372,7 +3849,7 @@ lean_object* x_57; lean_object* x_58; x_57 = lean_array_fget(x_50, x_51); lean_dec(x_51); lean_dec(x_50); -x_58 = l_Lean_Compiler_LCNF_toMonoType(x_57, x_5, x_6, x_49); +x_58 = l_Lean_Compiler_LCNF_toMonoType(x_57, x_3, x_4, x_49); return x_58; } } @@ -2380,8 +3857,8 @@ else { uint8_t x_59; lean_dec(x_37); -lean_dec(x_6); -lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); x_59 = !lean_is_exclusive(x_47); if (x_59 == 0) { @@ -2406,9 +3883,9 @@ else { uint8_t x_63; lean_dec(x_37); -lean_dec(x_6); -lean_dec(x_5); +lean_dec(x_4); lean_dec(x_3); +lean_dec(x_2); x_63 = !lean_is_exclusive(x_40); if (x_63 == 0) { @@ -2433,11 +3910,10 @@ return x_66; else { uint8_t x_67; -lean_dec(x_6); -lean_dec(x_5); +lean_dec(x_7); +lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -lean_dec(x_1); x_67 = !lean_is_exclusive(x_8); if (x_67 == 0) { @@ -2458,100 +3934,1191 @@ return x_70; } } } -} -static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1() { -_start: +case 1: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Decidable", 9, 9); -return x_1; -} -} -static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2() { -_start: +lean_object* x_71; +x_71 = lean_ctor_get(x_6, 0); +lean_inc(x_71); +switch (lean_obj_tag(x_71)) { +case 0: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Bool", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__4; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -if (lean_obj_tag(x_1) == 4) -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_6 = lean_ctor_get(x_1, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); +lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_72 = lean_ctor_get(x_1, 1); +lean_inc(x_72); lean_dec(x_1); -x_8 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2; -x_9 = lean_name_eq(x_6, x_8); -if (x_9 == 0) +x_73 = lean_ctor_get(x_6, 1); +lean_inc(x_73); +x_74 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_75 = lean_string_dec_eq(x_73, x_74); +if (x_75 == 0) { -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(0); -x_11 = l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1(x_6, x_7, x_2, x_10, x_3, x_4, x_5); -return x_11; +lean_object* x_76; uint8_t x_77; +x_76 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1; +x_77 = lean_string_dec_eq(x_73, x_76); +if (x_77 == 0) +{ +lean_object* x_78; uint8_t x_79; +x_78 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2; +x_79 = lean_string_dec_eq(x_73, x_78); +lean_dec(x_73); +if (x_79 == 0) +{ +lean_object* x_80; +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_6); +x_80 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_6, x_3, x_4, x_5); +if (lean_obj_tag(x_80) == 0) +{ +lean_object* x_81; +x_81 = lean_ctor_get(x_80, 0); +lean_inc(x_81); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_82 = lean_ctor_get(x_80, 1); +lean_inc(x_82); +lean_dec(x_80); +x_83 = lean_box(0); +lean_inc(x_6); +x_84 = l_Lean_Expr_const___override(x_6, x_83); +lean_inc(x_4); +lean_inc(x_3); +x_85 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_6, x_72, x_3, x_4, x_82); +if (lean_obj_tag(x_85) == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; size_t x_90; size_t x_91; lean_object* x_92; +x_86 = lean_ctor_get(x_85, 0); +lean_inc(x_86); +x_87 = lean_ctor_get(x_85, 1); +lean_inc(x_87); +lean_dec(x_85); +x_88 = lean_box(0); +x_89 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_89, 0, x_84); +lean_ctor_set(x_89, 1, x_86); +x_90 = lean_array_size(x_2); +x_91 = 0; +x_92 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3(x_2, x_88, x_2, x_90, x_91, x_89, x_3, x_4, x_87); +lean_dec(x_2); +if (lean_obj_tag(x_92) == 0) +{ +uint8_t x_93; +x_93 = !lean_is_exclusive(x_92); +if (x_93 == 0) +{ +lean_object* x_94; lean_object* x_95; +x_94 = lean_ctor_get(x_92, 0); +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +lean_dec(x_94); +lean_ctor_set(x_92, 0, x_95); +return x_92; } else { -lean_object* x_12; lean_object* x_13; -lean_dec(x_7); +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +x_96 = lean_ctor_get(x_92, 0); +x_97 = lean_ctor_get(x_92, 1); +lean_inc(x_97); +lean_inc(x_96); +lean_dec(x_92); +x_98 = lean_ctor_get(x_96, 0); +lean_inc(x_98); +lean_dec(x_96); +x_99 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_99, 0, x_98); +lean_ctor_set(x_99, 1, x_97); +return x_99; +} +} +else +{ +uint8_t x_100; +x_100 = !lean_is_exclusive(x_92); +if (x_100 == 0) +{ +return x_92; +} +else +{ +lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_101 = lean_ctor_get(x_92, 0); +x_102 = lean_ctor_get(x_92, 1); +lean_inc(x_102); +lean_inc(x_101); +lean_dec(x_92); +x_103 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +return x_103; +} +} +} +else +{ +uint8_t x_104; +lean_dec(x_84); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_104 = !lean_is_exclusive(x_85); +if (x_104 == 0) +{ +return x_85; +} +else +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; +x_105 = lean_ctor_get(x_85, 0); +x_106 = lean_ctor_get(x_85, 1); +lean_inc(x_106); +lean_inc(x_105); +lean_dec(x_85); +x_107 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_107, 0, x_105); +lean_ctor_set(x_107, 1, x_106); +return x_107; +} +} +} +else +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; +lean_dec(x_72); +lean_dec(x_6); +x_108 = lean_ctor_get(x_80, 1); +lean_inc(x_108); +lean_dec(x_80); +x_109 = lean_ctor_get(x_81, 0); +lean_inc(x_109); +lean_dec(x_81); +x_110 = lean_ctor_get(x_109, 0); +lean_inc(x_110); +x_111 = lean_box(0); +lean_inc(x_4); +lean_inc(x_3); +x_112 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_110, x_111, x_3, x_4, x_108); +if (lean_obj_tag(x_112) == 0) +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +x_113 = lean_ctor_get(x_112, 0); +lean_inc(x_113); +x_114 = lean_ctor_get(x_112, 1); +lean_inc(x_114); +lean_dec(x_112); +x_115 = lean_ctor_get(x_109, 1); +lean_inc(x_115); +x_116 = lean_unsigned_to_nat(0u); +x_117 = l_Array_toSubarray___rarg(x_2, x_116, x_115); +x_118 = l_Array_ofSubarray___rarg(x_117); +lean_dec(x_117); +x_119 = l_Lean_Compiler_LCNF_instantiateForall_go(x_118, x_116, x_113, x_3, x_4, x_114); +lean_dec(x_118); +if (lean_obj_tag(x_119) == 0) +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; uint8_t x_125; +x_120 = lean_ctor_get(x_119, 0); +lean_inc(x_120); +x_121 = lean_ctor_get(x_119, 1); +lean_inc(x_121); +lean_dec(x_119); +x_122 = l_Lean_Compiler_LCNF_getParamTypes(x_120); +x_123 = lean_ctor_get(x_109, 2); +lean_inc(x_123); +lean_dec(x_109); +x_124 = lean_array_get_size(x_122); +x_125 = lean_nat_dec_lt(x_123, x_124); +lean_dec(x_124); +if (x_125 == 0) +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_123); +lean_dec(x_122); +x_126 = l_Lean_instInhabitedExpr; +x_127 = l_outOfBounds___rarg(x_126); +x_128 = l_Lean_Compiler_LCNF_toMonoType(x_127, x_3, x_4, x_121); +return x_128; +} +else +{ +lean_object* x_129; lean_object* x_130; +x_129 = lean_array_fget(x_122, x_123); +lean_dec(x_123); +lean_dec(x_122); +x_130 = l_Lean_Compiler_LCNF_toMonoType(x_129, x_3, x_4, x_121); +return x_130; +} +} +else +{ +uint8_t x_131; +lean_dec(x_109); +lean_dec(x_4); +lean_dec(x_3); +x_131 = !lean_is_exclusive(x_119); +if (x_131 == 0) +{ +return x_119; +} +else +{ +lean_object* x_132; lean_object* x_133; lean_object* x_134; +x_132 = lean_ctor_get(x_119, 0); +x_133 = lean_ctor_get(x_119, 1); +lean_inc(x_133); +lean_inc(x_132); +lean_dec(x_119); +x_134 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_134, 0, x_132); +lean_ctor_set(x_134, 1, x_133); +return x_134; +} +} +} +else +{ +uint8_t x_135; +lean_dec(x_109); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_135 = !lean_is_exclusive(x_112); +if (x_135 == 0) +{ +return x_112; +} +else +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; +x_136 = lean_ctor_get(x_112, 0); +x_137 = lean_ctor_get(x_112, 1); +lean_inc(x_137); +lean_inc(x_136); +lean_dec(x_112); +x_138 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_138, 0, x_136); +lean_ctor_set(x_138, 1, x_137); +return x_138; +} +} +} +} +else +{ +uint8_t x_139; +lean_dec(x_72); lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_12 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__5; -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_5); -return x_13; +x_139 = !lean_is_exclusive(x_80); +if (x_139 == 0) +{ +return x_80; +} +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_140 = lean_ctor_get(x_80, 0); +x_141 = lean_ctor_get(x_80, 1); +lean_inc(x_141); +lean_inc(x_140); +lean_dec(x_80); +x_142 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_142, 0, x_140); +lean_ctor_set(x_142, 1, x_141); +return x_142; +} } } else { -lean_object* x_14; lean_object* x_15; +lean_object* x_143; lean_object* x_144; +lean_dec(x_72); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_143 = l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__5; +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_143); +lean_ctor_set(x_144, 1, x_5); +return x_144; +} +} +else +{ +lean_object* x_145; lean_object* x_146; +lean_dec(x_73); +lean_dec(x_72); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_145 = l_Lean_Compiler_LCNF_anyExpr; +x_146 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_146, 0, x_145); +lean_ctor_set(x_146, 1, x_5); +return x_146; +} +} +else +{ +lean_object* x_147; lean_object* x_148; +lean_dec(x_73); +lean_dec(x_72); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_147 = l_Lean_Compiler_LCNF_erasedExpr; +x_148 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_148, 0, x_147); +lean_ctor_set(x_148, 1, x_5); +return x_148; +} +} +case 1: +{ +lean_object* x_149; lean_object* x_150; +lean_dec(x_71); +x_149 = lean_ctor_get(x_1, 1); +lean_inc(x_149); +lean_dec(x_1); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_6); +x_150 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_6, x_3, x_4, x_5); +if (lean_obj_tag(x_150) == 0) +{ +lean_object* x_151; +x_151 = lean_ctor_get(x_150, 0); +lean_inc(x_151); +if (lean_obj_tag(x_151) == 0) +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_dec(x_150); +x_153 = lean_box(0); +lean_inc(x_6); +x_154 = l_Lean_Expr_const___override(x_6, x_153); +lean_inc(x_4); +lean_inc(x_3); +x_155 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_6, x_149, x_3, x_4, x_152); +if (lean_obj_tag(x_155) == 0) +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; size_t x_160; size_t x_161; lean_object* x_162; +x_156 = lean_ctor_get(x_155, 0); +lean_inc(x_156); +x_157 = lean_ctor_get(x_155, 1); +lean_inc(x_157); +lean_dec(x_155); +x_158 = lean_box(0); +x_159 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_159, 0, x_154); +lean_ctor_set(x_159, 1, x_156); +x_160 = lean_array_size(x_2); +x_161 = 0; +x_162 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4(x_2, x_158, x_2, x_160, x_161, x_159, x_3, x_4, x_157); +lean_dec(x_2); +if (lean_obj_tag(x_162) == 0) +{ +uint8_t x_163; +x_163 = !lean_is_exclusive(x_162); +if (x_163 == 0) +{ +lean_object* x_164; lean_object* x_165; +x_164 = lean_ctor_get(x_162, 0); +x_165 = lean_ctor_get(x_164, 0); +lean_inc(x_165); +lean_dec(x_164); +lean_ctor_set(x_162, 0, x_165); +return x_162; +} +else +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; +x_166 = lean_ctor_get(x_162, 0); +x_167 = lean_ctor_get(x_162, 1); +lean_inc(x_167); +lean_inc(x_166); +lean_dec(x_162); +x_168 = lean_ctor_get(x_166, 0); +lean_inc(x_168); +lean_dec(x_166); +x_169 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_169, 0, x_168); +lean_ctor_set(x_169, 1, x_167); +return x_169; +} +} +else +{ +uint8_t x_170; +x_170 = !lean_is_exclusive(x_162); +if (x_170 == 0) +{ +return x_162; +} +else +{ +lean_object* x_171; lean_object* x_172; lean_object* x_173; +x_171 = lean_ctor_get(x_162, 0); +x_172 = lean_ctor_get(x_162, 1); +lean_inc(x_172); +lean_inc(x_171); +lean_dec(x_162); +x_173 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_173, 0, x_171); +lean_ctor_set(x_173, 1, x_172); +return x_173; +} +} +} +else +{ +uint8_t x_174; +lean_dec(x_154); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_174 = !lean_is_exclusive(x_155); +if (x_174 == 0) +{ +return x_155; +} +else +{ +lean_object* x_175; lean_object* x_176; lean_object* x_177; +x_175 = lean_ctor_get(x_155, 0); +x_176 = lean_ctor_get(x_155, 1); +lean_inc(x_176); +lean_inc(x_175); +lean_dec(x_155); +x_177 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_177, 0, x_175); +lean_ctor_set(x_177, 1, x_176); +return x_177; +} +} +} +else +{ +lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +lean_dec(x_149); +lean_dec(x_6); +x_178 = lean_ctor_get(x_150, 1); +lean_inc(x_178); +lean_dec(x_150); +x_179 = lean_ctor_get(x_151, 0); +lean_inc(x_179); +lean_dec(x_151); +x_180 = lean_ctor_get(x_179, 0); +lean_inc(x_180); +x_181 = lean_box(0); +lean_inc(x_4); +lean_inc(x_3); +x_182 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_180, x_181, x_3, x_4, x_178); +if (lean_obj_tag(x_182) == 0) +{ +lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; +x_183 = lean_ctor_get(x_182, 0); +lean_inc(x_183); +x_184 = lean_ctor_get(x_182, 1); +lean_inc(x_184); +lean_dec(x_182); +x_185 = lean_ctor_get(x_179, 1); +lean_inc(x_185); +x_186 = lean_unsigned_to_nat(0u); +x_187 = l_Array_toSubarray___rarg(x_2, x_186, x_185); +x_188 = l_Array_ofSubarray___rarg(x_187); +lean_dec(x_187); +x_189 = l_Lean_Compiler_LCNF_instantiateForall_go(x_188, x_186, x_183, x_3, x_4, x_184); +lean_dec(x_188); +if (lean_obj_tag(x_189) == 0) +{ +lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; uint8_t x_195; +x_190 = lean_ctor_get(x_189, 0); +lean_inc(x_190); +x_191 = lean_ctor_get(x_189, 1); +lean_inc(x_191); +lean_dec(x_189); +x_192 = l_Lean_Compiler_LCNF_getParamTypes(x_190); +x_193 = lean_ctor_get(x_179, 2); +lean_inc(x_193); +lean_dec(x_179); +x_194 = lean_array_get_size(x_192); +x_195 = lean_nat_dec_lt(x_193, x_194); +lean_dec(x_194); +if (x_195 == 0) +{ +lean_object* x_196; lean_object* x_197; lean_object* x_198; +lean_dec(x_193); +lean_dec(x_192); +x_196 = l_Lean_instInhabitedExpr; +x_197 = l_outOfBounds___rarg(x_196); +x_198 = l_Lean_Compiler_LCNF_toMonoType(x_197, x_3, x_4, x_191); +return x_198; +} +else +{ +lean_object* x_199; lean_object* x_200; +x_199 = lean_array_fget(x_192, x_193); +lean_dec(x_193); +lean_dec(x_192); +x_200 = l_Lean_Compiler_LCNF_toMonoType(x_199, x_3, x_4, x_191); +return x_200; +} +} +else +{ +uint8_t x_201; +lean_dec(x_179); +lean_dec(x_4); +lean_dec(x_3); +x_201 = !lean_is_exclusive(x_189); +if (x_201 == 0) +{ +return x_189; +} +else +{ +lean_object* x_202; lean_object* x_203; lean_object* x_204; +x_202 = lean_ctor_get(x_189, 0); +x_203 = lean_ctor_get(x_189, 1); +lean_inc(x_203); +lean_inc(x_202); +lean_dec(x_189); +x_204 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_204, 0, x_202); +lean_ctor_set(x_204, 1, x_203); +return x_204; +} +} +} +else +{ +uint8_t x_205; +lean_dec(x_179); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_205 = !lean_is_exclusive(x_182); +if (x_205 == 0) +{ +return x_182; +} +else +{ +lean_object* x_206; lean_object* x_207; lean_object* x_208; +x_206 = lean_ctor_get(x_182, 0); +x_207 = lean_ctor_get(x_182, 1); +lean_inc(x_207); +lean_inc(x_206); +lean_dec(x_182); +x_208 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_208, 0, x_206); +lean_ctor_set(x_208, 1, x_207); +return x_208; +} +} +} +} +else +{ +uint8_t x_209; +lean_dec(x_149); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_209 = !lean_is_exclusive(x_150); +if (x_209 == 0) +{ +return x_150; +} +else +{ +lean_object* x_210; lean_object* x_211; lean_object* x_212; +x_210 = lean_ctor_get(x_150, 0); +x_211 = lean_ctor_get(x_150, 1); +lean_inc(x_211); +lean_inc(x_210); +lean_dec(x_150); +x_212 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_212, 0, x_210); +lean_ctor_set(x_212, 1, x_211); +return x_212; +} +} +} +default: +{ +lean_object* x_213; lean_object* x_214; +lean_dec(x_71); +x_213 = lean_ctor_get(x_1, 1); +lean_inc(x_213); +lean_dec(x_1); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_6); +x_214 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_6, x_3, x_4, x_5); +if (lean_obj_tag(x_214) == 0) +{ +lean_object* x_215; +x_215 = lean_ctor_get(x_214, 0); +lean_inc(x_215); +if (lean_obj_tag(x_215) == 0) +{ +lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; +x_216 = lean_ctor_get(x_214, 1); +lean_inc(x_216); +lean_dec(x_214); +x_217 = lean_box(0); +lean_inc(x_6); +x_218 = l_Lean_Expr_const___override(x_6, x_217); +lean_inc(x_4); +lean_inc(x_3); +x_219 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_6, x_213, x_3, x_4, x_216); +if (lean_obj_tag(x_219) == 0) +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; size_t x_224; size_t x_225; lean_object* x_226; +x_220 = lean_ctor_get(x_219, 0); +lean_inc(x_220); +x_221 = lean_ctor_get(x_219, 1); +lean_inc(x_221); +lean_dec(x_219); +x_222 = lean_box(0); +x_223 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_223, 0, x_218); +lean_ctor_set(x_223, 1, x_220); +x_224 = lean_array_size(x_2); +x_225 = 0; +x_226 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5(x_2, x_222, x_2, x_224, x_225, x_223, x_3, x_4, x_221); +lean_dec(x_2); +if (lean_obj_tag(x_226) == 0) +{ +uint8_t x_227; +x_227 = !lean_is_exclusive(x_226); +if (x_227 == 0) +{ +lean_object* x_228; lean_object* x_229; +x_228 = lean_ctor_get(x_226, 0); +x_229 = lean_ctor_get(x_228, 0); +lean_inc(x_229); +lean_dec(x_228); +lean_ctor_set(x_226, 0, x_229); +return x_226; +} +else +{ +lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; +x_230 = lean_ctor_get(x_226, 0); +x_231 = lean_ctor_get(x_226, 1); +lean_inc(x_231); +lean_inc(x_230); +lean_dec(x_226); +x_232 = lean_ctor_get(x_230, 0); +lean_inc(x_232); +lean_dec(x_230); +x_233 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_233, 0, x_232); +lean_ctor_set(x_233, 1, x_231); +return x_233; +} +} +else +{ +uint8_t x_234; +x_234 = !lean_is_exclusive(x_226); +if (x_234 == 0) +{ +return x_226; +} +else +{ +lean_object* x_235; lean_object* x_236; lean_object* x_237; +x_235 = lean_ctor_get(x_226, 0); +x_236 = lean_ctor_get(x_226, 1); +lean_inc(x_236); +lean_inc(x_235); +lean_dec(x_226); +x_237 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_237, 0, x_235); +lean_ctor_set(x_237, 1, x_236); +return x_237; +} +} +} +else +{ +uint8_t x_238; +lean_dec(x_218); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_238 = !lean_is_exclusive(x_219); +if (x_238 == 0) +{ +return x_219; +} +else +{ +lean_object* x_239; lean_object* x_240; lean_object* x_241; +x_239 = lean_ctor_get(x_219, 0); +x_240 = lean_ctor_get(x_219, 1); +lean_inc(x_240); +lean_inc(x_239); +lean_dec(x_219); +x_241 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_241, 0, x_239); +lean_ctor_set(x_241, 1, x_240); +return x_241; +} +} +} +else +{ +lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; +lean_dec(x_213); +lean_dec(x_6); +x_242 = lean_ctor_get(x_214, 1); +lean_inc(x_242); +lean_dec(x_214); +x_243 = lean_ctor_get(x_215, 0); +lean_inc(x_243); +lean_dec(x_215); +x_244 = lean_ctor_get(x_243, 0); +lean_inc(x_244); +x_245 = lean_box(0); +lean_inc(x_4); +lean_inc(x_3); +x_246 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_244, x_245, x_3, x_4, x_242); +if (lean_obj_tag(x_246) == 0) +{ +lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; +x_247 = lean_ctor_get(x_246, 0); +lean_inc(x_247); +x_248 = lean_ctor_get(x_246, 1); +lean_inc(x_248); +lean_dec(x_246); +x_249 = lean_ctor_get(x_243, 1); +lean_inc(x_249); +x_250 = lean_unsigned_to_nat(0u); +x_251 = l_Array_toSubarray___rarg(x_2, x_250, x_249); +x_252 = l_Array_ofSubarray___rarg(x_251); +lean_dec(x_251); +x_253 = l_Lean_Compiler_LCNF_instantiateForall_go(x_252, x_250, x_247, x_3, x_4, x_248); +lean_dec(x_252); +if (lean_obj_tag(x_253) == 0) +{ +lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; uint8_t x_259; +x_254 = lean_ctor_get(x_253, 0); +lean_inc(x_254); +x_255 = lean_ctor_get(x_253, 1); +lean_inc(x_255); +lean_dec(x_253); +x_256 = l_Lean_Compiler_LCNF_getParamTypes(x_254); +x_257 = lean_ctor_get(x_243, 2); +lean_inc(x_257); +lean_dec(x_243); +x_258 = lean_array_get_size(x_256); +x_259 = lean_nat_dec_lt(x_257, x_258); +lean_dec(x_258); +if (x_259 == 0) +{ +lean_object* x_260; lean_object* x_261; lean_object* x_262; +lean_dec(x_257); +lean_dec(x_256); +x_260 = l_Lean_instInhabitedExpr; +x_261 = l_outOfBounds___rarg(x_260); +x_262 = l_Lean_Compiler_LCNF_toMonoType(x_261, x_3, x_4, x_255); +return x_262; +} +else +{ +lean_object* x_263; lean_object* x_264; +x_263 = lean_array_fget(x_256, x_257); +lean_dec(x_257); +lean_dec(x_256); +x_264 = l_Lean_Compiler_LCNF_toMonoType(x_263, x_3, x_4, x_255); +return x_264; +} +} +else +{ +uint8_t x_265; +lean_dec(x_243); +lean_dec(x_4); +lean_dec(x_3); +x_265 = !lean_is_exclusive(x_253); +if (x_265 == 0) +{ +return x_253; +} +else +{ +lean_object* x_266; lean_object* x_267; lean_object* x_268; +x_266 = lean_ctor_get(x_253, 0); +x_267 = lean_ctor_get(x_253, 1); +lean_inc(x_267); +lean_inc(x_266); +lean_dec(x_253); +x_268 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_268, 0, x_266); +lean_ctor_set(x_268, 1, x_267); +return x_268; +} +} +} +else +{ +uint8_t x_269; +lean_dec(x_243); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_269 = !lean_is_exclusive(x_246); +if (x_269 == 0) +{ +return x_246; +} +else +{ +lean_object* x_270; lean_object* x_271; lean_object* x_272; +x_270 = lean_ctor_get(x_246, 0); +x_271 = lean_ctor_get(x_246, 1); +lean_inc(x_271); +lean_inc(x_270); +lean_dec(x_246); +x_272 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_272, 0, x_270); +lean_ctor_set(x_272, 1, x_271); +return x_272; +} +} +} +} +else +{ +uint8_t x_273; +lean_dec(x_213); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_273 = !lean_is_exclusive(x_214); +if (x_273 == 0) +{ +return x_214; +} +else +{ +lean_object* x_274; lean_object* x_275; lean_object* x_276; +x_274 = lean_ctor_get(x_214, 0); +x_275 = lean_ctor_get(x_214, 1); +lean_inc(x_275); +lean_inc(x_274); +lean_dec(x_214); +x_276 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_276, 0, x_274); +lean_ctor_set(x_276, 1, x_275); +return x_276; +} +} +} +} +} +default: +{ +lean_object* x_277; lean_object* x_278; +x_277 = lean_ctor_get(x_1, 1); +lean_inc(x_277); +lean_dec(x_1); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_6); +x_278 = l_Lean_Compiler_LCNF_hasTrivialStructure_x3f(x_6, x_3, x_4, x_5); +if (lean_obj_tag(x_278) == 0) +{ +lean_object* x_279; +x_279 = lean_ctor_get(x_278, 0); +lean_inc(x_279); +if (lean_obj_tag(x_279) == 0) +{ +lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; +x_280 = lean_ctor_get(x_278, 1); +lean_inc(x_280); +lean_dec(x_278); +x_281 = lean_box(0); +lean_inc(x_6); +x_282 = l_Lean_Expr_const___override(x_6, x_281); +lean_inc(x_4); +lean_inc(x_3); +x_283 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_6, x_277, x_3, x_4, x_280); +if (lean_obj_tag(x_283) == 0) +{ +lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; size_t x_288; size_t x_289; lean_object* x_290; +x_284 = lean_ctor_get(x_283, 0); +lean_inc(x_284); +x_285 = lean_ctor_get(x_283, 1); +lean_inc(x_285); +lean_dec(x_283); +x_286 = lean_box(0); +x_287 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_287, 0, x_282); +lean_ctor_set(x_287, 1, x_284); +x_288 = lean_array_size(x_2); +x_289 = 0; +x_290 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6(x_2, x_286, x_2, x_288, x_289, x_287, x_3, x_4, x_285); +lean_dec(x_2); +if (lean_obj_tag(x_290) == 0) +{ +uint8_t x_291; +x_291 = !lean_is_exclusive(x_290); +if (x_291 == 0) +{ +lean_object* x_292; lean_object* x_293; +x_292 = lean_ctor_get(x_290, 0); +x_293 = lean_ctor_get(x_292, 0); +lean_inc(x_293); +lean_dec(x_292); +lean_ctor_set(x_290, 0, x_293); +return x_290; +} +else +{ +lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_294 = lean_ctor_get(x_290, 0); +x_295 = lean_ctor_get(x_290, 1); +lean_inc(x_295); +lean_inc(x_294); +lean_dec(x_290); +x_296 = lean_ctor_get(x_294, 0); +lean_inc(x_296); +lean_dec(x_294); +x_297 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_297, 0, x_296); +lean_ctor_set(x_297, 1, x_295); +return x_297; +} +} +else +{ +uint8_t x_298; +x_298 = !lean_is_exclusive(x_290); +if (x_298 == 0) +{ +return x_290; +} +else +{ +lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_299 = lean_ctor_get(x_290, 0); +x_300 = lean_ctor_get(x_290, 1); +lean_inc(x_300); +lean_inc(x_299); +lean_dec(x_290); +x_301 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_301, 0, x_299); +lean_ctor_set(x_301, 1, x_300); +return x_301; +} +} +} +else +{ +uint8_t x_302; +lean_dec(x_282); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_302 = !lean_is_exclusive(x_283); +if (x_302 == 0) +{ +return x_283; +} +else +{ +lean_object* x_303; lean_object* x_304; lean_object* x_305; +x_303 = lean_ctor_get(x_283, 0); +x_304 = lean_ctor_get(x_283, 1); +lean_inc(x_304); +lean_inc(x_303); +lean_dec(x_283); +x_305 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_305, 0, x_303); +lean_ctor_set(x_305, 1, x_304); +return x_305; +} +} +} +else +{ +lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; +lean_dec(x_277); +lean_dec(x_6); +x_306 = lean_ctor_get(x_278, 1); +lean_inc(x_306); +lean_dec(x_278); +x_307 = lean_ctor_get(x_279, 0); +lean_inc(x_307); +lean_dec(x_279); +x_308 = lean_ctor_get(x_307, 0); +lean_inc(x_308); +x_309 = lean_box(0); +lean_inc(x_4); +lean_inc(x_3); +x_310 = l_Lean_Compiler_LCNF_getOtherDeclBaseType(x_308, x_309, x_3, x_4, x_306); +if (lean_obj_tag(x_310) == 0) +{ +lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; +x_311 = lean_ctor_get(x_310, 0); +lean_inc(x_311); +x_312 = lean_ctor_get(x_310, 1); +lean_inc(x_312); +lean_dec(x_310); +x_313 = lean_ctor_get(x_307, 1); +lean_inc(x_313); +x_314 = lean_unsigned_to_nat(0u); +x_315 = l_Array_toSubarray___rarg(x_2, x_314, x_313); +x_316 = l_Array_ofSubarray___rarg(x_315); +lean_dec(x_315); +x_317 = l_Lean_Compiler_LCNF_instantiateForall_go(x_316, x_314, x_311, x_3, x_4, x_312); +lean_dec(x_316); +if (lean_obj_tag(x_317) == 0) +{ +lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; uint8_t x_323; +x_318 = lean_ctor_get(x_317, 0); +lean_inc(x_318); +x_319 = lean_ctor_get(x_317, 1); +lean_inc(x_319); +lean_dec(x_317); +x_320 = l_Lean_Compiler_LCNF_getParamTypes(x_318); +x_321 = lean_ctor_get(x_307, 2); +lean_inc(x_321); +lean_dec(x_307); +x_322 = lean_array_get_size(x_320); +x_323 = lean_nat_dec_lt(x_321, x_322); +lean_dec(x_322); +if (x_323 == 0) +{ +lean_object* x_324; lean_object* x_325; lean_object* x_326; +lean_dec(x_321); +lean_dec(x_320); +x_324 = l_Lean_instInhabitedExpr; +x_325 = l_outOfBounds___rarg(x_324); +x_326 = l_Lean_Compiler_LCNF_toMonoType(x_325, x_3, x_4, x_319); +return x_326; +} +else +{ +lean_object* x_327; lean_object* x_328; +x_327 = lean_array_fget(x_320, x_321); +lean_dec(x_321); +lean_dec(x_320); +x_328 = l_Lean_Compiler_LCNF_toMonoType(x_327, x_3, x_4, x_319); +return x_328; +} +} +else +{ +uint8_t x_329; +lean_dec(x_307); +lean_dec(x_4); +lean_dec(x_3); +x_329 = !lean_is_exclusive(x_317); +if (x_329 == 0) +{ +return x_317; +} +else +{ +lean_object* x_330; lean_object* x_331; lean_object* x_332; +x_330 = lean_ctor_get(x_317, 0); +x_331 = lean_ctor_get(x_317, 1); +lean_inc(x_331); +lean_inc(x_330); +lean_dec(x_317); +x_332 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_332, 0, x_330); +lean_ctor_set(x_332, 1, x_331); +return x_332; +} +} +} +else +{ +uint8_t x_333; +lean_dec(x_307); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_333 = !lean_is_exclusive(x_310); +if (x_333 == 0) +{ +return x_310; +} +else +{ +lean_object* x_334; lean_object* x_335; lean_object* x_336; +x_334 = lean_ctor_get(x_310, 0); +x_335 = lean_ctor_get(x_310, 1); +lean_inc(x_335); +lean_inc(x_334); +lean_dec(x_310); +x_336 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_336, 0, x_334); +lean_ctor_set(x_336, 1, x_335); +return x_336; +} +} +} +} +else +{ +uint8_t x_337; +lean_dec(x_277); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_337 = !lean_is_exclusive(x_278); +if (x_337 == 0) +{ +return x_278; +} +else +{ +lean_object* x_338; lean_object* x_339; lean_object* x_340; +x_338 = lean_ctor_get(x_278, 0); +x_339 = lean_ctor_get(x_278, 1); +lean_inc(x_339); +lean_inc(x_338); +lean_dec(x_278); +x_340 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_340, 0, x_338); +lean_ctor_set(x_340, 1, x_339); +return x_340; +} +} +} +} +} +else +{ +lean_object* x_341; lean_object* x_342; lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_14 = l_Lean_Compiler_LCNF_erasedExpr; -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_5); -return x_15; +x_341 = l_Lean_Compiler_LCNF_anyExpr; +x_342 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_342, 0, x_341); +lean_ctor_set(x_342, 1, x_5); +return x_342; } } } @@ -2596,17 +5163,21 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_5; uint8_t x_6; +lean_object* x_5; x_5 = l_Lean_Expr_headBeta(x_1); -x_6 = l_Lean_Expr_isErased(x_5); -if (x_6 == 0) -{ -uint8_t x_7; -lean_inc(x_5); -x_7 = l_Lean_Compiler_LCNF_isTypeFormerType(x_5); -if (x_7 == 0) -{ switch (lean_obj_tag(x_5)) { +case 3: +{ +lean_object* x_6; lean_object* x_7; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_6 = l_Lean_Compiler_LCNF_erasedExpr; +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_4); +return x_7; +} case 4: { lean_object* x_8; lean_object* x_9; @@ -2630,134 +5201,371 @@ return x_16; } case 7: { -lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; x_17 = lean_ctor_get(x_5, 1); lean_inc(x_17); x_18 = lean_ctor_get(x_5, 2); lean_inc(x_18); lean_dec(x_5); -lean_inc(x_3); -lean_inc(x_2); -x_19 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_4); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); -x_21 = lean_ctor_get(x_19, 1); -lean_inc(x_21); -lean_dec(x_19); -x_22 = l_Lean_Compiler_LCNF_erasedExpr; -x_23 = lean_expr_instantiate1(x_18, x_22); +x_19 = l_Lean_Compiler_LCNF_anyExpr; +x_20 = lean_expr_instantiate1(x_18, x_19); lean_dec(x_18); lean_inc(x_3); lean_inc(x_2); -x_24 = l_Lean_Compiler_LCNF_toMonoType(x_23, x_2, x_3, x_21); +x_21 = l_Lean_Compiler_LCNF_toMonoType(x_20, x_2, x_3, x_4); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 4) +{ +lean_object* x_23; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +if (lean_obj_tag(x_23) == 1) +{ +lean_object* x_24; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); if (lean_obj_tag(x_24) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Lean_mkArrow(x_20, x_25, x_2, x_3, x_26); +uint8_t x_25; +x_25 = !lean_is_exclusive(x_21); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_26 = lean_ctor_get(x_21, 1); +x_27 = lean_ctor_get(x_21, 0); +lean_dec(x_27); +x_28 = lean_ctor_get(x_23, 1); +lean_inc(x_28); +lean_dec(x_23); +x_29 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_30 = lean_string_dec_eq(x_28, x_29); +lean_dec(x_28); +if (x_30 == 0) +{ +lean_object* x_31; +lean_free_object(x_21); +lean_inc(x_3); +lean_inc(x_2); +x_31 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_26); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = l_Lean_mkArrow(x_32, x_22, x_2, x_3, x_33); lean_dec(x_3); lean_dec(x_2); -return x_27; +return x_34; } else { -uint8_t x_28; -lean_dec(x_20); +uint8_t x_35; +lean_dec(x_22); lean_dec(x_3); lean_dec(x_2); -x_28 = !lean_is_exclusive(x_24); -if (x_28 == 0) +x_35 = !lean_is_exclusive(x_31); +if (x_35 == 0) { -return x_24; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_24, 0); -x_30 = lean_ctor_get(x_24, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_24); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); return x_31; } +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_31, 0); +x_37 = lean_ctor_get(x_31, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_31); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} } } else { -uint8_t x_32; -lean_dec(x_18); +lean_object* x_39; +lean_dec(x_22); +lean_dec(x_17); lean_dec(x_3); lean_dec(x_2); -x_32 = !lean_is_exclusive(x_19); -if (x_32 == 0) -{ -return x_19; +x_39 = l_Lean_Compiler_LCNF_erasedExpr; +lean_ctor_set(x_21, 0, x_39); +return x_21; +} } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = lean_ctor_get(x_19, 0); -x_34 = lean_ctor_get(x_19, 1); -lean_inc(x_34); -lean_inc(x_33); -lean_dec(x_19); -x_35 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); -return x_35; +lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_40 = lean_ctor_get(x_21, 1); +lean_inc(x_40); +lean_dec(x_21); +x_41 = lean_ctor_get(x_23, 1); +lean_inc(x_41); +lean_dec(x_23); +x_42 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3; +x_43 = lean_string_dec_eq(x_41, x_42); +lean_dec(x_41); +if (x_43 == 0) +{ +lean_object* x_44; +lean_inc(x_3); +lean_inc(x_2); +x_44 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_40); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_dec(x_44); +x_47 = l_Lean_mkArrow(x_45, x_22, x_2, x_3, x_46); +lean_dec(x_3); +lean_dec(x_2); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_dec(x_22); +lean_dec(x_3); +lean_dec(x_2); +x_48 = lean_ctor_get(x_44, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_44, 1); +lean_inc(x_49); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + lean_ctor_release(x_44, 1); + x_50 = x_44; +} else { + lean_dec_ref(x_44); + x_50 = lean_box(0); +} +if (lean_is_scalar(x_50)) { + x_51 = lean_alloc_ctor(1, 2, 0); +} else { + x_51 = x_50; +} +lean_ctor_set(x_51, 0, x_48); +lean_ctor_set(x_51, 1, x_49); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; +lean_dec(x_22); +lean_dec(x_17); +lean_dec(x_3); +lean_dec(x_2); +x_52 = l_Lean_Compiler_LCNF_erasedExpr; +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_40); +return x_53; +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; +lean_dec(x_24); +lean_dec(x_23); +x_54 = lean_ctor_get(x_21, 1); +lean_inc(x_54); +lean_dec(x_21); +lean_inc(x_3); +lean_inc(x_2); +x_55 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_54); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +x_58 = l_Lean_mkArrow(x_56, x_22, x_2, x_3, x_57); +lean_dec(x_3); +lean_dec(x_2); +return x_58; +} +else +{ +uint8_t x_59; +lean_dec(x_22); +lean_dec(x_3); +lean_dec(x_2); +x_59 = !lean_is_exclusive(x_55); +if (x_59 == 0) +{ +return x_55; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_55, 0); +x_61 = lean_ctor_get(x_55, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_55); +x_62 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +return x_62; +} +} +} +} +else +{ +lean_object* x_63; lean_object* x_64; +lean_dec(x_23); +x_63 = lean_ctor_get(x_21, 1); +lean_inc(x_63); +lean_dec(x_21); +lean_inc(x_3); +lean_inc(x_2); +x_64 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_63); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_64, 1); +lean_inc(x_66); +lean_dec(x_64); +x_67 = l_Lean_mkArrow(x_65, x_22, x_2, x_3, x_66); +lean_dec(x_3); +lean_dec(x_2); +return x_67; +} +else +{ +uint8_t x_68; +lean_dec(x_22); +lean_dec(x_3); +lean_dec(x_2); +x_68 = !lean_is_exclusive(x_64); +if (x_68 == 0) +{ +return x_64; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_64, 0); +x_70 = lean_ctor_get(x_64, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_64); +x_71 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +return x_71; +} +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; +x_72 = lean_ctor_get(x_21, 1); +lean_inc(x_72); +lean_dec(x_21); +lean_inc(x_3); +lean_inc(x_2); +x_73 = l_Lean_Compiler_LCNF_toMonoType(x_17, x_2, x_3, x_72); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_73, 1); +lean_inc(x_75); +lean_dec(x_73); +x_76 = l_Lean_mkArrow(x_74, x_22, x_2, x_3, x_75); +lean_dec(x_3); +lean_dec(x_2); +return x_76; +} +else +{ +uint8_t x_77; +lean_dec(x_22); +lean_dec(x_3); +lean_dec(x_2); +x_77 = !lean_is_exclusive(x_73); +if (x_77 == 0) +{ +return x_73; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_73, 0); +x_79 = lean_ctor_get(x_73, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_73); +x_80 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_80, 0, x_78); +lean_ctor_set(x_80, 1, x_79); +return x_80; +} +} +} +} +else +{ +uint8_t x_81; +lean_dec(x_17); +lean_dec(x_3); +lean_dec(x_2); +x_81 = !lean_is_exclusive(x_21); +if (x_81 == 0) +{ +return x_21; +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_21, 0); +x_83 = lean_ctor_get(x_21, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_21); +x_84 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } default: { -lean_object* x_36; lean_object* x_37; +lean_object* x_85; lean_object* x_86; lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_36 = l_Lean_Compiler_LCNF_erasedExpr; -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_4); -return x_37; +x_85 = l_Lean_Compiler_LCNF_anyExpr; +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_85); +lean_ctor_set(x_86, 1, x_4); +return x_86; } } } -else -{ -lean_object* x_38; lean_object* x_39; -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_38 = l_Lean_Compiler_LCNF_erasedExpr; -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_4); -return x_39; -} -} -else -{ -lean_object* x_40; lean_object* x_41; -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_40 = l_Lean_Compiler_LCNF_erasedExpr; -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_4); -return x_41; -} -} } LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: @@ -2788,13 +5596,64 @@ lean_dec(x_1); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_8; -x_8 = l_Lean_Compiler_LCNF_toMonoType_visitApp___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_4); lean_dec(x_4); -return x_8; +x_11 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_12 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__3(x_1, x_2, x_3, x_10, x_11, x_6, x_7, x_8, x_9); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_11 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_12 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__4(x_1, x_2, x_3, x_10, x_11, x_6, x_7, x_8, x_9); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_11 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_12 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__5(x_1, x_2, x_3, x_10, x_11, x_6, x_7, x_8, x_9); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_11 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_12 = l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__6(x_1, x_2, x_3, x_10, x_11, x_6, x_7, x_8, x_9); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; } } static lean_object* _init_l_Lean_Compiler_LCNF_instInhabitedMonoTypeExtState() { @@ -2805,7 +5664,7 @@ x_1 = l_Lean_Compiler_LCNF_getRelevantCtorFields___closed__8; return x_1; } } -static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1() { +static lean_object* _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -2815,11 +5674,11 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1; +x_2 = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1; x_3 = l_Lean_EnvExtensionInterfaceUnsafe_registerExt___rarg(x_2, x_1); return x_3; } @@ -3358,6 +6217,8 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec_ lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toMonoType_visitApp___spec__2___closed__3); l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1 = _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1(); lean_mark_persistent(l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__1); l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2 = _init_l_Lean_Compiler_LCNF_toMonoType_visitApp___closed__2(); @@ -3372,9 +6233,9 @@ l_Lean_Compiler_LCNF_toMonoType___closed__1 = _init_l_Lean_Compiler_LCNF_toMonoT lean_mark_persistent(l_Lean_Compiler_LCNF_toMonoType___closed__1); l_Lean_Compiler_LCNF_instInhabitedMonoTypeExtState = _init_l_Lean_Compiler_LCNF_instInhabitedMonoTypeExtState(); lean_mark_persistent(l_Lean_Compiler_LCNF_instInhabitedMonoTypeExtState); -l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1(); -lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633____closed__1); -if (builtin) {res = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1633_(lean_io_mk_world()); +l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1 = _init_l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1(); +lean_mark_persistent(l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660____closed__1); +if (builtin) {res = l_Lean_Compiler_LCNF_initFn____x40_Lean_Compiler_LCNF_MonoTypes___hyg_1660_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Compiler_LCNF_monoTypeExt = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Compiler_LCNF_monoTypeExt); diff --git a/stage0/stdlib/Lean/Compiler/LCNF/PrettyPrinter.c b/stage0/stdlib/Lean/Compiler/LCNF/PrettyPrinter.c index 1bdca144cf..3a533c33e3 100644 --- a/stage0/stdlib/Lean/Compiler/LCNF/PrettyPrinter.c +++ b/stage0/stdlib/Lean/Compiler/LCNF/PrettyPrinter.c @@ -123,6 +123,7 @@ static lean_object* l_Lean_Compiler_LCNF_PP_ppExpr___closed__8; LEAN_EXPORT lean_object* l_Subarray_forInUnsafe_loop___at___private_Lean_Compiler_LCNF_PrettyPrinter_0__Lean_Compiler_LCNF_PP_join___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PP_ppExpr___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_ppDecl_x27___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isErased(lean_object*); static lean_object* l_Lean_Compiler_LCNF_PP_ppExpr___closed__4; static lean_object* l_Lean_Compiler_LCNF_PP_ppExpr___closed__5; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_ppFunDecl___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2574,14 +2575,28 @@ return x_116; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PP_getFunType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -size_t x_6; size_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_6 = lean_array_size(x_1); -x_7 = 0; -x_8 = l_Array_mapMUnsafe_map___at_Lean_Compiler_LCNF_InferType_mkForallParams___spec__1(x_6, x_7, x_1); -x_9 = lean_unsigned_to_nat(0u); -x_10 = l_Lean_Compiler_LCNF_instantiateForall_go(x_8, x_9, x_2, x_3, x_4, x_5); -lean_dec(x_8); -return x_10; +uint8_t x_6; +x_6 = l_Lean_Expr_isErased(x_2); +if (x_6 == 0) +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_7 = lean_array_size(x_1); +x_8 = 0; +x_9 = l_Array_mapMUnsafe_map___at_Lean_Compiler_LCNF_InferType_mkForallParams___spec__1(x_7, x_8, x_1); +x_10 = lean_unsigned_to_nat(0u); +x_11 = l_Lean_Compiler_LCNF_instantiateForall_go(x_9, x_10, x_2, x_3, x_4, x_5); +lean_dec(x_9); +return x_11; +} +else +{ +lean_object* x_12; +lean_dec(x_1); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_2); +lean_ctor_set(x_12, 1, x_5); +return x_12; +} } } LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_PP_getFunType___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { diff --git a/stage0/stdlib/Lean/Compiler/LCNF/Types.c b/stage0/stdlib/Lean/Compiler/LCNF/Types.c index af55c578f0..1003139b09 100644 --- a/stage0/stdlib/Lean/Compiler/LCNF/Types.c +++ b/stage0/stdlib/Lean/Compiler/LCNF/Types.c @@ -19,6 +19,7 @@ lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spe LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Compiler_LCNF_isPropFormerType_go___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler___aux__Lean__Compiler__LCNF__Types______macroRules__Lean__Compiler__term_u25fe__1___closed__5; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_anyExpr___closed__3; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_isInductiveWithNoCtors___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_isPropFormerTypeQuick___boxed(lean_object*); lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -31,6 +32,7 @@ static lean_object* l_Lean_Compiler_term_u25fe___closed__5; lean_object* l_Lean_Expr_sort___override(lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Compiler_LCNF_isPropFormerType_go___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Compiler_LCNF_anyExpr___closed__2; LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toLCNFType___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); static lean_object* l_Lean_Compiler___aux__Lean__Compiler__LCNF__Types______unexpand__lcErased__1___closed__1; @@ -54,6 +56,7 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toLCNFType_whnfEta(lean_object*, l lean_object* lean_expr_abstract(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toLCNFType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Compiler_LCNF_erasedExpr___closed__1; +static lean_object* l_Lean_Compiler_LCNF_anyExpr___closed__1; uint8_t lean_expr_eqv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_toLCNFType_visitApp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); @@ -113,6 +116,7 @@ LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_isArrowClass_x3f___boxed(lean_obje LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_isPropFormerType_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); size_t lean_usize_add(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Compiler_LCNF_anyExpr; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Compiler_LCNF_toLCNFType_visitApp___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); @@ -391,6 +395,42 @@ x_1 = l_Lean_Compiler_LCNF_erasedExpr___closed__1; return x_1; } } +static lean_object* _init_l_Lean_Compiler_LCNF_anyExpr___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("lcAny", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_anyExpr___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Compiler_LCNF_anyExpr___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_anyExpr___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Compiler_LCNF_anyExpr___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_Compiler_LCNF_anyExpr() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Compiler_LCNF_anyExpr___closed__3; +return x_1; +} +} LEAN_EXPORT uint8_t l_Lean_Expr_isErased(lean_object* x_1) { _start: { @@ -3201,6 +3241,14 @@ l_Lean_Compiler_LCNF_erasedExpr___closed__1 = _init_l_Lean_Compiler_LCNF_erasedE lean_mark_persistent(l_Lean_Compiler_LCNF_erasedExpr___closed__1); l_Lean_Compiler_LCNF_erasedExpr = _init_l_Lean_Compiler_LCNF_erasedExpr(); lean_mark_persistent(l_Lean_Compiler_LCNF_erasedExpr); +l_Lean_Compiler_LCNF_anyExpr___closed__1 = _init_l_Lean_Compiler_LCNF_anyExpr___closed__1(); +lean_mark_persistent(l_Lean_Compiler_LCNF_anyExpr___closed__1); +l_Lean_Compiler_LCNF_anyExpr___closed__2 = _init_l_Lean_Compiler_LCNF_anyExpr___closed__2(); +lean_mark_persistent(l_Lean_Compiler_LCNF_anyExpr___closed__2); +l_Lean_Compiler_LCNF_anyExpr___closed__3 = _init_l_Lean_Compiler_LCNF_anyExpr___closed__3(); +lean_mark_persistent(l_Lean_Compiler_LCNF_anyExpr___closed__3); +l_Lean_Compiler_LCNF_anyExpr = _init_l_Lean_Compiler_LCNF_anyExpr(); +lean_mark_persistent(l_Lean_Compiler_LCNF_anyExpr); l_Lean_Compiler_LCNF_isPropFormerType_go___closed__1 = _init_l_Lean_Compiler_LCNF_isPropFormerType_go___closed__1(); lean_mark_persistent(l_Lean_Compiler_LCNF_isPropFormerType_go___closed__1); l_Lean_Compiler_LCNF_toLCNFType___lambda__2___closed__1 = _init_l_Lean_Compiler_LCNF_toLCNFType___lambda__2___closed__1(); diff --git a/stage0/stdlib/Lean/CoreM.c b/stage0/stdlib/Lean/CoreM.c index 0070cb5312..67ede40ee2 100644 --- a/stage0/stdlib/Lean/CoreM.c +++ b/stage0/stdlib/Lean/CoreM.c @@ -1080,7 +1080,7 @@ static lean_object* _init_l_Lean_initFn____x40_Lean_CoreM___hyg_114____closed__4 _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("perform elaboration using multiple threads where possible\n\nThis option defaults to `false` but (when not explicitly set) is overridden to `true` in `Lean.Language.Lean.process` as used by the cmdline driver and language server. Metaprogramming users driving elaboration directly via e.g. `Lean.Elab.Command.elabCommandTopLevel` can opt into asynchronous elaboration by setting this option but then are responsible for processing messages and other data not only in the resulting command state but also from async tasks in `Lean.Command.Context.snap\?` and `Lean.Command.State.snapshotTasks`.", 590, 590); +x_1 = lean_mk_string_unchecked("perform elaboration using multiple threads where possible\n\nThis option defaults to `false` but (when not explicitly set) is overridden to `true` in the language server. Metaprogramming users driving elaboration directly via e.g. `Lean.Elab.Command.elabCommandTopLevel` can opt into asynchronous elaboration by setting this option but then are responsible for processing messages and other data not only in the resulting command state but also from async tasks in `Lean.Command.Context.snap\?` and `Lean.Command.State.snapshotTasks`.", 531, 531); return x_1; } } diff --git a/stage0/stdlib/Lean/Data/KVMap.c b/stage0/stdlib/Lean/Data/KVMap.c index 9b33f9dbbd..6b0ff34617 100644 --- a/stage0/stdlib/Lean/Data/KVMap.c +++ b/stage0/stdlib/Lean/Data/KVMap.c @@ -15,7 +15,6 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_KVMap_instForInProdNameDataValue___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_repr___at___private_Lean_Data_KVMap_0__Lean_reprKVMap____x40_Lean_Data_KVMap___hyg_920____spec__1___closed__4; -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_KVMap_getSyntax(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_reprPrec(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_KVMap_updateNat(lean_object*, lean_object*, lean_object*); @@ -99,6 +98,7 @@ LEAN_EXPORT lean_object* l_Lean_KVMap_instValueInt___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_KVMap_subsetAux___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instReprKVMap; LEAN_EXPORT lean_object* l_Lean_KVMap_getNat___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); static lean_object* l___private_Lean_Data_KVMap_0__Lean_reprDataValue____x40_Lean_Data_KVMap___hyg_253____closed__27; LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Lean_Data_KVMap_0__Lean_reprKVMap____x40_Lean_Data_KVMap___hyg_920____spec__4(lean_object*, lean_object*); @@ -1357,7 +1357,7 @@ lean_inc(x_181); lean_dec(x_1); x_182 = lean_unsigned_to_nat(1024u); x_183 = lean_nat_dec_le(x_182, x_2); -x_184 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_181, x_182); +x_184 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_181, x_182); x_185 = l___private_Lean_Data_KVMap_0__Lean_reprDataValue____x40_Lean_Data_KVMap___hyg_253____closed__35; x_186 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_186, 0, x_185); diff --git a/stage0/stdlib/Lean/Data/Lsp/Capabilities.c b/stage0/stdlib/Lean/Data/Lsp/Capabilities.c index 48de61d0d4..2f171221ad 100644 --- a/stage0/stdlib/Lean/Data/Lsp/Capabilities.c +++ b/stage0/stdlib/Lean/Data/Lsp/Capabilities.c @@ -161,7 +161,6 @@ static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonS static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1644____closed__14; LEAN_EXPORT lean_object* l_Lean_Lsp_instFromJsonShowDocumentClientCapabilities; LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonWorkspaceClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_995____spec__1___boxed(lean_object*, lean_object*); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__13; LEAN_EXPORT lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_instFromJsonCompletionClientCapabilities; @@ -251,6 +250,7 @@ LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonShowDocumentClientCapabilities; static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1644____closed__56; static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonTextDocumentClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_280____closed__3; static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonWorkspaceEditClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_794____closed__1; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1171____closed__11; static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_fromJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1644____closed__65; static lean_object* l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonTextDocumentClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_248____closed__1; @@ -1955,7 +1955,7 @@ _start: { lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonShowDocumentClientCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_398____closed__1; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -6929,7 +6929,7 @@ lean_inc(x_23); lean_dec(x_14); x_24 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__3; lean_inc(x_1); -x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_24); +x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_24); if (lean_obj_tag(x_25) == 0) { uint8_t x_26; @@ -6969,7 +6969,7 @@ lean_inc(x_34); lean_dec(x_25); x_35 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__4; lean_inc(x_1); -x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_35); +x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_35); if (lean_obj_tag(x_36) == 0) { uint8_t x_37; @@ -7010,7 +7010,7 @@ lean_inc(x_45); lean_dec(x_36); x_46 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__5; lean_inc(x_1); -x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_46); +x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_46); if (lean_obj_tag(x_47) == 0) { uint8_t x_48; @@ -7052,7 +7052,7 @@ lean_inc(x_56); lean_dec(x_47); x_57 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__6; lean_inc(x_1); -x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_57); +x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_57); if (lean_obj_tag(x_58) == 0) { uint8_t x_59; @@ -7095,7 +7095,7 @@ lean_inc(x_67); lean_dec(x_58); x_68 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__7; lean_inc(x_1); -x_69 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_68); +x_69 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_68); if (lean_obj_tag(x_69) == 0) { uint8_t x_70; @@ -7139,7 +7139,7 @@ lean_inc(x_78); lean_dec(x_69); x_79 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__8; lean_inc(x_1); -x_80 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_79); +x_80 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_79); if (lean_obj_tag(x_80) == 0) { uint8_t x_81; @@ -7184,7 +7184,7 @@ lean_inc(x_89); lean_dec(x_80); x_90 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__9; lean_inc(x_1); -x_91 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_90); +x_91 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_90); if (lean_obj_tag(x_91) == 0) { uint8_t x_92; @@ -7230,7 +7230,7 @@ lean_inc(x_100); lean_dec(x_91); x_101 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__10; lean_inc(x_1); -x_102 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_101); +x_102 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_101); if (lean_obj_tag(x_102) == 0) { uint8_t x_103; @@ -7325,7 +7325,7 @@ lean_inc(x_122); lean_dec(x_113); x_123 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__12; lean_inc(x_1); -x_124 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_123); +x_124 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_123); if (lean_obj_tag(x_124) == 0) { uint8_t x_125; @@ -7374,7 +7374,7 @@ lean_inc(x_133); lean_dec(x_124); x_134 = l___private_Lean_Data_Lsp_Capabilities_0__Lean_Lsp_toJsonServerCapabilities____x40_Lean_Data_Lsp_Capabilities___hyg_1460____closed__13; lean_inc(x_1); -x_135 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_134); +x_135 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_134); if (lean_obj_tag(x_135) == 0) { uint8_t x_136; diff --git a/stage0/stdlib/Lean/Data/Lsp/CodeActions.c b/stage0/stdlib/Lean/Data/Lsp/CodeActions.c index 209fa40073..1d4198be6f 100644 --- a/stage0/stdlib/Lean/Data/Lsp/CodeActions.c +++ b/stage0/stdlib/Lean/Data/Lsp/CodeActions.c @@ -192,7 +192,6 @@ static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCo LEAN_EXPORT lean_object* l_Lean_Lsp_CodeActionTriggerKind_noConfusion___rarg___lambda__1___boxed(lean_object*); lean_object* l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonWorkspaceEdit____x40_Lean_Data_Lsp_Basic___hyg_4223_(lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionClientCapabilities____x40_Lean_Data_Lsp_CodeActions___hyg_2050____closed__12; -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____closed__9; LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonCodeActionContext; LEAN_EXPORT lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_toJsonCodeActionContext____x40_Lean_Data_Lsp_CodeActions___hyg_293____spec__1(lean_object*, lean_object*); @@ -273,6 +272,7 @@ uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionLiteralSupport____x40_Lean_Data_Lsp_CodeActions___hyg_1871____spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____closed__2; static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____closed__46; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonResolveSupport____x40_Lean_Data_Lsp_CodeActions___hyg_1636____closed__2; LEAN_EXPORT lean_object* l_Lean_Json_opt___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_toJsonCodeActionContext____x40_Lean_Data_Lsp_CodeActions___hyg_293____spec__3(lean_object*, lean_object*); static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionContext____x40_Lean_Data_Lsp_CodeActions___hyg_148____spec__3___closed__1; @@ -289,6 +289,7 @@ static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCo static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionClientCapabilities____x40_Lean_Data_Lsp_CodeActions___hyg_2050____closed__31; LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_toJsonResolveSupport____x40_Lean_Data_Lsp_CodeActions___hyg_1703_(lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionLiteralSupport____x40_Lean_Data_Lsp_CodeActions___hyg_1871____closed__3; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____spec__3(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____spec__4(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionClientCapabilities____x40_Lean_Data_Lsp_CodeActions___hyg_2050____closed__28; @@ -358,7 +359,6 @@ static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCo static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionContext____x40_Lean_Data_Lsp_CodeActions___hyg_148____closed__21; LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionLiteralSupportValueSet____x40_Lean_Data_Lsp_CodeActions___hyg_1754_(lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_CodeActionTriggerKind_toCtorIdx(uint8_t); static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionClientCapabilities____x40_Lean_Data_Lsp_CodeActions___hyg_2050____closed__46; static lean_object* l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1205____closed__32; @@ -2530,7 +2530,7 @@ _start: { lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionDisabled____x40_Lean_Data_Lsp_CodeActions___hyg_699____closed__1; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -3110,7 +3110,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_toJsonCodeActionOptions____x40_Lean_Data_Lsp_CodeActions___hyg_839____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -5027,7 +5027,7 @@ lean_inc(x_23); lean_dec(x_14); x_24 = l___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_toJsonCodeAction____x40_Lean_Data_Lsp_CodeActions___hyg_1131____closed__1; lean_inc(x_1); -x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_24); +x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_24); if (lean_obj_tag(x_25) == 0) { uint8_t x_26; diff --git a/stage0/stdlib/Lean/Data/Lsp/Diagnostics.c b/stage0/stdlib/Lean/Data/Lsp/Diagnostics.c index 49e76388f3..27a117883c 100644 --- a/stage0/stdlib/Lean/Data/Lsp/Diagnostics.c +++ b/stage0/stdlib/Lean/Data/Lsp/Diagnostics.c @@ -259,6 +259,7 @@ LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonDiagnosticTag(uint8_t); LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonDiagnosticCode(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_ordDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_1062____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_instToJsonDiagnosticRelatedInformation; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_DiagnosticWith_UserVisible_ofDiagnostic___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticSeverity_noConfusion___rarg___lambda__1(lean_object*); LEAN_EXPORT uint8_t l_Lean_Lsp_instInhabitedDiagnosticSeverity; @@ -308,7 +309,6 @@ static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDi uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_fromJsonDiagnosticWith____x40_Lean_Data_Lsp_Diagnostics___hyg_1553____rarg___closed__6; LEAN_EXPORT uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_beqDiagnosticCode____x40_Lean_Data_Lsp_Diagnostics___hyg_327_(lean_object*, lean_object*); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_DiagnosticTag_noConfusion(lean_object*); static lean_object* l_Lean_Lsp_instOrdDiagnosticRelatedInformation___closed__1; static lean_object* l_Lean_Lsp_instFromJsonPublishDiagnosticsParams___closed__1; @@ -2149,7 +2149,7 @@ x_12 = lean_ctor_get(x_3, 0); lean_inc(x_12); lean_dec(x_3); x_13 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_904____closed__2; -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; @@ -7427,7 +7427,7 @@ lean_inc(x_56); lean_dec(x_47); x_57 = l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_toJsonDiagnosticRelatedInformation____x40_Lean_Data_Lsp_Diagnostics___hyg_904____closed__2; lean_inc(x_1); -x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_57); +x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_57); if (lean_obj_tag(x_58) == 0) { uint8_t x_59; diff --git a/stage0/stdlib/Lean/Data/Lsp/InitShutdown.c b/stage0/stdlib/Lean/Data/Lsp/InitShutdown.c index 89e4465c0a..6676776f74 100644 --- a/stage0/stdlib/Lean/Data/Lsp/InitShutdown.c +++ b/stage0/stdlib/Lean/Data/Lsp/InitShutdown.c @@ -150,6 +150,7 @@ static lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_fromJsonC LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523____spec__4___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523____closed__2; static lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonClientInfo____x40_Lean_Data_Lsp_InitShutdown___hyg_28____closed__2; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_fromJsonInitializeResult____x40_Lean_Data_Lsp_InitShutdown___hyg_970____closed__3; LEAN_EXPORT lean_object* l_Lean_Lsp_InitializedParams_noConfusion___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_fromJsonInitializeResult____x40_Lean_Data_Lsp_InitShutdown___hyg_970____spec__2(lean_object*, lean_object*); @@ -187,7 +188,6 @@ static lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_fromJsonC LEAN_EXPORT lean_object* l_Lean_Lsp_Trace_noConfusion(lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523_(lean_object*); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Lsp_instFromJsonClientInfo; lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_CodeActions_0__Lean_Lsp_fromJsonCodeActionOptions____x40_Lean_Data_Lsp_CodeActions___hyg_885____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_fromJsonInitializeResult____x40_Lean_Data_Lsp_InitShutdown___hyg_970____spec__1(lean_object*, lean_object*); @@ -498,7 +498,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonClientInfo____x40_Lean_Data_Lsp_InitShutdown___hyg_28____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -1951,7 +1951,7 @@ lean_inc(x_1); x_5 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__2(x_1, x_4); x_6 = l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523____closed__3; lean_inc(x_1); -x_7 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_6); +x_7 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_6); x_8 = l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523____closed__4; lean_inc(x_1); x_9 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__3(x_1, x_8); @@ -4338,7 +4338,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonClientInfo____x40_Lean_Data_Lsp_InitShutdown___hyg_28____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; diff --git a/stage0/stdlib/Lean/Elab/BuiltinEvalCommand.c b/stage0/stdlib/Lean/Elab/BuiltinEvalCommand.c index 5dc0b64169..681ce38240 100644 --- a/stage0/stdlib/Lean/Elab/BuiltinEvalCommand.c +++ b/stage0/stdlib/Lean/Elab/BuiltinEvalCommand.c @@ -191,6 +191,7 @@ static lean_object* l_Lean_Elab_Command_elabEvalCoreUnsafe___lambda__17___closed static lean_object* l_Lean_Elab_Command_elabEvalCoreUnsafe___lambda__17___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabEvalCoreUnsafe___lambda__19(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); +lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(lean_object*); lean_object* l_Lean_Meta_isType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isMonad_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_ByteArray_empty; @@ -479,7 +480,6 @@ static lean_object* l___private_Lean_Elab_BuiltinEvalCommand_0__Lean_Elab_Comman static lean_object* l_Lean_Elab_Command_elabEvalCoreUnsafe___lambda__17___closed__23; static lean_object* l_Lean_Elab_Command_elabRunCmd___lambda__1___closed__8; uint8_t l_Lean_Exception_isRuntime(lean_object*); -lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(lean_object*); static lean_object* l___private_Lean_Elab_BuiltinEvalCommand_0__Lean_Elab_Command_addAndCompileExprForEval___closed__8; static lean_object* l___private_Lean_Elab_BuiltinEvalCommand_0__Lean_Elab_Command_mkFormat___closed__9; static lean_object* l_Lean_Elab_Command_elabRunCmd___lambda__1___closed__12; @@ -20559,7 +20559,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else @@ -20761,7 +20761,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else @@ -21089,7 +21089,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else @@ -21459,7 +21459,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else @@ -21829,7 +21829,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else diff --git a/stage0/stdlib/Lean/Elab/Command.c b/stage0/stdlib/Lean/Elab/Command.c index b1e3b16dff..a861711ef0 100644 --- a/stage0/stdlib/Lean/Elab/Command.c +++ b/stage0/stdlib/Lean/Elab/Command.c @@ -39,8 +39,10 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_withScope___rarg(lean_object*, lean LEAN_EXPORT lean_object* l_Lean_Elab_Command_runLintersAsync___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabCommand___spec__13___boxed(lean_object*, lean_object*); static uint64_t l_Lean_Elab_Command_mkMetaContext___closed__2; +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_instInhabitedScope___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_logException___at_Lean_Elab_Command_withLoggingExceptions___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1; lean_object* l_instBEqOfDecidableEq___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_lintersRef; lean_object* l_EIO_toBaseIO___rarg(lean_object*, lean_object*); @@ -353,6 +355,7 @@ lean_object* lean_io_promise_resolve(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_reportDiag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_mkState___closed__8; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Command___hyg_647____closed__1; +lean_object* l_Array_range___lambda__1___boxed(lean_object*); size_t lean_usize_of_nat(lean_object*); static lean_object* l___auto____x40_Lean_Elab_Command___hyg_472____closed__15; LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadLogCommandElabM___lambda__1(lean_object*, lean_object*, lean_object*); @@ -433,6 +436,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_instMonadTraceCommandElabM___lambda lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Command_runLinters___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Elab_Command_withLoggingExceptions___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Elab_Command_elabCommand___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_wrapAsyncAsSnapshot___elambda__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); @@ -848,7 +852,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Command_instInhabitedCommandElabM(lean_obje LEAN_EXPORT lean_object* l_Lean_Elab_getInfoTrees___at_Lean_Elab_Command_elabCommandTopLevel___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_wrapAsyncAsSnapshot(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_List_iotaTR(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Command_liftTermElabM___spec__2(lean_object*); static lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1___closed__5; lean_object* l_Lean_getOptionDecl(lean_object*, lean_object*); @@ -29774,12 +29777,20 @@ goto _start; } } } +static lean_object* _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_range___lambda__1___boxed), 1, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; lean_object* x_16; -x_7 = l_List_iotaTR(x_2); -x_8 = lean_array_mk(x_7); +x_7 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1; +x_8 = l_Array_ofFn___rarg(x_2, x_7); x_9 = lean_array_size(x_8); x_10 = 0; x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabCommand___spec__19(x_9, x_10, x_8, x_4, x_5, x_6); @@ -30791,6 +30802,7 @@ lean_closure_set(x_25, 7, x_23); lean_closure_set(x_25, 8, x_24); x_26 = l_Lean_Language_instInhabitedDynamicSnapshot; x_27 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18(x_26, x_22, x_25, x_4, x_5, x_18); +lean_dec(x_22); return x_27; } else @@ -30835,6 +30847,7 @@ lean_closure_set(x_35, 7, x_23); lean_closure_set(x_35, 8, x_34); x_36 = l_Lean_Language_instInhabitedDynamicSnapshot; x_37 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18(x_36, x_22, x_35, x_4, x_5, x_18); +lean_dec(x_22); return x_37; } else @@ -30862,6 +30875,7 @@ lean_closure_set(x_40, 7, x_23); lean_closure_set(x_40, 8, x_39); x_41 = l_Lean_Language_instInhabitedDynamicSnapshot; x_42 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18(x_41, x_22, x_40, x_4, x_5, x_18); +lean_dec(x_22); return x_42; } } @@ -31731,6 +31745,15 @@ lean_dec(x_2); return x_13; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_2); +return x_7; +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Command_elabCommand___spec__22___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -44237,6 +44260,8 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__16___clo lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__16___closed__3); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__16___at_Lean_Elab_Command_elabCommand___spec__17___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__16___at_Lean_Elab_Command_elabCommand___spec__17___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabCommand___spec__16___at_Lean_Elab_Command_elabCommand___spec__17___closed__1); +l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1 = _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1(); +lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabCommand___spec__18___closed__1); l_Lean_Elab_Command_elabCommand___lambda__3___closed__1 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Elab_Command_elabCommand___lambda__3___closed__1); l_Lean_Elab_Command_elabCommand___lambda__3___closed__2 = _init_l_Lean_Elab_Command_elabCommand___lambda__3___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Declaration.c b/stage0/stdlib/Lean/Elab/Declaration.c index 7e4524590a..439b9cfcf3 100644 --- a/stage0/stdlib/Lean/Elab/Declaration.c +++ b/stage0/stdlib/Lean/Elab/Declaration.c @@ -81,7 +81,6 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabAttr static lean_object* l_Lean_Elab_Command_expandMutualPreamble___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_expandDeclNamespace_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -113,7 +112,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at_Lean_El lean_object* l_Lean_compileDecl(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_replaceRef(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285____closed__8; -lean_object* l_instInhabitedReaderT___rarg___boxed(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__6; static lean_object* l_Lean_Elab_Command_elabAxiom___lambda__4___closed__11; lean_object* l_Lean_Elab_Command_elabMutualInductive(lean_object*, lean_object*, lean_object*, lean_object*); @@ -123,6 +121,7 @@ lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_declRange__1___closed__7; static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr__1___closed__4; static lean_object* l_Lean_addDeclarationRanges___at_Lean_Elab_Command_elabInitialize___spec__4___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Macro_throwError___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabDeclaration___closed__1; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__17; @@ -148,7 +147,6 @@ lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_expandMutualNamespace___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualDef___boxed(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabAttr_declRange__1___closed__2; -lean_object* l_EStateM_instMonad(lean_object*, lean_object*); uint8_t l_Lean_MapDeclarationExtension_contains___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabInitialize(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_string_dec_eq(lean_object*, lean_object*); @@ -219,9 +217,9 @@ static lean_object* l_Lean_Elab_Command_elabAttr___closed__1; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__19; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabInitialize___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(lean_object*); lean_object* l_Lean_Syntax_node6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__12; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef(lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__6___closed__1; static lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Command_elabAxiom___spec__1___closed__1; @@ -244,11 +242,13 @@ lean_object* l_Lean_Syntax_getKind(lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__6___closed__5; lean_object* l_Lean_Elab_elabAttrs___at_Lean_Elab_Command_elabMutualInductive___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1; static lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285____closed__9; static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabAttr___spec__6___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at___private_Lean_Elab_Do_0__Lean_Elab_Term_Do_destructTuple_destruct___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285____closed__12; lean_object* l_Lean_Elab_Command_liftTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_replacePrefix(lean_object*, lean_object*, lean_object*); @@ -277,12 +277,14 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___c static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRange__1___closed__3; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__6___closed__2; lean_object* l_Lean_Elab_expandDeclSig(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__9; static lean_object* l_Lean_Elab_Command_elabInitialize___closed__4; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabInitialize___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Command_getCurrMacroScope(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3; static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabDeclaration___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_expandDeclIdCore(lean_object*); @@ -315,7 +317,6 @@ static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNam static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__19; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_elabDeclaration__1___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabAttr___spec__1___closed__2; @@ -335,12 +336,10 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualPreamble_declRa lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualInductive___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MacroScopesView_review(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualElement_declRange__1___closed__3; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3; lean_object* l_Lean_Elab_realizeGlobalConstWithInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_expandMutualElement___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__39; -static lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__15; lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__5; @@ -383,7 +382,6 @@ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_Declaration_ static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Command_elabAxiom___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__26; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__11; lean_object* l_Lean_Meta_Simp_isBuiltinSimproc(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -491,7 +489,6 @@ static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMut lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_getEntries___rarg(lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_instInhabitedSyntax; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Command_elabInitialize___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMutual(lean_object*, lean_object*, lean_object*, lean_object*); @@ -524,7 +521,7 @@ LEAN_EXPORT lean_object* l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAt static lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabAxiom___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabAttr___spec__1___closed__6; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at_Lean_Elab_Command_elabInitialize___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -542,17 +539,14 @@ static lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Declaration___hyg_7285____closed__6; static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__3___closed__1; lean_object* lean_nat_add(lean_object*, lean_object*); -static lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabInitialize___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isRuntime(lean_object*); -lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(lean_object*); lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Elab_Term_expandDeclId___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___boxed(lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_ensureValidNamespace___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_expandNamespacedDeclaration_docString__1(lean_object*); static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isNamedDef___closed__21; static lean_object* l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__3; -static lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Command_elabMutual_declRange__1(lean_object*); lean_object* l_String_toSubstring_x27(lean_object*); static lean_object* l_Lean_Elab_Command_elabInitialize___lambda__1___closed__27; @@ -4835,45 +4829,7 @@ return x_30; } } } -static lean_object* _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = l_EStateM_instMonad(lean_box(0), lean_box(0)); -return x_1; -} -} -static lean_object* _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1; -x_2 = l_Lean_instInhabitedSyntax; -x_3 = l_instInhabitedOfMonad___rarg(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2; -x_2 = lean_alloc_closure((void*)(l_instInhabitedReaderT___rarg___boxed), 2, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3; -x_5 = lean_panic_fn(x_4, x_1); -x_6 = lean_apply_2(x_5, x_2, x_3); -return x_6; -} -} -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1() { _start: { lean_object* x_1; @@ -4881,7 +4837,7 @@ x_1 = lean_mk_string_unchecked("Lean.Elab.Command.expandMutualNamespace", 39, 39 return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2() { _start: { lean_object* x_1; @@ -4889,20 +4845,20 @@ x_1 = lean_mk_string_unchecked("unreachable code has been reached", 33, 33); return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_setDeclIdName___closed__5; -x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1; +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1; x_3 = lean_unsigned_to_nat(235u); x_4 = lean_unsigned_to_nat(40u); -x_5 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2; +x_5 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { uint8_t x_7; @@ -4928,9 +4884,9 @@ if (lean_obj_tag(x_12) == 0) { lean_object* x_13; lean_object* x_14; lean_dec(x_9); -x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3; +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3; lean_inc(x_5); -x_14 = l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2(x_13, x_5, x_6); +x_14 = l_panic___at___private_Lean_Elab_Do_0__Lean_Elab_Term_Do_destructTuple_destruct___spec__1(x_13, x_5, x_6); if (lean_obj_tag(x_14) == 0) { lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; @@ -5034,7 +4990,7 @@ _start: size_t x_8; lean_object* x_9; x_8 = lean_array_size(x_1); lean_inc(x_6); -x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3(x_2, x_8, x_3, x_1, x_6, x_7); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2(x_2, x_8, x_3, x_1, x_6, x_7); if (lean_obj_tag(x_9) == 0) { uint8_t x_10; @@ -5279,7 +5235,7 @@ lean_dec(x_1); return x_11; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -5287,7 +5243,7 @@ x_7 = lean_unbox_usize(x_2); lean_dec(x_2); x_8 = lean_unbox_usize(x_3); lean_dec(x_3); -x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3(x_1, x_7, x_8, x_4, x_5, x_6); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2(x_1, x_7, x_8, x_4, x_5, x_6); lean_dec(x_1); return x_9; } @@ -7371,7 +7327,7 @@ x_1 = l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___clos x_2 = l_Lean_ensureNonAmbiguous___at_Lean_Elab_Command_elabAttr___spec__2___closed__2; x_3 = lean_unsigned_to_nat(364u); x_4 = lean_unsigned_to_nat(11u); -x_5 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2; +x_5 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -13077,7 +13033,7 @@ lean_object* x_7; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_7 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_7; } else @@ -13095,7 +13051,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_12 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_12 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_12; } else @@ -13114,7 +13070,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_17 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_17; } else @@ -13138,7 +13094,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_23 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_23 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_23; } else @@ -13160,7 +13116,7 @@ lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_28 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabSyntax___spec__1___rarg(x_4); +x_28 = l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Command_elabAuxDef___spec__1___rarg(x_4); return x_28; } else @@ -13724,18 +13680,12 @@ l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand__ lean_mark_persistent(l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__9); l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__10 = _init_l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__10(); lean_mark_persistent(l___private_Lean_Elab_Declaration_0__Lean_Elab_Command_isMutualPreambleCommand___closed__10); -l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1 = _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1(); -lean_mark_persistent(l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1); -l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2 = _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2(); -lean_mark_persistent(l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2); -l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3 = _init_l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3(); -lean_mark_persistent(l_panic___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__2); -l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__3___closed__3); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_Command_expandMutualNamespace___spec__2___closed__3); l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__1 = _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__1); l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2 = _init_l___regBuiltin_Lean_Elab_Command_expandMutualNamespace__1___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Frontend.c b/stage0/stdlib/Lean/Elab/Frontend.c index ad8fdb416e..fe9e874bd5 100644 --- a/stage0/stdlib/Lean/Elab/Frontend.c +++ b/stage0/stdlib/Lean/Elab/Frontend.c @@ -16,7 +16,6 @@ extern "C" { lean_object* l_Lean_Language_Lean_process(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_profileit(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_processCommands___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_setMessages___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Firefox_Profile_export(lean_object*, double, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Json_compress(lean_object*); @@ -26,6 +25,7 @@ LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Elab_IO_processCommandsInc LEAN_EXPORT lean_object* l_Lean_Elab_IO_processCommandsIncrementally(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getCommandState___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_IO_processCommandsIncrementally_go___spec__1(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_processCommand___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_runFrontend___lambda__4___closed__2; @@ -38,9 +38,9 @@ lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getParserState___rarg(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); lean_object* l_Lean_Elab_Command_mkState(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_setCommandState___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Language_Lean_Types_0__Lean_Language_Lean_pushOpt___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_processCommands(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_updateCmdPos___rarg___boxed(lean_object*, lean_object*); @@ -66,10 +66,11 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___ lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_elabCommandAtFrontend(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_Lean_processCommands(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_runFrontend___closed__3; -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_filterMapM___at_Lean_Elab_IO_processCommandsIncrementally_go___spec__3___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_IO_processCommandsIncrementally_go___spec__2(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_runCommandElabM___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_IO_processCommandsIncrementally_go___spec__6(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_process___closed__2; @@ -84,18 +85,19 @@ static lean_object* l_Lean_Elab_runFrontend___closed__4; lean_object* lean_io_mono_nanos_now(lean_object*); lean_object* l_Lean_RBNode_insert___at_Lean_NameMap_insert___spec__1___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_elabCommandAtFrontend___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(lean_object*, lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_processCommand___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_IO_processCommandsIncrementally_go___spec__5(size_t, size_t, lean_object*); extern lean_object* l_Lean_Language_Lean_internal_cmdlineSnapshots; lean_object* lean_task_get_own(lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Server_ModuleRefs_toLspModuleRefs(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Frontend_elabCommandAtFrontend___closed__1; double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Elab_Frontend_runCommandElabM___rarg___closed__2; LEAN_EXPORT lean_object* lean_run_frontend(lean_object*, lean_object*, lean_object*, lean_object*, uint32_t, lean_object*, uint8_t, lean_object*, lean_object*); lean_object* l___private_Lean_Server_References_0__Lean_Server_toJsonIlean____x40_Lean_Server_References___hyg_1478_(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_setMessages(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_NameSet_empty; LEAN_EXPORT uint8_t l_Lean_Elab_runFrontend___lambda__3(lean_object*); @@ -107,7 +109,6 @@ lean_object* lean_runtime_forget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getInputContext(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_IO_processCommands(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_Lean_instToSnapshotTreeCommandParsedSnapshot_go(lean_object*); -lean_object* l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Language_Lean_waitForFinalCmdState_x3f(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_IO_processCommandsIncrementally_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -147,11 +148,13 @@ lean_object* lean_mk_empty_environment(uint32_t, lean_object*); lean_object* l_Lean_Option_get_x3f___at_Lean_addTraceAsMessages___spec__17(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Frontend_processCommand___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_getParserState___boxed(lean_object*); +uint8_t l_Lean_KVMap_contains(lean_object*, lean_object*); lean_object* l_Lean_Parser_parseCommand(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___lambda__5(lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_runCommandElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Frontend_updateCmdPos(lean_object*); static lean_object* l_Lean_Elab_Frontend_elabCommandAtFrontend___closed__4; static lean_object* l_Lean_Elab_Frontend_elabCommandAtFrontend___closed__2; @@ -2906,7 +2909,28 @@ return x_41; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1(size_t x_1, size_t x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1(lean_object* x_1, lean_object* x_2, uint8_t x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_ctor_get(x_2, 0); +lean_inc(x_4); +x_5 = l_Lean_KVMap_contains(x_1, x_4); +lean_dec(x_4); +if (x_5 == 0) +{ +lean_object* x_6; +x_6 = l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(x_1, x_2, x_3); +return x_6; +} +else +{ +lean_dec(x_2); +return x_1; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2(size_t x_1, size_t x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -2933,7 +2957,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -2980,7 +3004,7 @@ return x_4; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -3224,7 +3248,7 @@ lean_inc(x_2); x_33 = l_Lean_Language_SnapshotTree_getAll(x_2); x_34 = lean_array_size(x_33); x_35 = 0; -x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1(x_34, x_35, x_33); +x_36 = l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2(x_34, x_35, x_33); x_37 = 1; x_38 = l_Lean_Elab_runFrontend___lambda__4___closed__2; x_39 = l_Lean_Name_toString(x_5, x_37, x_38); @@ -3465,7 +3489,7 @@ x_17 = lean_float_div(x_15, x_16); x_18 = 1; x_19 = l_Lean_Parser_mkInputContext(x_1, x_3, x_18); x_20 = l_Lean_Elab_runFrontend___closed__2; -x_21 = l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(x_2, x_20, x_18); +x_21 = l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1(x_2, x_20, x_18); x_22 = lean_box_uint32(x_5); lean_inc(x_21); lean_inc(x_4); @@ -3575,7 +3599,7 @@ size_t x_114; size_t x_115; lean_object* x_116; x_114 = 0; x_115 = lean_usize_of_nat(x_32); lean_dec(x_32); -x_116 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(x_8, x_114, x_115, x_31); +x_116 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4(x_8, x_114, x_115, x_31); lean_dec(x_8); x_35 = x_116; goto block_112; @@ -3772,7 +3796,7 @@ x_87 = 0; x_88 = lean_usize_of_nat(x_46); lean_dec(x_46); x_89 = l_Lean_Elab_runFrontend___closed__3; -x_90 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2(x_45, x_87, x_88, x_89); +x_90 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(x_45, x_87, x_88, x_89); lean_dec(x_45); x_91 = l_Lean_Server_findModuleRefs(x_67, x_90, x_13, x_13); lean_dec(x_90); @@ -3958,7 +3982,7 @@ size_t x_222; size_t x_223; lean_object* x_224; x_222 = 0; x_223 = lean_usize_of_nat(x_140); lean_dec(x_140); -x_224 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(x_8, x_222, x_223, x_139); +x_224 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4(x_8, x_222, x_223, x_139); lean_dec(x_8); x_143 = x_224; goto block_220; @@ -4159,7 +4183,7 @@ x_195 = 0; x_196 = lean_usize_of_nat(x_154); lean_dec(x_154); x_197 = l_Lean_Elab_runFrontend___closed__3; -x_198 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2(x_153, x_195, x_196, x_197); +x_198 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3(x_153, x_195, x_196, x_197); lean_dec(x_153); x_199 = l_Lean_Server_findModuleRefs(x_175, x_198, x_13, x_13); lean_dec(x_198); @@ -4264,7 +4288,17 @@ return x_219; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = lean_unbox(x_3); +lean_dec(x_3); +x_5 = l_Lean_Option_setIfNotSet___at_Lean_Elab_runFrontend___spec__1(x_1, x_2, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; lean_object* x_6; @@ -4272,23 +4306,10 @@ x_4 = lean_unbox_usize(x_1); lean_dec(x_1); x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__1(x_4, x_5, x_3); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_runFrontend___spec__2(x_4, x_5, x_3); return x_6; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -size_t x_5; size_t x_6; lean_object* x_7; -x_5 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_6 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_7 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__2(x_1, x_5, x_6, x_4); -lean_dec(x_1); -return x_7; -} -} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -4302,6 +4323,19 @@ lean_dec(x_1); return x_7; } } +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_runFrontend___spec__4(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_runFrontend___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { diff --git a/stage0/stdlib/Lean/Elab/LetRec.c b/stage0/stdlib/Lean/Elab/LetRec.c index 54e883bca6..2a5cf71646 100644 --- a/stage0/stdlib/Lean/Elab/LetRec.c +++ b/stage0/stdlib/Lean/Elab/LetRec.c @@ -13,20 +13,20 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLetRec___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabLetRec___spec__2(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_utf8_extract(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__23___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__4___closed__2; lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2; lean_object* l_Lean_MapDeclarationExtension_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___closed__4; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__1___closed__2; @@ -34,18 +34,19 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec static lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__22___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg(lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__3; +uint8_t l_Lean_Syntax_matchesIdent(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__2(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLetRec___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__1___lambda__1(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3; static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; extern lean_object* l_Lean_declRangeExt; lean_object* l_Lean_throwError___at_Lean_Elab_Term_mkAuxName___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_withAuxLocalDecls(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_maxRecDepthErrorMessage; +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1; lean_object* l_Lean_indentD(lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); @@ -63,8 +64,11 @@ static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_Le LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6; lean_object* l_Lean_Syntax_getArgs(lean_object*); lean_object* l_Lean_replaceRef(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__19___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -77,6 +81,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_L lean_object* l_Lean_Expr_fvarId_x21(lean_object*); lean_object* l_ReaderT_pure___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__12___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_logException___at_Lean_Elab_Term_exceptionToSorry___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__22___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__2___boxed(lean_object**); lean_object* l_Lean_addBuiltinDeclarationRanges(lean_object*, lean_object*, lean_object*); @@ -112,13 +117,15 @@ LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_ static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__7; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__22___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_expandOptDocComment_x3f___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__19___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabLetRec___spec__2___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3; lean_object* lean_st_ref_take(lean_object*, lean_object*); lean_object* l_liftExcept___at_Lean_Elab_liftMacroM___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__6___closed__5; @@ -130,15 +137,18 @@ lean_object* l_Lean_MessageData_ofSyntax(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__22___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_expandOptType(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_toAttributeKind___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_applyAttributesAt(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); @@ -156,23 +166,26 @@ lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_expandOptDocComment_x3f___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__9; LEAN_EXPORT lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1; lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Term_instAddErrorMessageContextTermElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__2___boxed(lean_object**); lean_object* l_List_forM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; lean_object* l_Lean_Syntax_getOptional_x3f(lean_object*); lean_object* l_Lean_Elab_Term_expandMatchAltsIntoMatch___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2; lean_object* lean_array_to_list(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5; extern lean_object* l_Lean_Elab_Term_termElabAttribute; LEAN_EXPORT lean_object* l_Lean_Elab_elabDeclAttrs___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_append(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_getDeclName_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedExpr; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -186,14 +199,16 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__4; +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isIdent(lean_object*); lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_elabTermAux___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__2___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1___closed__4; static lean_object* l_Lean_Elab_expandOptDocComment_x3f___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__1___closed__1; @@ -203,6 +218,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_register LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_withAuxLocalDecls_loop___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__8; lean_object* l_Lean_addDocString_x27___at_Lean_Elab_Term_expandDeclId___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -224,12 +240,13 @@ lean_object* l_Lean_Elab_TerminationHints_rememberExtraParams(lean_object*, lean static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__19___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1; static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__21(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4; lean_object* l_Lean_Elab_Term_addLocalVarInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__2___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addDeclarationRanges___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__1___boxed(lean_object*); @@ -258,6 +275,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_L lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isNone(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ResolveName_resolveGlobalName(lean_object*, lean_object*, lean_object*, lean_object*); @@ -266,23 +284,23 @@ static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_Le LEAN_EXPORT lean_object* l_Lean_Elab_elabDeclAttrs___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___closed__5; lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; lean_object* l_Lean_Elab_Term_withInfoContext_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__21___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_withAuxLocalDecls_loop(lean_object*); static lean_object* l_Lean_Elab_expandOptDocComment_x3f___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__1___closed__3; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedDeclarationRanges; lean_object* lean_erase_macro_scopes(lean_object*); lean_object* l_List_reverse___rarg(lean_object*); lean_object* l_Lean_Elab_Term_withAuxDecl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_elabAttrs___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1___closed__6; -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__5; lean_object* lean_array_uget(lean_object*, size_t); @@ -291,16 +309,17 @@ static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_Le LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec_declRange__1___closed__2; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabLetRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7; lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__1___boxed(lean_object*); lean_object* l_Lean_getAttributeImpl(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__1___closed__1; @@ -317,6 +336,7 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec lean_object* l_Lean_expandMacros(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__19___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4; lean_object* l_Lean_Elab_Term_mkBodyInfo(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec__1___closed__6; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); @@ -324,18 +344,18 @@ lean_object* l_Lean_MessageData_ofName(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_elabLetRecDeclValues___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_withAuxLocalDecls_loop___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__1(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Term_elabLetRec__1___closed__5; lean_object* l_Lean_Elab_Term_elabType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_registerLetRecsToLift___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_pure___at_Lean_Elab_liftMacroM___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_elabAttr___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__18___lambda__1(lean_object*); lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_Binders_0__Lean_Elab_Term_elabBinderViews_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__19___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_withDeclName___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { @@ -1884,543 +1904,310 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { if (lean_obj_tag(x_1) == 0) { -lean_object* x_12; -lean_dec(x_9); -lean_dec(x_5); -x_12 = lean_box(0); +lean_object* x_13; +lean_dec(x_10); +lean_dec(x_6); +x_13 = lean_box(0); if (lean_obj_tag(x_2) == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_14, 0, x_3); -lean_ctor_set(x_14, 1, x_12); -lean_ctor_set(x_14, 2, x_4); -lean_ctor_set(x_14, 3, x_12); -lean_ctor_set(x_14, 4, x_13); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_11); -return x_15; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_15, 0, x_3); +lean_ctor_set(x_15, 1, x_13); +lean_ctor_set(x_15, 2, x_4); +lean_ctor_set(x_15, 3, x_5); +lean_ctor_set(x_15, 4, x_13); +lean_ctor_set(x_15, 5, x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_12); +return x_16; } else { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_2); -if (x_16 == 0) +uint8_t x_17; +x_17 = !lean_is_exclusive(x_2); +if (x_17 == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_unsigned_to_nat(0u); -x_18 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_18, 0, x_3); -lean_ctor_set(x_18, 1, x_2); -lean_ctor_set(x_18, 2, x_4); -lean_ctor_set(x_18, 3, x_12); -lean_ctor_set(x_18, 4, x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_11); -return x_19; +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_unsigned_to_nat(0u); +x_19 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_19, 0, x_3); +lean_ctor_set(x_19, 1, x_2); +lean_ctor_set(x_19, 2, x_4); +lean_ctor_set(x_19, 3, x_5); +lean_ctor_set(x_19, 4, x_13); +lean_ctor_set(x_19, 5, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_12); +return x_20; } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_2, 0); -lean_inc(x_20); +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_21 = lean_ctor_get(x_2, 0); +lean_inc(x_21); lean_dec(x_2); -x_21 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_21, 0, x_20); -x_22 = lean_unsigned_to_nat(0u); -x_23 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_23, 0, x_3); -lean_ctor_set(x_23, 1, x_21); -lean_ctor_set(x_23, 2, x_4); -lean_ctor_set(x_23, 3, x_12); -lean_ctor_set(x_23, 4, x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_11); -return x_24; +x_22 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_24, 0, x_3); +lean_ctor_set(x_24, 1, x_22); +lean_ctor_set(x_24, 2, x_4); +lean_ctor_set(x_24, 3, x_5); +lean_ctor_set(x_24, 4, x_13); +lean_ctor_set(x_24, 5, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_12); +return x_25; } } } else { -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) +uint8_t x_26; +x_26 = !lean_is_exclusive(x_1); +if (x_26 == 0) { -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_1, 0); -x_27 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__5; -lean_inc(x_26); -x_28 = l_Lean_Syntax_isOfKind(x_26, x_27); -if (x_28 == 0) +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_1, 0); +x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__5; +lean_inc(x_27); +x_29 = l_Lean_Syntax_isOfKind(x_27, x_28); +if (x_29 == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; +lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_free_object(x_1); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_29 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7; -x_30 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__10(x_26, x_29, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_26); -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +x_30 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7; +x_31 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__10(x_27, x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_27); +x_32 = !lean_is_exclusive(x_31); +if (x_32 == 0) { -return x_30; +return x_31; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_30, 0); -x_33 = lean_ctor_get(x_30, 1); +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_31, 0); +x_34 = lean_ctor_get(x_31, 1); +lean_inc(x_34); lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_dec(x_31); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_9); -lean_dec(x_5); -x_35 = lean_unsigned_to_nat(1u); -x_36 = l_Lean_Syntax_getArg(x_26, x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_26); -lean_ctor_set(x_37, 1, x_36); -lean_ctor_set(x_1, 0, x_37); +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_10); +lean_dec(x_6); +x_36 = lean_unsigned_to_nat(1u); +x_37 = l_Lean_Syntax_getArg(x_27, x_36); +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_27); +lean_ctor_set(x_38, 1, x_37); +lean_ctor_set(x_1, 0, x_38); if (lean_obj_tag(x_2) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = lean_box(0); -x_39 = lean_unsigned_to_nat(0u); -x_40 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_40, 0, x_3); -lean_ctor_set(x_40, 1, x_38); -lean_ctor_set(x_40, 2, x_4); -lean_ctor_set(x_40, 3, x_1); -lean_ctor_set(x_40, 4, x_39); -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_11); -return x_41; +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_39 = lean_box(0); +x_40 = lean_unsigned_to_nat(0u); +x_41 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_41, 0, x_3); +lean_ctor_set(x_41, 1, x_39); +lean_ctor_set(x_41, 2, x_4); +lean_ctor_set(x_41, 3, x_5); +lean_ctor_set(x_41, 4, x_1); +lean_ctor_set(x_41, 5, x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_12); +return x_42; } else { -uint8_t x_42; -x_42 = !lean_is_exclusive(x_2); -if (x_42 == 0) +uint8_t x_43; +x_43 = !lean_is_exclusive(x_2); +if (x_43 == 0) { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_unsigned_to_nat(0u); -x_44 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_44, 0, x_3); -lean_ctor_set(x_44, 1, x_2); -lean_ctor_set(x_44, 2, x_4); -lean_ctor_set(x_44, 3, x_1); -lean_ctor_set(x_44, 4, x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_11); -return x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_unsigned_to_nat(0u); +x_45 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_45, 0, x_3); +lean_ctor_set(x_45, 1, x_2); +lean_ctor_set(x_45, 2, x_4); +lean_ctor_set(x_45, 3, x_5); +lean_ctor_set(x_45, 4, x_1); +lean_ctor_set(x_45, 5, x_44); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_12); +return x_46; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_46 = lean_ctor_get(x_2, 0); -lean_inc(x_46); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_47 = lean_ctor_get(x_2, 0); +lean_inc(x_47); lean_dec(x_2); -x_47 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_47, 0, x_46); -x_48 = lean_unsigned_to_nat(0u); -x_49 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_49, 0, x_3); -lean_ctor_set(x_49, 1, x_47); -lean_ctor_set(x_49, 2, x_4); -lean_ctor_set(x_49, 3, x_1); -lean_ctor_set(x_49, 4, x_48); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_11); -return x_50; +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_47); +x_49 = lean_unsigned_to_nat(0u); +x_50 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_50, 0, x_3); +lean_ctor_set(x_50, 1, x_48); +lean_ctor_set(x_50, 2, x_4); +lean_ctor_set(x_50, 3, x_5); +lean_ctor_set(x_50, 4, x_1); +lean_ctor_set(x_50, 5, x_49); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_12); +return x_51; } } } } else { -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_1, 0); -lean_inc(x_51); +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_1, 0); +lean_inc(x_52); lean_dec(x_1); -x_52 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__5; -lean_inc(x_51); -x_53 = l_Lean_Syntax_isOfKind(x_51, x_52); -if (x_53 == 0) +x_53 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__5; +lean_inc(x_52); +x_54 = l_Lean_Syntax_isOfKind(x_52, x_53); +if (x_54 == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_54 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7; -x_55 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__10(x_51, x_54, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_51); -x_56 = lean_ctor_get(x_55, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_55, 1); +x_55 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7; +x_56 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__10(x_52, x_55, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_52); +x_57 = lean_ctor_get(x_56, 0); lean_inc(x_57); -if (lean_is_exclusive(x_55)) { - lean_ctor_release(x_55, 0); - lean_ctor_release(x_55, 1); - x_58 = x_55; +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_59 = x_56; } else { - lean_dec_ref(x_55); - x_58 = lean_box(0); + lean_dec_ref(x_56); + x_59 = lean_box(0); } -if (lean_is_scalar(x_58)) { - x_59 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_59)) { + x_60 = lean_alloc_ctor(1, 2, 0); } else { - x_59 = x_58; + x_60 = x_59; } -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_57); -return x_59; +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_58); +return x_60; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_9); -lean_dec(x_5); -x_60 = lean_unsigned_to_nat(1u); -x_61 = l_Lean_Syntax_getArg(x_51, x_60); -x_62 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_62, 0, x_51); -lean_ctor_set(x_62, 1, x_61); -x_63 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_63, 0, x_62); +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_10); +lean_dec(x_6); +x_61 = lean_unsigned_to_nat(1u); +x_62 = l_Lean_Syntax_getArg(x_52, x_61); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_52); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_64, 0, x_63); if (lean_obj_tag(x_2) == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_64 = lean_box(0); -x_65 = lean_unsigned_to_nat(0u); -x_66 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_66, 0, x_3); -lean_ctor_set(x_66, 1, x_64); -lean_ctor_set(x_66, 2, x_4); -lean_ctor_set(x_66, 3, x_63); -lean_ctor_set(x_66, 4, x_65); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_11); -return x_67; +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_65 = lean_box(0); +x_66 = lean_unsigned_to_nat(0u); +x_67 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_67, 0, x_3); +lean_ctor_set(x_67, 1, x_65); +lean_ctor_set(x_67, 2, x_4); +lean_ctor_set(x_67, 3, x_5); +lean_ctor_set(x_67, 4, x_64); +lean_ctor_set(x_67, 5, x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_12); +return x_68; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_68 = lean_ctor_get(x_2, 0); -lean_inc(x_68); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_69 = lean_ctor_get(x_2, 0); +lean_inc(x_69); if (lean_is_exclusive(x_2)) { lean_ctor_release(x_2, 0); - x_69 = x_2; + x_70 = x_2; } else { lean_dec_ref(x_2); - x_69 = lean_box(0); + x_70 = lean_box(0); } -if (lean_is_scalar(x_69)) { - x_70 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_70)) { + x_71 = lean_alloc_ctor(1, 1, 0); } else { - x_70 = x_69; + x_71 = x_70; } -lean_ctor_set(x_70, 0, x_68); -x_71 = lean_unsigned_to_nat(0u); -x_72 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_72, 0, x_3); -lean_ctor_set(x_72, 1, x_70); -lean_ctor_set(x_72, 2, x_4); -lean_ctor_set(x_72, 3, x_63); -lean_ctor_set(x_72, 4, x_71); -x_73 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_73, 0, x_72); -lean_ctor_set(x_73, 1, x_11); -return x_73; +lean_ctor_set(x_71, 0, x_69); +x_72 = lean_unsigned_to_nat(0u); +x_73 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_73, 0, x_3); +lean_ctor_set(x_73, 1, x_71); +lean_ctor_set(x_73, 2, x_4); +lean_ctor_set(x_73, 3, x_5); +lean_ctor_set(x_73, 4, x_64); +lean_ctor_set(x_73, 5, x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_73); +lean_ctor_set(x_74, 1, x_12); +return x_74; } } } } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_unsigned_to_nat(2u); -x_13 = l_Lean_Syntax_getArg(x_1, x_12); -lean_inc(x_13); -x_14 = l_Lean_Syntax_matchesNull(x_13, x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Syntax_matchesNull(x_13, x_15); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -lean_dec(x_4); -lean_dec(x_2); -x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; -x_18 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_1, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_1); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_18, 0); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_18); -x_22 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_unsigned_to_nat(3u); -x_24 = l_Lean_Syntax_getArg(x_1, x_23); -if (lean_obj_tag(x_4) == 0) -{ -uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = 0; -x_26 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; -x_27 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_27, 0, x_1); -lean_ctor_set(x_27, 1, x_26); -lean_ctor_set(x_27, 2, x_24); -lean_ctor_set_uint8(x_27, sizeof(void*)*3, x_25); -lean_ctor_set_uint8(x_27, sizeof(void*)*3 + 1, x_25); -x_28 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_28, 0, x_27); -x_29 = lean_apply_8(x_2, x_28, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_29; -} -else -{ -uint8_t x_30; -x_30 = !lean_is_exclusive(x_4); -if (x_30 == 0) -{ -lean_object* x_31; uint8_t x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; -x_31 = lean_ctor_get(x_4, 0); -lean_dec(x_31); -x_32 = 1; -x_33 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; -x_34 = 0; -x_35 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_35, 0, x_1); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_35, 2, x_24); -lean_ctor_set_uint8(x_35, sizeof(void*)*3, x_32); -lean_ctor_set_uint8(x_35, sizeof(void*)*3 + 1, x_34); -lean_ctor_set(x_4, 0, x_35); -x_36 = lean_apply_8(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_36; -} -else -{ -uint8_t x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_4); -x_37 = 1; -x_38 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; -x_39 = 0; -x_40 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_40, 0, x_1); -lean_ctor_set(x_40, 1, x_38); -lean_ctor_set(x_40, 2, x_24); -lean_ctor_set_uint8(x_40, sizeof(void*)*3, x_37); -lean_ctor_set_uint8(x_40, sizeof(void*)*3 + 1, x_39); -x_41 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_41, 0, x_40); -x_42 = lean_apply_8(x_2, x_41, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_42; -} -} -} -} -else -{ -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_unsigned_to_nat(0u); -x_44 = l_Lean_Syntax_getArg(x_13, x_43); -lean_dec(x_13); -lean_inc(x_44); -x_45 = l_Lean_Syntax_matchesNull(x_44, x_43); -if (x_45 == 0) -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_unsigned_to_nat(3u); -x_47 = l_Lean_Syntax_getArg(x_1, x_46); -x_48 = l_Lean_Syntax_getArgs(x_44); -lean_dec(x_44); -if (lean_obj_tag(x_4) == 0) -{ -uint8_t x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = 0; -x_50 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_50, 0, x_1); -lean_ctor_set(x_50, 1, x_48); -lean_ctor_set(x_50, 2, x_47); -lean_ctor_set_uint8(x_50, sizeof(void*)*3, x_49); -lean_ctor_set_uint8(x_50, sizeof(void*)*3 + 1, x_49); -x_51 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_51, 0, x_50); -x_52 = lean_apply_8(x_2, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_52; -} -else -{ -uint8_t x_53; -x_53 = !lean_is_exclusive(x_4); -if (x_53 == 0) -{ -lean_object* x_54; uint8_t x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_4, 0); -lean_dec(x_54); -x_55 = 1; -x_56 = 0; -x_57 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_57, 0, x_1); -lean_ctor_set(x_57, 1, x_48); -lean_ctor_set(x_57, 2, x_47); -lean_ctor_set_uint8(x_57, sizeof(void*)*3, x_55); -lean_ctor_set_uint8(x_57, sizeof(void*)*3 + 1, x_56); -lean_ctor_set(x_4, 0, x_57); -x_58 = lean_apply_8(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_58; -} -else -{ -uint8_t x_59; uint8_t x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_4); -x_59 = 1; -x_60 = 0; -x_61 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_61, 0, x_1); -lean_ctor_set(x_61, 1, x_48); -lean_ctor_set(x_61, 2, x_47); -lean_ctor_set_uint8(x_61, sizeof(void*)*3, x_59); -lean_ctor_set_uint8(x_61, sizeof(void*)*3 + 1, x_60); -x_62 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_62, 0, x_61); -x_63 = lean_apply_8(x_2, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_63; -} -} -} -else -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -lean_dec(x_44); -lean_dec(x_4); -lean_dec(x_2); -x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5; -x_65 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_1, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_1); -x_66 = !lean_is_exclusive(x_65); -if (x_66 == 0) -{ -return x_65; -} -else -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_65, 0); -x_68 = lean_ctor_get(x_65, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_65); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; -} -} -} +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_1); +lean_ctor_set(x_12, 1, x_4); +x_13 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_13, 0, x_12); +x_14 = lean_apply_8(x_2, x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_14; } } static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); return x_1; } } @@ -2436,7 +2223,622 @@ x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3() { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_5, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_4); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed), 12, 4); +lean_closure_set(x_17, 0, x_1); +lean_closure_set(x_17, 1, x_2); +lean_closure_set(x_17, 2, x_3); +lean_closure_set(x_17, 3, x_5); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2; +lean_inc(x_16); +x_19 = l_Lean_Syntax_isOfKind(x_16, x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_17); +lean_free_object(x_4); +lean_dec(x_16); +x_20 = lean_box(0); +x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_5, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_unsigned_to_nat(1u); +x_23 = l_Lean_Syntax_getArg(x_16, x_22); +x_24 = l_Lean_Syntax_isNone(x_23); +if (x_24 == 0) +{ +lean_object* x_25; uint8_t x_26; +x_25 = lean_unsigned_to_nat(2u); +lean_inc(x_23); +x_26 = l_Lean_Syntax_matchesNull(x_23, x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_23); +lean_dec(x_17); +lean_free_object(x_4); +lean_dec(x_16); +x_27 = lean_box(0); +x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_5, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_29 = l_Lean_Syntax_getArg(x_23, x_22); +lean_dec(x_23); +lean_ctor_set(x_4, 0, x_29); +x_30 = lean_box(0); +x_31 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_16, x_17, x_30, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +lean_free_object(x_4); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_32 = lean_box(0); +x_33 = lean_box(0); +x_34 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_16, x_17, x_33, x_32, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_34; +} +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_35 = lean_ctor_get(x_4, 0); +lean_inc(x_35); +lean_dec(x_4); +lean_inc(x_5); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_36 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed), 12, 4); +lean_closure_set(x_36, 0, x_1); +lean_closure_set(x_36, 1, x_2); +lean_closure_set(x_36, 2, x_3); +lean_closure_set(x_36, 3, x_5); +x_37 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2; +lean_inc(x_35); +x_38 = l_Lean_Syntax_isOfKind(x_35, x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_36); +lean_dec(x_35); +x_39 = lean_box(0); +x_40 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_5, x_39, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_40; +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = lean_unsigned_to_nat(1u); +x_42 = l_Lean_Syntax_getArg(x_35, x_41); +x_43 = l_Lean_Syntax_isNone(x_42); +if (x_43 == 0) +{ +lean_object* x_44; uint8_t x_45; +x_44 = lean_unsigned_to_nat(2u); +lean_inc(x_42); +x_45 = l_Lean_Syntax_matchesNull(x_42, x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_42); +lean_dec(x_36); +lean_dec(x_35); +x_46 = lean_box(0); +x_47 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_5, x_46, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_48 = l_Lean_Syntax_getArg(x_42, x_41); +lean_dec(x_42); +x_49 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_49, 0, x_48); +x_50 = lean_box(0); +x_51 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_35, x_36, x_50, x_49, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_42); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_52 = lean_box(0); +x_53 = lean_box(0); +x_54 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_35, x_36, x_53, x_52, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_54; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = lean_apply_8(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_11; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_12 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_1, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) +{ +return x_12; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_12); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_12 = 0; +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; +x_14 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_13); +lean_ctor_set(x_14, 2, x_4); +lean_ctor_set_uint8(x_14, sizeof(void*)*3, x_12); +lean_ctor_set_uint8(x_14, sizeof(void*)*3 + 1, x_12); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = lean_apply_8(x_2, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_3); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_18 = lean_ctor_get(x_3, 0); +lean_dec(x_18); +x_19 = 1; +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; +x_21 = 0; +x_22 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_22, 0, x_1); +lean_ctor_set(x_22, 1, x_20); +lean_ctor_set(x_22, 2, x_4); +lean_ctor_set_uint8(x_22, sizeof(void*)*3, x_19); +lean_ctor_set_uint8(x_22, sizeof(void*)*3 + 1, x_21); +lean_ctor_set(x_3, 0, x_22); +x_23 = lean_apply_8(x_2, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_23; +} +else +{ +uint8_t x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_3); +x_24 = 1; +x_25 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; +x_26 = 0; +x_27 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_27, 0, x_1); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_27, 2, x_4); +lean_ctor_set_uint8(x_27, sizeof(void*)*3, x_24); +lean_ctor_set_uint8(x_27, sizeof(void*)*3 + 1, x_26); +x_28 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_28, 0, x_27); +x_29 = lean_apply_8(x_2, x_28, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = 0; +x_14 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_4); +lean_ctor_set(x_14, 2, x_5); +lean_ctor_set_uint8(x_14, sizeof(void*)*3, x_13); +lean_ctor_set_uint8(x_14, sizeof(void*)*3 + 1, x_13); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = lean_apply_8(x_2, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_3); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_3, 0); +lean_dec(x_18); +x_19 = 1; +x_20 = 0; +x_21 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_21, 0, x_1); +lean_ctor_set(x_21, 1, x_4); +lean_ctor_set(x_21, 2, x_5); +lean_ctor_set_uint8(x_21, sizeof(void*)*3, x_19); +lean_ctor_set_uint8(x_21, sizeof(void*)*3 + 1, x_20); +lean_ctor_set(x_3, 0, x_21); +x_22 = lean_apply_8(x_2, x_3, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_22; +} +else +{ +uint8_t x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_3); +x_23 = 1; +x_24 = 0; +x_25 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_25, 0, x_1); +lean_ctor_set(x_25, 1, x_4); +lean_ctor_set(x_25, 2, x_5); +lean_ctor_set_uint8(x_25, sizeof(void*)*3, x_23); +lean_ctor_set_uint8(x_25, sizeof(void*)*3 + 1, x_24); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_25); +x_27 = lean_apply_8(x_2, x_26, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_27; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2; +x_13 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_1, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +return x_13; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_13); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_15 = lean_unsigned_to_nat(2u); +x_16 = l_Lean_Syntax_getArg(x_1, x_15); +lean_inc(x_16); +x_17 = l_Lean_Syntax_matchesNull(x_16, x_15); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; +lean_dec(x_5); +lean_dec(x_4); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Syntax_matchesNull(x_16, x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_7); +lean_dec(x_3); +x_20 = lean_box(0); +x_21 = lean_apply_8(x_2, x_20, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_2); +x_22 = lean_unsigned_to_nat(3u); +x_23 = l_Lean_Syntax_getArg(x_1, x_22); +x_24 = lean_apply_9(x_3, x_7, x_23, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +lean_dec(x_3); +lean_dec(x_2); +x_25 = lean_unsigned_to_nat(0u); +x_26 = l_Lean_Syntax_getArg(x_16, x_25); +lean_dec(x_16); +lean_inc(x_26); +x_27 = l_Lean_Syntax_matchesNull(x_26, x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_5); +x_28 = lean_unsigned_to_nat(3u); +x_29 = l_Lean_Syntax_getArg(x_1, x_28); +x_30 = l_Lean_Syntax_getArgs(x_26); +lean_dec(x_26); +x_31 = lean_apply_10(x_4, x_7, x_30, x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_26); +lean_dec(x_4); +x_32 = lean_unsigned_to_nat(3u); +x_33 = l_Lean_Syntax_getArg(x_1, x_32); +x_34 = lean_apply_9(x_5, x_7, x_33, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_18 = l_Lean_Syntax_matchesNull(x_1, x_17); +if (x_18 == 0) +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +if (x_2 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_19 = lean_box(0); +x_20 = lean_apply_8(x_3, x_19, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_20; +} +else +{ +lean_object* x_21; +lean_dec(x_3); +x_21 = lean_apply_9(x_4, x_9, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +lean_dec(x_4); +lean_dec(x_3); +x_22 = lean_unsigned_to_nat(0u); +x_23 = l_Lean_Syntax_getArg(x_1, x_22); +lean_dec(x_1); +lean_inc(x_23); +x_24 = l_Lean_Syntax_matchesNull(x_23, x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_7); +x_25 = l_Lean_Syntax_getArgs(x_23); +lean_dec(x_23); +x_26 = lean_apply_10(x_6, x_9, x_25, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_26; +} +else +{ +lean_object* x_27; +lean_dec(x_23); +lean_dec(x_6); +x_27 = lean_apply_9(x_7, x_9, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; uint8_t x_16; +x_15 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_16 = l_Lean_Syntax_matchesNull(x_1, x_15); +if (x_16 == 0) +{ +lean_object* x_17; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_17 = lean_apply_9(x_2, x_7, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +lean_dec(x_2); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Syntax_getArg(x_1, x_18); +lean_dec(x_1); +lean_inc(x_19); +x_20 = l_Lean_Syntax_matchesNull(x_19, x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_5); +x_21 = l_Lean_Syntax_getArgs(x_19); +lean_dec(x_19); +x_22 = lean_apply_10(x_4, x_7, x_21, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_22; +} +else +{ +lean_object* x_23; +lean_dec(x_19); +lean_dec(x_4); +x_23 = lean_apply_9(x_5, x_7, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_23; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__1; +x_2 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__2; +x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__3; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3() { _start: { lean_object* x_1; @@ -2444,130 +2846,131 @@ x_1 = lean_mk_string_unchecked("terminationBy\?", 14, 14); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__1; x_2 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__2; x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__3; -x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpointursion", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { if (lean_obj_tag(x_3) == 0) { lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); -x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_4, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_1, x_4, x_2, x_3, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_13; } else { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_3); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_15 = lean_ctor_get(x_3, 0); +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_14 = lean_ctor_get(x_3, 0); +lean_inc(x_14); +lean_inc(x_3); lean_inc(x_2); lean_inc(x_4); lean_inc(x_1); -x_16 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed), 11, 3); -lean_closure_set(x_16, 0, x_1); -lean_closure_set(x_16, 1, x_4); -lean_closure_set(x_16, 2, x_2); -x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2; -lean_inc(x_15); -x_18 = l_Lean_Syntax_isOfKind(x_15, x_17); -if (x_18 == 0) +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4), 12, 4); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_4); +lean_closure_set(x_15, 2, x_2); +lean_closure_set(x_15, 3, x_3); +x_16 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2; +lean_inc(x_14); +x_17 = l_Lean_Syntax_isOfKind(x_14, x_16); +if (x_17 == 0) { -lean_object* x_19; uint8_t x_20; -lean_dec(x_16); -lean_free_object(x_3); -x_19 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4; -lean_inc(x_15); -x_20 = l_Lean_Syntax_isOfKind(x_15, x_19); -if (x_20 == 0) +lean_object* x_18; uint8_t x_19; +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4; +lean_inc(x_14); +x_19 = l_Lean_Syntax_isOfKind(x_14, x_18); +if (x_19 == 0) { -lean_object* x_21; lean_object* x_22; uint8_t x_23; +lean_object* x_20; uint8_t x_21; lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; -x_22 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_15, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2; +lean_inc(x_14); +x_21 = l_Lean_Syntax_isOfKind(x_14, x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +lean_dec(x_15); +x_22 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_23 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_14, x_22, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_15); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) +lean_dec(x_14); +x_24 = !lean_is_exclusive(x_23); +if (x_24 == 0) { -return x_22; +return x_23; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_22, 0); -x_25 = lean_ctor_get(x_22, 1); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_23, 0); +x_26 = lean_ctor_get(x_23, 1); +lean_inc(x_26); lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; +lean_dec(x_23); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; } } else { -lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -x_27 = lean_box(0); -x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_4, x_2, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_28; -} -} -else +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = lean_unsigned_to_nat(1u); +x_29 = l_Lean_Syntax_getArg(x_14, x_28); +x_30 = l_Lean_Syntax_isNone(x_29); +if (x_30 == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_29 = lean_unsigned_to_nat(1u); -x_30 = l_Lean_Syntax_getArg(x_15, x_29); -x_31 = l_Lean_Syntax_isNone(x_30); -if (x_31 == 0) -{ -uint8_t x_32; -lean_inc(x_30); -x_32 = l_Lean_Syntax_matchesNull(x_30, x_29); +lean_object* x_31; uint8_t x_32; +x_31 = lean_unsigned_to_nat(2u); +x_32 = l_Lean_Syntax_matchesNull(x_29, x_31); if (x_32 == 0) { lean_object* x_33; lean_object* x_34; uint8_t x_35; -lean_dec(x_30); -lean_dec(x_16); -lean_free_object(x_3); -x_33 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; -x_34 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_15, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_15); +x_33 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_34 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_14, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_15); +lean_dec(x_14); x_35 = !lean_is_exclusive(x_34); if (x_35 == 0) { @@ -2589,180 +2992,479 @@ return x_38; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_39 = lean_unsigned_to_nat(0u); -x_40 = l_Lean_Syntax_getArg(x_30, x_39); -lean_dec(x_30); -lean_ctor_set(x_3, 0, x_40); +lean_object* x_39; lean_object* x_40; +lean_dec(x_14); +x_39 = lean_box(0); +x_40 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_15, x_39, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_29); +lean_dec(x_14); x_41 = lean_box(0); -x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_15, x_16, x_41, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_15, x_41, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_42; } } +} else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -lean_dec(x_30); -lean_free_object(x_3); +lean_object* x_43; lean_object* x_44; +lean_dec(x_15); +lean_dec(x_14); x_43 = lean_box(0); -x_44 = lean_box(0); -x_45 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_15, x_16, x_44, x_43, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_45; -} +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_1, x_4, x_2, x_3, x_43, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_44; } } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_46 = lean_ctor_get(x_3, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_45 = lean_unsigned_to_nat(1u); +x_46 = l_Lean_Syntax_getArg(x_14, x_45); +lean_inc(x_15); +lean_inc(x_14); +x_47 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___boxed), 10, 2); +lean_closure_set(x_47, 0, x_14); +lean_closure_set(x_47, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_48 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7), 11, 2); +lean_closure_set(x_48, 0, x_14); +lean_closure_set(x_48, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_49 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__8), 12, 2); +lean_closure_set(x_49, 0, x_14); +lean_closure_set(x_49, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_50 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___boxed), 11, 2); +lean_closure_set(x_50, 0, x_14); +lean_closure_set(x_50, 1, x_15); +x_51 = lean_unsigned_to_nat(0u); lean_inc(x_46); +x_52 = l_Lean_Syntax_matchesNull(x_46, x_51); +if (x_52 == 0) +{ +uint8_t x_53; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_3); +if (x_53 == 0) +{ +lean_object* x_54; uint8_t x_55; +x_54 = lean_ctor_get(x_3, 0); +lean_dec(x_54); +x_55 = l_Lean_Syntax_isNone(x_46); +if (x_55 == 0) +{ +uint8_t x_56; +lean_inc(x_46); +x_56 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_56 == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_free_object(x_3); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_57 = lean_box(0); +x_58 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_57, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_58; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_15); +x_59 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_59); +x_60 = lean_box(0); +x_61 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(x_14, x_47, x_48, x_49, x_50, x_60, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +x_62 = lean_box(0); +x_63 = lean_box(0); +x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(x_14, x_47, x_48, x_49, x_50, x_63, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_64; +} +} +else +{ +uint8_t x_65; lean_dec(x_3); -lean_inc(x_2); -lean_inc(x_4); -lean_inc(x_1); -x_47 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed), 11, 3); -lean_closure_set(x_47, 0, x_1); -lean_closure_set(x_47, 1, x_4); -lean_closure_set(x_47, 2, x_2); -x_48 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2; +x_65 = l_Lean_Syntax_isNone(x_46); +if (x_65 == 0) +{ +uint8_t x_66; lean_inc(x_46); -x_49 = l_Lean_Syntax_isOfKind(x_46, x_48); -if (x_49 == 0) +x_66 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_66 == 0) { -lean_object* x_50; uint8_t x_51; +lean_object* x_67; lean_object* x_68; +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); lean_dec(x_47); -x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4; -lean_inc(x_46); -x_51 = l_Lean_Syntax_isOfKind(x_46, x_50); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_52 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; -x_53 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_46, x_52, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_46); +x_67 = lean_box(0); +x_68 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_67, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_46); -x_54 = lean_ctor_get(x_53, 0); -lean_inc(x_54); -x_55 = lean_ctor_get(x_53, 1); -lean_inc(x_55); -if (lean_is_exclusive(x_53)) { - lean_ctor_release(x_53, 0); - lean_ctor_release(x_53, 1); - x_56 = x_53; -} else { - lean_dec_ref(x_53); - x_56 = lean_box(0); -} -if (lean_is_scalar(x_56)) { - x_57 = lean_alloc_ctor(1, 2, 0); -} else { - x_57 = x_56; -} -lean_ctor_set(x_57, 0, x_54); -lean_ctor_set(x_57, 1, x_55); -return x_57; +lean_dec(x_15); +lean_dec(x_14); +return x_68; } else { -lean_object* x_58; lean_object* x_59; +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_15); +x_69 = l_Lean_Syntax_getArg(x_46, x_51); lean_dec(x_46); -x_58 = lean_box(0); -x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_4, x_2, x_58, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_59; +x_70 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_70, 0, x_69); +x_71 = lean_box(0); +x_72 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(x_14, x_47, x_48, x_49, x_50, x_71, x_70, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_72; } } else { -lean_object* x_60; lean_object* x_61; uint8_t x_62; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_60 = lean_unsigned_to_nat(1u); -x_61 = l_Lean_Syntax_getArg(x_46, x_60); -x_62 = l_Lean_Syntax_isNone(x_61); -if (x_62 == 0) -{ -uint8_t x_63; -lean_inc(x_61); -x_63 = l_Lean_Syntax_matchesNull(x_61, x_60); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_61); -lean_dec(x_47); -x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2; -x_65 = l_Lean_throwErrorAt___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__12(x_46, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_dec(x_46); -x_66 = lean_ctor_get(x_65, 0); -lean_inc(x_66); -x_67 = lean_ctor_get(x_65, 1); -lean_inc(x_67); -if (lean_is_exclusive(x_65)) { - lean_ctor_release(x_65, 0); - lean_ctor_release(x_65, 1); - x_68 = x_65; -} else { - lean_dec_ref(x_65); - x_68 = lean_box(0); -} -if (lean_is_scalar(x_68)) { - x_69 = lean_alloc_ctor(1, 2, 0); -} else { - x_69 = x_68; -} -lean_ctor_set(x_69, 0, x_66); -lean_ctor_set(x_69, 1, x_67); -return x_69; -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_70 = lean_unsigned_to_nat(0u); -x_71 = l_Lean_Syntax_getArg(x_61, x_70); -lean_dec(x_61); -x_72 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_72, 0, x_71); +lean_dec(x_15); x_73 = lean_box(0); -x_74 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_46, x_47, x_73, x_72, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_74; +x_74 = lean_box(0); +x_75 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(x_14, x_47, x_48, x_49, x_50, x_74, x_73, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_75; +} } } else { -lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_61); -x_75 = lean_box(0); -x_76 = lean_box(0); -x_77 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3(x_46, x_47, x_76, x_75, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_77; +lean_object* x_76; lean_object* x_77; uint8_t x_78; +x_76 = lean_unsigned_to_nat(2u); +x_77 = l_Lean_Syntax_getArg(x_14, x_76); +lean_inc(x_77); +x_78 = l_Lean_Syntax_matchesNull(x_77, x_51); +if (x_78 == 0) +{ +uint8_t x_79; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_79 = !lean_is_exclusive(x_3); +if (x_79 == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_80 = lean_ctor_get(x_3, 0); +lean_dec(x_80); +x_81 = lean_unsigned_to_nat(3u); +x_82 = l_Lean_Syntax_getArg(x_14, x_81); +x_83 = l_Lean_Syntax_isNone(x_46); +if (x_83 == 0) +{ +uint8_t x_84; +lean_inc(x_46); +x_84 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; +lean_dec(x_82); +lean_free_object(x_3); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_85 = lean_box(0); +x_86 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_85, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_15); +lean_dec(x_14); +x_87 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_87); +x_88 = lean_box(0); +x_89 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(x_77, x_78, x_47, x_48, x_82, x_49, x_50, x_88, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_89; +} +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_90 = lean_box(0); +x_91 = lean_box(0); +x_92 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(x_77, x_78, x_47, x_48, x_82, x_49, x_50, x_91, x_90, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_92; +} +} +else +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; +lean_dec(x_3); +x_93 = lean_unsigned_to_nat(3u); +x_94 = l_Lean_Syntax_getArg(x_14, x_93); +x_95 = l_Lean_Syntax_isNone(x_46); +if (x_95 == 0) +{ +uint8_t x_96; +lean_inc(x_46); +x_96 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; +lean_dec(x_94); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_97 = lean_box(0); +x_98 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_97, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_98; +} +else +{ +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_dec(x_15); +lean_dec(x_14); +x_99 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +x_101 = lean_box(0); +x_102 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(x_77, x_78, x_47, x_48, x_94, x_49, x_50, x_101, x_100, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_103 = lean_box(0); +x_104 = lean_box(0); +x_105 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(x_77, x_78, x_47, x_48, x_94, x_49, x_50, x_104, x_103, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_105; +} +} +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; uint8_t x_109; +lean_dec(x_47); +x_106 = lean_unsigned_to_nat(3u); +x_107 = l_Lean_Syntax_getArg(x_14, x_106); +x_108 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6; +x_109 = l_Lean_Syntax_matchesIdent(x_107, x_108); +if (x_109 == 0) +{ +uint8_t x_110; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_110 = !lean_is_exclusive(x_3); +if (x_110 == 0) +{ +lean_object* x_111; uint8_t x_112; +x_111 = lean_ctor_get(x_3, 0); +lean_dec(x_111); +x_112 = l_Lean_Syntax_isNone(x_46); +if (x_112 == 0) +{ +uint8_t x_113; +lean_inc(x_46); +x_113 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_113 == 0) +{ +lean_object* x_114; lean_object* x_115; +lean_free_object(x_3); +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +x_114 = lean_box(0); +x_115 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_114, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_115; +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_15); +lean_dec(x_14); +x_116 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_116); +x_117 = lean_box(0); +x_118 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(x_77, x_48, x_107, x_49, x_50, x_117, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_118; +} +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_119 = lean_box(0); +x_120 = lean_box(0); +x_121 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(x_77, x_48, x_107, x_49, x_50, x_120, x_119, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_121; +} +} +else +{ +uint8_t x_122; +lean_dec(x_3); +x_122 = l_Lean_Syntax_isNone(x_46); +if (x_122 == 0) +{ +uint8_t x_123; +lean_inc(x_46); +x_123 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_123 == 0) +{ +lean_object* x_124; lean_object* x_125; +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +x_124 = lean_box(0); +x_125 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_14, x_15, x_124, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_125; +} +else +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_15); +lean_dec(x_14); +x_126 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +x_127 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_127, 0, x_126); +x_128 = lean_box(0); +x_129 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(x_77, x_48, x_107, x_49, x_50, x_128, x_127, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_129; +} +} +else +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_130 = lean_box(0); +x_131 = lean_box(0); +x_132 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(x_77, x_48, x_107, x_49, x_50, x_131, x_130, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_132; +} +} +} +else +{ +uint8_t x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +lean_dec(x_15); +x_133 = 0; +x_134 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; +x_135 = lean_box(0); +x_136 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_136, 0, x_14); +lean_ctor_set(x_136, 1, x_134); +lean_ctor_set(x_136, 2, x_135); +lean_ctor_set_uint8(x_136, sizeof(void*)*3, x_133); +lean_ctor_set_uint8(x_136, sizeof(void*)*3 + 1, x_133); +x_137 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_137, 0, x_136); +x_138 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_1, x_4, x_2, x_3, x_137, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_138; } } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { if (lean_obj_tag(x_2) == 0) { lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); -x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_4, x_1, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13(x_4, x_1, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_13; } else @@ -2770,7 +3472,7 @@ else lean_object* x_14; lean_object* x_15; uint8_t x_16; x_14 = lean_ctor_get(x_2, 0); lean_inc(x_14); -x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4; lean_inc(x_14); x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); if (x_16 == 0) @@ -2778,7 +3480,7 @@ if (x_16 == 0) lean_object* x_17; lean_object* x_18; lean_dec(x_14); x_17 = lean_box(0); -x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_4, x_1, x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13(x_4, x_1, x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_18; } else @@ -2786,13 +3488,13 @@ else lean_object* x_19; lean_object* x_20; x_19 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_19, 0, x_14); -x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4(x_4, x_1, x_2, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13(x_4, x_1, x_2, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_20; } } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1() { _start: { lean_object* x_1; @@ -2800,7 +3502,7 @@ x_1 = lean_mk_string_unchecked("Unexpected Termination.suffix syntax: ", 38, 38) return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2() { _start: { lean_object* x_1; @@ -2808,7 +3510,7 @@ x_1 = lean_mk_string_unchecked(" of kind ", 9, 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3() { _start: { lean_object* x_1; @@ -2816,7 +3518,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -2840,15 +3542,15 @@ lean_inc(x_1); x_18 = l_Lean_Syntax_formatStxAux(x_15, x_16, x_17, x_1); x_19 = l_Std_Format_defWidth; x_20 = lean_format_pretty(x_18, x_19, x_17, x_17); -x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; +x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1; x_22 = lean_string_append(x_21, x_20); lean_dec(x_20); -x_23 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_23 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2; x_24 = lean_string_append(x_22, x_23); lean_inc(x_1); x_25 = l_Lean_Syntax_getKind(x_1); x_26 = 1; -x_27 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3; +x_27 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3; x_28 = l_Lean_Name_toString(x_25, x_26, x_27); x_29 = lean_string_append(x_24, x_28); lean_dec(x_28); @@ -2885,15 +3587,15 @@ lean_inc(x_1); x_41 = l_Lean_Syntax_formatStxAux(x_39, x_40, x_35, x_1); x_42 = l_Std_Format_defWidth; x_43 = lean_format_pretty(x_41, x_42, x_35, x_35); -x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1; x_45 = lean_string_append(x_44, x_43); lean_dec(x_43); -x_46 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_46 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2; x_47 = lean_string_append(x_45, x_46); lean_inc(x_1); x_48 = l_Lean_Syntax_getKind(x_1); x_49 = 1; -x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3; +x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3; x_51 = l_Lean_Name_toString(x_48, x_49, x_50); x_52 = lean_string_append(x_47, x_51); lean_dec(x_51); @@ -2916,7 +3618,7 @@ lean_object* x_58; lean_object* x_59; lean_object* x_60; x_58 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_58, 0, x_36); x_59 = lean_box(0); -x_60 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_1, x_3, x_59, x_58, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_60 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14(x_1, x_3, x_59, x_58, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_60; } } @@ -2927,12 +3629,12 @@ lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_dec(x_12); x_61 = lean_box(0); x_62 = lean_box(0); -x_63 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_1, x_3, x_62, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_63 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14(x_1, x_3, x_62, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_63; } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1() { _start: { lean_object* x_1; @@ -2940,23 +3642,23 @@ x_1 = lean_mk_string_unchecked("suffix", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__1; x_2 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__2; x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__3; -x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; uint8_t x_11; -x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2; +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2; lean_inc(x_1); x_11 = l_Lean_Syntax_isOfKind(x_1, x_10); if (x_11 == 0) @@ -2969,15 +3671,15 @@ lean_inc(x_1); x_15 = l_Lean_Syntax_formatStxAux(x_12, x_13, x_14, x_1); x_16 = l_Std_Format_defWidth; x_17 = lean_format_pretty(x_15, x_16, x_14, x_14); -x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1; x_19 = lean_string_append(x_18, x_17); lean_dec(x_17); -x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2; x_21 = lean_string_append(x_19, x_20); lean_inc(x_1); x_22 = l_Lean_Syntax_getKind(x_1); x_23 = 1; -x_24 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3; +x_24 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3; x_25 = l_Lean_Name_toString(x_22, x_23, x_24); x_26 = lean_string_append(x_21, x_25); lean_dec(x_25); @@ -3016,15 +3718,15 @@ lean_inc(x_1); x_39 = l_Lean_Syntax_formatStxAux(x_37, x_38, x_32, x_1); x_40 = l_Std_Format_defWidth; x_41 = lean_format_pretty(x_39, x_40, x_32, x_32); -x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1; +x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1; x_43 = lean_string_append(x_42, x_41); lean_dec(x_41); -x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2; +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2; x_45 = lean_string_append(x_43, x_44); lean_inc(x_1); x_46 = l_Lean_Syntax_getKind(x_1); x_47 = 1; -x_48 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3; +x_48 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3; x_49 = l_Lean_Name_toString(x_46, x_47, x_48); x_50 = lean_string_append(x_45, x_49); lean_dec(x_49); @@ -3049,7 +3751,7 @@ lean_dec(x_33); x_57 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_57, 0, x_56); x_58 = lean_box(0); -x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_1, x_58, x_57, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15(x_1, x_58, x_57, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_59; } } @@ -3059,7 +3761,7 @@ lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_dec(x_33); x_60 = lean_box(0); x_61 = lean_box(0); -x_62 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_1, x_61, x_60, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_62 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15(x_1, x_61, x_60, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_62; } } @@ -3079,12 +3781,13 @@ lean_dec(x_3); lean_dec(x_2); x_9 = lean_box(0); x_10 = lean_unsigned_to_nat(0u); -x_11 = lean_alloc_ctor(0, 5, 0); +x_11 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_11, 0, x_1); lean_ctor_set(x_11, 1, x_9); lean_ctor_set(x_11, 2, x_9); lean_ctor_set(x_11, 3, x_9); -lean_ctor_set(x_11, 4, x_10); +lean_ctor_set(x_11, 4, x_9); +lean_ctor_set(x_11, 5, x_10); x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_8); @@ -3094,7 +3797,7 @@ else { lean_object* x_13; lean_object* x_14; x_13 = lean_box(0); -x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(x_1, x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16(x_1, x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8); return x_14; } } @@ -4792,7 +5495,7 @@ lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13 x_9 = lean_box(0); x_10 = lean_array_size(x_1); x_11 = 0; -x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; x_13 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__26(x_1, x_9, x_1, x_10, x_11, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8); if (lean_obj_tag(x_13) == 0) { @@ -6148,7 +6851,7 @@ else { lean_object* x_50; lean_object* x_51; lean_dec(x_23); -x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; +x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); @@ -6292,7 +6995,7 @@ lean_dec(x_12); x_14 = lean_box(0); x_15 = lean_array_size(x_13); x_16 = 0; -x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; +x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; x_18 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__27(x_13, x_14, x_13, x_15, x_16, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_13); if (lean_obj_tag(x_18) == 0) @@ -6524,16 +7227,16 @@ x_3 = lean_box(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_12; -x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); +lean_object* x_13; +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_6); -return x_12; +return x_13; } } LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { @@ -6545,13 +7248,13 @@ lean_dec(x_3); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_12; -x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); -return x_12; +lean_object* x_10; +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_2); +return x_10; } } LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { @@ -6559,15 +7262,85 @@ _start: { lean_object* x_11; x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__10(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +lean_dec(x_1); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; lean_object* x_18; +x_17 = lean_unbox(x_2); +lean_dec(x_2); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__11(x_1, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_8); +return x_18; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_3); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_2); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_2); return x_10; } @@ -6990,7 +7763,7 @@ _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; x_10 = lean_unsigned_to_nat(0u); -x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3; +x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1; x_12 = l___private_Lean_Elab_LetRec_0__Lean_Elab_Term_withAuxLocalDecls_loop___rarg(x_1, x_2, x_10, x_11, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_12; } @@ -8876,34 +9649,42 @@ l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Te lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__6); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__2___closed__7); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__1); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__3); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__4); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__3___closed__5); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__1); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__3); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__4___closed__4); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__1); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__6___closed__3); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__1); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__7___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__9___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__3); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__4); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__5); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__13___closed__6); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__15___closed__3); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__7___lambda__16___closed__2); l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__1 = _init_l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__1(); lean_mark_persistent(l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__1); l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__2 = _init_l_Lean_Elab_throwUnsupportedSyntax___at___private_Lean_Elab_LetRec_0__Lean_Elab_Term_mkLetRecDeclView___spec__15___rarg___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/MutualDef.c b/stage0/stdlib/Lean/Elab/MutualDef.c index 3893c79722..4026ad4aea 100644 --- a/stage0/stdlib/Lean/Elab/MutualDef.c +++ b/stage0/stdlib/Lean/Elab/MutualDef.c @@ -28,7 +28,6 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMu lean_object* l_Lean_Meta_mkSorry(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___lambda__3___closed__3; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10; lean_object* l_Lean_Elab_Term_levelMVarToParam(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Term_MutualClosure_getKindForLetRecs___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5550____closed__6; @@ -38,9 +37,10 @@ lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_o lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabAttrs___at_Lean_Elab_Command_elabMutualDef___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__5___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__6(lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__11; static lean_object* l_Lean_Elab_Term_MutualClosure_main___closed__2; static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__2; @@ -59,7 +59,6 @@ lean_object* l_Lean_Elab_logException___at_Lean_Elab_Command_withLoggingExceptio static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabMutualDef___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MapDeclarationExtension_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__5(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_MutualDef___hyg_16117____closed__7; @@ -77,12 +76,14 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_E LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_CommandContextInfo_save___at_Lean_Elab_Term_withoutModifyingElabMetaStateWithInfo___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__2___closed__3; +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2; static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___lambda__1(uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___lambda__1___closed__2; static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__3; static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__10; static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__6; +uint8_t l_Lean_Syntax_matchesIdent(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_erase___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__2___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); @@ -101,8 +102,8 @@ static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_M lean_object* l_Lean_Elab_Command_runTermElabM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__2; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__5; extern lean_object* l_Lean_declRangeExt; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__5___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -117,6 +118,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualD extern lean_object* l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___boxed(lean_object**); lean_object* l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_getMax_x3f___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pickMaxFVar_x3f___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(lean_object*, lean_object*); @@ -221,6 +223,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMu LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars___spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Term_throwErrorIfErrors___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_typeHasRecFun___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_Replacement_apply___lambda__1(lean_object*, lean_object*); @@ -235,6 +238,7 @@ LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_E lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_levelMVarToParamTypesPreDecls___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__12___boxed(lean_object**); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__3___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___closed__1; lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabSyntax___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -251,7 +255,7 @@ lean_object* l_Lean_Elab_logException___at_Lean_Elab_Term_exceptionToSorry___spe LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__5___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__6(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -268,6 +272,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_E static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_useProofAsSorry___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___closed__2; +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at_Lean_Elab_Term_elabMutualDef_go___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -282,6 +287,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_M LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes___spec__1___closed__3; lean_object* lean_io_get_num_heartbeats(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pickMaxFVar_x3f(lean_object*, lean_object*); @@ -294,7 +300,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hy lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__6(lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9; static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Linter_logLint___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_foldM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_merge___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -325,6 +330,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0_ LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_elabMutualDef_go___spec__5(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12; lean_object* l_Lean_Elab_Term_registerCustomErrorIfMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMutualDef___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -333,6 +339,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getFunName___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_getAndEmptyMessageLog___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__5; @@ -347,12 +354,14 @@ static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_M lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Intro_0__Lean_Meta_introNImp___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_instantiateMVarsAtLetRecToLift___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FVarId_findDecl_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_instantiateMVarsProfiling___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Elab_Command_elabMutualDef___spec__10___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__11(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabBindersEx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_MutualClosure_main___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -362,11 +371,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check lean_object* l_Lean_LocalDecl_index(lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_foldM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_updateUsedVarsOf___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_FixPoint_run___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__2; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__6; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___lambda__1___boxed(lean_object**); @@ -379,6 +390,7 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0_ static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__4___closed__3; static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5628____closed__1; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -393,12 +405,12 @@ LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_getModifiersForLetRecs(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___rarg___lambda__1(lean_object*, lean_object*); +lean_object* l_Array_range___lambda__1___boxed(lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5628____closed__6; size_t lean_usize_of_nat(lean_object*); lean_object* l_Lean_LocalDecl_setBinderInfo(lean_object*, uint8_t); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_instantiateMVarsAtLetRecToLift(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_fixpoint(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_expandWhereDeclsOpt(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___closed__4; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -408,11 +420,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check lean_object* l_Lean_Meta_withLCtx___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___spec__1___closed__2; static double l_Lean_addTrace___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__5___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_InfoTree_Main_0__Lean_Elab_withSavedPartialInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_task_pure(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_insertReplacementForLetRecs(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_preprocess___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__1(size_t, size_t, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5; static lean_object* l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes___spec__1___closed__1; lean_object* l_Lean_Meta_resetZetaDeltaFVarIds___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -421,11 +435,9 @@ lean_object* l_Array_reverse___rarg(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__4___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3___rarg___lambda__3(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*); uint8_t l_List_elem___at_Lean_addAliasEntry___spec__16(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___boxed(lean_object**); LEAN_EXPORT uint8_t l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___lambda__1(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars___spec__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -442,14 +454,15 @@ static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_Mu static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5550____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___closed__1; -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__1___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_getDeclarationSelectionRef(lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_find___at_Lean_Elab_Term_MutualClosure_isApplicable___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_realizeGlobalConstNoOverload(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Command_elabSyntax___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_Term_MutualClosure_getKindForLetRecs(lean_object*); @@ -486,14 +499,14 @@ lean_object* l_Lean_Name_quickCmp___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_isApplicable___lambda__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_collectUsed___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_Elab_Term_elabMutualDef___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_MutualDef___hyg_16117____closed__8; @@ -503,12 +516,13 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDe static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___closed__2; lean_object* l_Lean_Elab_Command_getRef(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__4___closed__2; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders_process___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_CollectFVars_State_addDependencies(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__15; static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__9; LEAN_EXPORT lean_object* l_List_foldl___at_Lean_Elab_Term_MutualClosure_insertReplacementForLetRecs___spec__1(lean_object*, lean_object*); @@ -516,15 +530,13 @@ LEAN_EXPORT uint8_t l_Lean_Elab_Term_MutualClosure_isApplicable___lambda__1(lean lean_object* l_Lean_Elab_toAttributeKind___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__13(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6; lean_object* l_Lean_Elab_Term_applyAttributesAt(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__13___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getKind(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2; lean_object* l_Lean_SourceInfo_getTailPos_x3f(lean_object*, uint8_t); lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); @@ -540,6 +552,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualD static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5589____closed__2; static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__3; lean_object* l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3; static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__16; lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -596,9 +609,9 @@ lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_insertReplacementForMainFns(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14; lean_object* l_Lean_Elab_instantiateMVarsAtPreDecls(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders_process___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pushLocalDecl(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -622,9 +635,9 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expan uint8_t l_List_beq___at___private_Lean_Declaration_0__Lean_beqConstantVal____x40_Lean_Declaration___hyg_431____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5550____closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__6___rarg___lambda__1(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6___lambda__1___boxed(lean_object**); extern lean_object* l_Lean_instInhabitedExpr; static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6___lambda__5___closed__5; @@ -635,20 +648,23 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_fold___at___private_Lean_Elab_MutualDef_0 lean_object* l_Lean_Elab_InfoTree_substitute(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___lambda__2___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__4; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_elabCommand___spec__9(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__8; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___closed__6; uint8_t l_Lean_BinderInfo_isInstImplicit(uint8_t); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15; uint8_t l_Lean_Elab_DefView_isInstance(lean_object*); lean_object* l_Lean_FVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Command_elabMutualDef___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_markModified___boxed(lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__1; lean_object* l_Lean_Syntax_getSepArgs(lean_object*); @@ -697,9 +713,9 @@ lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_ static lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__1; LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); lean_object* l_Lean_Meta_Closure_mkForall(lean_object*, lean_object*); -lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_processSumCasesOn___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__3___closed__3; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__3; extern lean_object* l_Lean_Elab_instInhabitedDefView; @@ -711,11 +727,11 @@ lean_object* l_Lean_Elab_liftMacroM___at___private_Lean_Elab_Term_0__Lean_Elab_T LEAN_EXPORT lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_MutualDef___hyg_16117_(lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__4___boxed(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9; lean_object* l_Lean_LocalDecl_fvarId(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_resetModified___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12; LEAN_EXPORT lean_object* l_Lean_addTrace___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Command_elabMutualDef___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appFn_x21(lean_object*); @@ -735,6 +751,7 @@ lean_object* lean_find_ext_expr(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_preprocess(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_withAutoBoundImplicitForbiddenPred___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Std_Format_defWidth; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -757,7 +774,6 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Mutu static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___closed__6; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__4___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; lean_object* lean_mk_thunk(lean_object*); LEAN_EXPORT lean_object* l_Lean_addDeclarationRanges___at_Lean_Elab_Term_elabMutualDef_go___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__1; @@ -772,10 +788,11 @@ static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____clo uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__5; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withFunLocalDecls_loop(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__3___closed__1; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10; lean_object* l_Lean_MessageData_ofExpr(lean_object*); lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -801,13 +818,13 @@ lean_object* l_Lean_Elab_Command_mkDefView(lean_object*, lean_object*, lean_obje LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_collectUsed___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_userName(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_getPos_x3f(lean_object*, uint8_t); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo___closed__2; -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__4; static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5589____closed__3; @@ -817,15 +834,16 @@ LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_E LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3; static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5628____closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1; static lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___lambda__2___closed__2; lean_object* l_Lean_FileMap_leanPosToLspPos(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5589____closed__1; static lean_object* l_Lean_Elab_Term_MutualClosure_main___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_TerminationHints_rememberExtraParams(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__6; LEAN_EXPORT lean_object* l_Nat_foldM_loop___at_Lean_Elab_Term_MutualClosure_pushMain___spec__1___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -833,7 +851,6 @@ extern lean_object* l_Lean_Parser_Term_type; static lean_object* l_Lean_Elab_elabModifiers___at_Lean_Elab_Command_elabMutualDef___spec__1___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerm___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4; uint8_t l_Lean_Name_hasMacroScopes(lean_object*); lean_object* l_Lean_Syntax_getTailInfo_x3f(lean_object*); uint8_t l_Lean_Expr_hasAnyFVar_visit___at_Lean_Expr_containsFVar___spec__1(lean_object*, lean_object*); @@ -843,6 +860,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_El static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_processDeriving___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_insertReplacementForMainFns___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -898,7 +916,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withF LEAN_EXPORT lean_object* l_Lean_Elab_Term_MutualClosure_pushLetRecs(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMutualDef___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___closed__3; @@ -909,26 +926,28 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_registerFailedToInferDefTypeInfo___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__2___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_updateUsedVarsOf___spec__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__3___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__5___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getFunName___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkFreeVarMap___spec__5___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__3(lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__9___boxed(lean_object**); lean_object* l_Lean_indentExpr(lean_object*); +static lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMutualDef___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_MutualDef___hyg_16117____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getFunName___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Nat_foldM_loop___at_Lean_Elab_Term_MutualClosure_pushMain___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Nat_foldM_loop___at_Lean_Elab_Term_MutualClosure_pushMain___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -949,7 +968,6 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_M LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__16___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_RBNode_foldM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_merge___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__14(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_getDelayedMVarRoot___at_Lean_Elab_Term_isLetRecAuxMVar___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -965,6 +983,7 @@ static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_M LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_modifyUsedFVars(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Elab_addPreDefinitions___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_type(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3; uint64_t lean_uint64_xor(uint64_t, uint64_t); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkModifiers___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___spec__4(lean_object*, lean_object*); @@ -973,8 +992,8 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_Mutua LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__17___boxed(lean_object**); uint8_t l_Lean_Syntax_isNone(lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__8___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerm___closed__1; @@ -984,7 +1003,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_remov lean_object* l_Lean_Syntax_setInfo(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__4___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2; static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__12; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__7(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -992,11 +1010,13 @@ lean_object* l_Lean_LocalContext_get_x21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosureFor___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_liftMacroM___at_Lean_Elab_Command_mkDefViewOfInstance___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_MutualClosure_main___spec__5(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes___spec__1___closed__4; uint8_t l_Lean_Expr_isProp(lean_object*); static lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___spec__2___closed__1; +lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Term_Do_concat___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_expandWhereStructInst___lambda__1___closed__3; @@ -1006,9 +1026,9 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_find___at_Lean_Elab_Term_MutualClosure_is LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__18___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_withInfoContext_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_List_iotaTR(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__11___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage(lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1025,7 +1045,6 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeader LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedDeclarationRanges; lean_object* lean_erase_macro_scopes(lean_object*); -lean_object* l_Lean_throwErrorAt___at_Lean_Elab_Term_elabMatch_elabMatchDefault___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isTheorem(lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_Command_elabMutualDef___spec__9___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1059,6 +1078,7 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___la LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isMultiConstant_x3f___spec__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_modifyUsedFVars___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_removeUnused(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Name_quickCmp(lean_object*, lean_object*); @@ -1080,9 +1100,11 @@ static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____clo static lean_object* l_Lean_Linter_logLint___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__3___closed__1; LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___boxed(lean_object**); uint8_t l_Lean_Expr_hasFVar(lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__4___closed__1; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars___spec__2(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___spec__2___closed__2; LEAN_EXPORT lean_object* l_List_foldlM___at_Lean_Elab_Term_MutualClosure_pushLetRecs___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesFromSyntax___at_Lean_Elab_Term_elabMutualDef_go___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1114,7 +1136,6 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkKinds static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkClosureForAux___closed__6; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withUsed___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isExample___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getFunName___closed__1; static lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___closed__1; @@ -1127,7 +1148,7 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClos lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___lambda__2___boxed(lean_object**); lean_object* l_Lean_Elab_addMacroStack___at_Lean_Elab_Command_instAddErrorMessageContextCommandElabM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_instantiateMVarsAtHeader___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5628____closed__2; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); @@ -1137,6 +1158,8 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_M static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Term_MutualClosure_getModifiersForLetRecs___spec__2(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_levelMVarToParamHeaders_process___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__9; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__7; lean_object* lean_string_append(lean_object*, lean_object*); @@ -1157,11 +1180,9 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_M LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__5___boxed(lean_object**); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_debug_proofAsSorry; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1173,17 +1194,16 @@ uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__11___boxed(lean_object**); static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__10; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_go___spec__3___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15; -static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_resetModified___boxed(lean_object*); static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_cleanupOfNat___lambda__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isExample___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabMutualDef___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_instInhabitedDefViewElabHeader___closed__1; lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_isMultiConstant_x3f___boxed(lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addDeclarationRanges___at_Lean_Elab_Term_elabMutualDef_go___spec__10___closed__2; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___lambda__1___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___boxed(lean_object**); @@ -1202,9 +1222,11 @@ static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeader static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5550____closed__3; lean_object* l_Lean_Expr_mvarId_x21(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__7___lambda__1___closed__1; +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_mkBodyInfo(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(lean_object*, size_t, size_t); lean_object* l_Lean_Elab_fixLevelParams(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_expandWhereDecls(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__5; @@ -1212,12 +1234,12 @@ lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__2; LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1; static lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__3; static lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__13___lambda__2___closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_getUsedFVarsMap___rarg(lean_object*); uint8_t l_Lean_Elab_Modifiers_isPartial(lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__11___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkLetRecClosures___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_collectUsed___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_fixpoint___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1228,8 +1250,10 @@ LEAN_EXPORT lean_object* l_Nat_foldTR_loop___at_Lean_Elab_Term_MutualClosure_ins LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_initFn____x40_Lean_Elab_MutualDef___hyg_5550____closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_mkInitialUsedFVarsMap___spec__4___rarg___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_getMax_x3f___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_pickMaxFVar_x3f___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_getLetRecsToLift___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_getDeclarationRange_x3f___at_Lean_Elab_Term_elabMutualDef_go___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_collectFVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1255,6 +1279,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_typeH LEAN_EXPORT lean_object* l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_MutualClosure_FixPoint_isModified(lean_object*); LEAN_EXPORT lean_object* l_Nat_foldTR_loop___at_Lean_Elab_Term_MutualClosure_insertReplacementForMainFns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Term_elabMutualDef_processDeriving___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Core_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__6___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasExprMVar(lean_object*); LEAN_EXPORT lean_object* l_Lean_Linter_logLint___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -7663,44 +7688,6 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; lean_object* x_10; uint8_t x_11; -x_9 = lean_ctor_get(x_6, 5); -x_10 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_4, x_5, x_6, x_7, x_8); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; -x_12 = lean_ctor_get(x_10, 0); -lean_inc(x_9); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_9); -lean_ctor_set(x_13, 1, x_12); -lean_ctor_set_tag(x_10, 1); -lean_ctor_set(x_10, 0, x_13); -return x_10; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_10, 0); -x_15 = lean_ctor_get(x_10, 1); -lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_10); -lean_inc(x_9); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_9); -lean_ctor_set(x_16, 1, x_14); -x_17 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_15); -return x_17; -} -} -} LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { _start: { @@ -8228,7 +8215,7 @@ x_29 = lean_ctor_get(x_23, 1); lean_inc(x_29); lean_dec(x_23); x_30 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__2; -x_31 = l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_30, x_11, x_12, x_13, x_14, x_15, x_16, x_29); +x_31 = l_Lean_throwError___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_30, x_11, x_12, x_13, x_14, x_15, x_16, x_29); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); @@ -8285,7 +8272,7 @@ return x_44; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; @@ -8311,7 +8298,7 @@ lean_ctor_set(x_22, 1, x_14); return x_22; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -8319,87 +8306,87 @@ x_1 = lean_mk_string_unchecked("_private", 8, 8); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1; +x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2; x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3; x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4; x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5; x_2 = lean_unsigned_to_nat(0u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6; x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7; x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8; x_2 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_mkTacTask___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10() { _start: { lean_object* x_1; @@ -8407,28 +8394,28 @@ x_1 = lean_mk_string_unchecked("elabHeaders", 11, 11); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9; -x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9; +x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11; x_2 = 1; x_3 = l_List_mapTR_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_getPendingMVarErrorMessage___spec__1___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13() { _start: { lean_object* x_1; lean_object* x_2; @@ -8437,23 +8424,23 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15() { _start: { size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 5; -x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14; -x_3 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13; +x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14; +x_3 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13; x_4 = lean_unsigned_to_nat(0u); x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); lean_ctor_set(x_5, 0, x_2); @@ -8464,19 +8451,19 @@ lean_ctor_set_usize(x_5, 4, x_1); return x_5; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16() { _start: { uint64_t x_1; lean_object* x_2; lean_object* x_3; x_1 = 0; -x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15; +x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15; x_3 = lean_alloc_ctor(0, 1, 8); lean_ctor_set(x_3, 0, x_2); lean_ctor_set_uint64(x_3, sizeof(void*)*1, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, uint8_t x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, uint8_t x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24) { _start: { lean_object* x_25; lean_object* x_26; lean_object* x_27; @@ -8518,7 +8505,7 @@ x_31 = lean_ctor_get(x_28, 0); lean_inc(x_31); lean_dec(x_28); x_32 = lean_box(0); -x_33 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_31, x_32, x_18, x_19, x_20, x_21, x_22, x_23, x_30); +x_33 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_31, x_32, x_18, x_19, x_20, x_21, x_22, x_23, x_30); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8572,8 +8559,8 @@ if (x_49 == 0) lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; uint8_t x_56; x_50 = lean_ctor_get(x_48, 0); x_51 = lean_ctor_get(x_48, 1); -x_52 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12; -x_53 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_52 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12; +x_53 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_54 = 0; lean_inc(x_6); x_55 = lean_alloc_ctor(0, 4, 1); @@ -8630,7 +8617,7 @@ lean_dec(x_10); lean_ctor_set(x_35, 3, x_67); lean_ctor_set(x_35, 2, x_6); x_68 = lean_box(0); -x_69 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_68, x_18, x_19, x_20, x_21, x_22, x_23, x_65); +x_69 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_68, x_18, x_19, x_20, x_21, x_22, x_23, x_65); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8655,7 +8642,7 @@ lean_ctor_set(x_44, 0, x_48); lean_ctor_set(x_35, 3, x_67); lean_ctor_set(x_35, 2, x_44); x_72 = lean_box(0); -x_73 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_72, x_18, x_19, x_20, x_21, x_22, x_23, x_65); +x_73 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_72, x_18, x_19, x_20, x_21, x_22, x_23, x_65); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8675,7 +8662,7 @@ lean_ctor_set(x_74, 0, x_48); lean_ctor_set(x_35, 3, x_67); lean_ctor_set(x_35, 2, x_74); x_75 = lean_box(0); -x_76 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_75, x_18, x_19, x_20, x_21, x_22, x_23, x_65); +x_76 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_75, x_18, x_19, x_20, x_21, x_22, x_23, x_65); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8706,7 +8693,7 @@ lean_dec(x_10); lean_ctor_set(x_35, 3, x_79); lean_ctor_set(x_35, 2, x_6); x_80 = lean_box(0); -x_81 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_80, x_18, x_19, x_20, x_21, x_22, x_23, x_77); +x_81 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_80, x_18, x_19, x_20, x_21, x_22, x_23, x_77); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8737,7 +8724,7 @@ lean_ctor_set(x_83, 0, x_48); lean_ctor_set(x_35, 3, x_79); lean_ctor_set(x_35, 2, x_83); x_84 = lean_box(0); -x_85 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_84, x_18, x_19, x_20, x_21, x_22, x_23, x_77); +x_85 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_35, x_84, x_18, x_19, x_20, x_21, x_22, x_23, x_77); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8806,7 +8793,7 @@ lean_ctor_set(x_96, 1, x_87); lean_ctor_set(x_96, 2, x_6); lean_ctor_set(x_96, 3, x_95); x_97 = lean_box(0); -x_98 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_96, x_97, x_18, x_19, x_20, x_21, x_22, x_23, x_92); +x_98 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_96, x_97, x_18, x_19, x_20, x_21, x_22, x_23, x_92); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8840,7 +8827,7 @@ lean_ctor_set(x_101, 1, x_87); lean_ctor_set(x_101, 2, x_100); lean_ctor_set(x_101, 3, x_95); x_102 = lean_box(0); -x_103 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_101, x_102, x_18, x_19, x_20, x_21, x_22, x_23, x_92); +x_103 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_101, x_102, x_18, x_19, x_20, x_21, x_22, x_23, x_92); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8859,8 +8846,8 @@ x_105 = lean_ctor_get(x_48, 1); lean_inc(x_105); lean_inc(x_104); lean_dec(x_48); -x_106 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12; -x_107 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_106 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12; +x_107 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_108 = 0; lean_inc(x_6); x_109 = lean_alloc_ctor(0, 4, 1); @@ -8936,7 +8923,7 @@ lean_ctor_set(x_121, 1, x_111); lean_ctor_set(x_121, 2, x_6); lean_ctor_set(x_121, 3, x_120); x_122 = lean_box(0); -x_123 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_121, x_122, x_18, x_19, x_20, x_21, x_22, x_23, x_117); +x_123 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_121, x_122, x_18, x_19, x_20, x_21, x_22, x_23, x_117); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -8975,7 +8962,7 @@ lean_ctor_set(x_127, 1, x_111); lean_ctor_set(x_127, 2, x_126); lean_ctor_set(x_127, 3, x_120); x_128 = lean_box(0); -x_129 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_127, x_128, x_18, x_19, x_20, x_21, x_22, x_23, x_117); +x_129 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_127, x_128, x_18, x_19, x_20, x_21, x_22, x_23, x_117); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -9027,8 +9014,8 @@ if (lean_is_exclusive(x_140)) { lean_dec_ref(x_140); x_143 = lean_box(0); } -x_144 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12; -x_145 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_144 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12; +x_145 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_146 = 0; lean_inc(x_6); x_147 = lean_alloc_ctor(0, 4, 1); @@ -9106,7 +9093,7 @@ lean_ctor_set(x_160, 1, x_149); lean_ctor_set(x_160, 2, x_6); lean_ctor_set(x_160, 3, x_159); x_161 = lean_box(0); -x_162 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_160, x_161, x_18, x_19, x_20, x_21, x_22, x_23, x_156); +x_162 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_160, x_161, x_18, x_19, x_20, x_21, x_22, x_23, x_156); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -9149,7 +9136,7 @@ lean_ctor_set(x_166, 1, x_149); lean_ctor_set(x_166, 2, x_165); lean_ctor_set(x_166, 3, x_159); x_167 = lean_box(0); -x_168 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_16, x_7, x_8, x_9, x_12, x_166, x_167, x_18, x_19, x_20, x_21, x_22, x_23, x_156); +x_168 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_16, x_7, x_8, x_9, x_12, x_166, x_167, x_18, x_19, x_20, x_21, x_22, x_23, x_156); lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); @@ -9201,7 +9188,7 @@ return x_172; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { uint8_t x_14; @@ -9403,7 +9390,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_93 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_92, x_91, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_93 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_92, x_91, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_93; goto block_34; } @@ -9429,7 +9416,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_98 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_96, x_97, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_98 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_96, x_97, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_98; goto block_34; } @@ -9459,7 +9446,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_105 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_103, x_104, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_105 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_103, x_104, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_105; goto block_34; } @@ -9516,7 +9503,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_120 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_118, x_119, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_120 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_118, x_119, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_120; goto block_34; } @@ -9545,7 +9532,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_125 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_123, x_124, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_125 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_123, x_124, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_125; goto block_34; } @@ -9563,7 +9550,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_127 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_123, x_126, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_127 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_102, x_123, x_126, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_127; goto block_34; } @@ -9590,7 +9577,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_133 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_112, x_102, x_123, x_132, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_133 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_112, x_102, x_123, x_132, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_133; goto block_34; } @@ -9613,7 +9600,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_138 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_136, x_102, x_123, x_137, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_138 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_136, x_102, x_123, x_137, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_138; goto block_34; } @@ -9640,7 +9627,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_142 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_102, x_123, x_141, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_142 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_102, x_123, x_141, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_142; goto block_34; } @@ -9658,7 +9645,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_144 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_102, x_123, x_143, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_144 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_102, x_123, x_143, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_144; goto block_34; } @@ -9685,7 +9672,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_150 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_112, x_102, x_123, x_149, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_150 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_112, x_102, x_123, x_149, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_150; goto block_34; } @@ -9708,7 +9695,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_155 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_153, x_102, x_123, x_154, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_155 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_153, x_102, x_123, x_154, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_155; goto block_34; } @@ -9769,7 +9756,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_170 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_168, x_169, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_170 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_168, x_169, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_170; goto block_34; } @@ -9798,7 +9785,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_175 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_173, x_174, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_175 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_173, x_174, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_175; goto block_34; } @@ -9816,7 +9803,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_177 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_173, x_176, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_177 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_166, x_173, x_176, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_177; goto block_34; } @@ -9852,7 +9839,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_184 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_182, x_166, x_173, x_183, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_184 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_182, x_166, x_173, x_183, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_184; goto block_34; } @@ -9878,7 +9865,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_188 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_166, x_173, x_187, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_188 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_166, x_173, x_187, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_188; goto block_34; } @@ -9896,7 +9883,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_190 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_166, x_173, x_189, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_190 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_89, x_166, x_173, x_189, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_190; goto block_34; } @@ -9932,7 +9919,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_197 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_195, x_166, x_173, x_196, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_197 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_95, x_195, x_166, x_173, x_196, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_197; goto block_34; } @@ -9965,7 +9952,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_203 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_201, x_202, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_203 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_89, x_201, x_202, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_203; goto block_34; } @@ -10030,7 +10017,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_219 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_217, x_218, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_219 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_217, x_218, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_219; goto block_34; } @@ -10058,7 +10045,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_224 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_222, x_223, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_224 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_222, x_223, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_224; goto block_34; } @@ -10076,7 +10063,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_226 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_222, x_225, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_226 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_89, x_215, x_222, x_225, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_226; goto block_34; } @@ -10112,7 +10099,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_233 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_231, x_215, x_222, x_232, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_233 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_89, x_231, x_215, x_222, x_232, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_233; goto block_34; } @@ -10139,7 +10126,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_238 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_89, x_215, x_222, x_237, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_238 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_89, x_215, x_222, x_237, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_238; goto block_34; } @@ -10157,7 +10144,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_240 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_89, x_215, x_222, x_239, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_240 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_89, x_215, x_222, x_239, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_240; goto block_34; } @@ -10193,7 +10180,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_247 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_245, x_215, x_222, x_246, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_247 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_86, x_87, x_88, x_89, x_40, x_44, x_41, x_72, x_59, x_47, x_236, x_245, x_215, x_222, x_246, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_247; goto block_34; } @@ -10239,7 +10226,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_258 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_257, x_256, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_258 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_257, x_256, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_258; goto block_34; } @@ -10265,7 +10252,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_263 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_261, x_262, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_263 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_261, x_262, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_263; goto block_34; } @@ -10299,7 +10286,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_270 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_268, x_269, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_270 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_254, x_268, x_269, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_270; goto block_34; } @@ -10365,7 +10352,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_286 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_284, x_285, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_286 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_284, x_285, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_286; goto block_34; } @@ -10394,7 +10381,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_291 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_289, x_290, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_291 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_289, x_290, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_291; goto block_34; } @@ -10412,7 +10399,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_293 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_289, x_292, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_293 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_254, x_282, x_289, x_292, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_293; goto block_34; } @@ -10448,7 +10435,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_300 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_298, x_282, x_289, x_299, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_300 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_254, x_298, x_282, x_289, x_299, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_300; goto block_34; } @@ -10479,7 +10466,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_305 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_254, x_282, x_289, x_304, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_305 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_254, x_282, x_289, x_304, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_305; goto block_34; } @@ -10497,7 +10484,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_307 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_254, x_282, x_289, x_306, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_307 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_254, x_282, x_289, x_306, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_307; goto block_34; } @@ -10533,7 +10520,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_314 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_312, x_282, x_289, x_313, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_314 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_251, x_252, x_253, x_254, x_40, x_44, x_250, x_72, x_59, x_47, x_303, x_312, x_282, x_289, x_313, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_314; goto block_34; } @@ -10632,7 +10619,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_335 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_334, x_333, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_335 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_334, x_333, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_335; goto block_34; } @@ -10658,7 +10645,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_340 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_338, x_339, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_340 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_338, x_339, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_340; goto block_34; } @@ -10692,7 +10679,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_347 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_345, x_346, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_347 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_331, x_345, x_346, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_347; goto block_34; } @@ -10758,7 +10745,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_363 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_361, x_362, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_363 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_361, x_362, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_363; goto block_34; } @@ -10787,7 +10774,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_368 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_366, x_367, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_368 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_366, x_367, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_368; goto block_34; } @@ -10805,7 +10792,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_370 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_366, x_369, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_370 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_331, x_359, x_366, x_369, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_370; goto block_34; } @@ -10841,7 +10828,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_377 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_375, x_359, x_366, x_376, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_377 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_331, x_375, x_359, x_366, x_376, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_377; goto block_34; } @@ -10872,7 +10859,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_382 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_331, x_359, x_366, x_381, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_382 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_331, x_359, x_366, x_381, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_382; goto block_34; } @@ -10890,7 +10877,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_384 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_331, x_359, x_366, x_383, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_384 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_331, x_359, x_366, x_383, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_384; goto block_34; } @@ -10926,7 +10913,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_391 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_389, x_359, x_366, x_390, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_391 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_328, x_329, x_330, x_331, x_40, x_317, x_327, x_315, x_59, x_47, x_380, x_389, x_359, x_366, x_390, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_391; goto block_34; } @@ -11075,7 +11062,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_423 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_422, x_421, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_423 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_422, x_421, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_423; goto block_34; } @@ -11101,7 +11088,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_428 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_426, x_427, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_428 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_426, x_427, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_428; goto block_34; } @@ -11135,7 +11122,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_435 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_433, x_434, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_435 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_419, x_433, x_434, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_435; goto block_34; } @@ -11201,7 +11188,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_451 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_449, x_450, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_451 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_449, x_450, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_451; goto block_34; } @@ -11230,7 +11217,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_456 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_454, x_455, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_456 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_454, x_455, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_456; goto block_34; } @@ -11248,7 +11235,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_458 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_454, x_457, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_458 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_419, x_447, x_454, x_457, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_458; goto block_34; } @@ -11284,7 +11271,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_465 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_463, x_447, x_454, x_464, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_465 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_419, x_463, x_447, x_454, x_464, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_465; goto block_34; } @@ -11315,7 +11302,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_470 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_419, x_447, x_454, x_469, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_470 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_419, x_447, x_454, x_469, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_470; goto block_34; } @@ -11333,7 +11320,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_472 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_419, x_447, x_454, x_471, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_472 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_419, x_447, x_454, x_471, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_472; goto block_34; } @@ -11369,7 +11356,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_479 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_477, x_447, x_454, x_478, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_479 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_416, x_417, x_418, x_419, x_395, x_405, x_415, x_403, x_392, x_47, x_468, x_477, x_447, x_454, x_478, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_479; goto block_34; } @@ -11572,7 +11559,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_523 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_522, x_521, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_523 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_522, x_521, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_523; goto block_34; } @@ -11598,7 +11585,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_528 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_526, x_527, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_528 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_526, x_527, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_528; goto block_34; } @@ -11632,7 +11619,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_535 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_533, x_534, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_535 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_519, x_533, x_534, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_535; goto block_34; } @@ -11698,7 +11685,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_551 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_549, x_550, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_551 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_549, x_550, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_551; goto block_34; } @@ -11727,7 +11714,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_556 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_554, x_555, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_556 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_554, x_555, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_556; goto block_34; } @@ -11745,7 +11732,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_558 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_554, x_557, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_558 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_519, x_547, x_554, x_557, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_558; goto block_34; } @@ -11781,7 +11768,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_565 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_563, x_547, x_554, x_564, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_565 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_519, x_563, x_547, x_554, x_564, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_565; goto block_34; } @@ -11812,7 +11799,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_570 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_519, x_547, x_554, x_569, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_570 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_519, x_547, x_554, x_569, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_570; goto block_34; } @@ -11830,7 +11817,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_572 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_519, x_547, x_554, x_571, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_572 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_519, x_547, x_554, x_571, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_572; goto block_34; } @@ -11866,7 +11853,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_579 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_577, x_547, x_554, x_578, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_579 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_516, x_517, x_518, x_519, x_493, x_504, x_515, x_502, x_490, x_480, x_568, x_577, x_547, x_554, x_578, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_579; goto block_34; } @@ -12102,7 +12089,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_628 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_627, x_626, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_628 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_627, x_626, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_628; goto block_34; } @@ -12128,7 +12115,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_633 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_631, x_632, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_633 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_631, x_632, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_633; goto block_34; } @@ -12162,7 +12149,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_640 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_638, x_639, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_640 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_624, x_638, x_639, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_640; goto block_34; } @@ -12228,7 +12215,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_656 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_654, x_655, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_656 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_654, x_655, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_656; goto block_34; } @@ -12257,7 +12244,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_661 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_659, x_660, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_661 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_659, x_660, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_661; goto block_34; } @@ -12275,7 +12262,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_663 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_659, x_662, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_663 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_624, x_652, x_659, x_662, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_663; goto block_34; } @@ -12311,7 +12298,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_670 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_668, x_652, x_659, x_669, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_670 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_624, x_668, x_652, x_659, x_669, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_670; goto block_34; } @@ -12342,7 +12329,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_675 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_624, x_652, x_659, x_674, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_675 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_624, x_652, x_659, x_674, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_675; goto block_34; } @@ -12360,7 +12347,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_677 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_624, x_652, x_659, x_676, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_677 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_624, x_652, x_659, x_676, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_677; goto block_34; } @@ -12396,7 +12383,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_684 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_682, x_652, x_659, x_683, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_684 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_621, x_622, x_623, x_624, x_596, x_608, x_620, x_606, x_593, x_581, x_673, x_682, x_652, x_659, x_683, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_684; goto block_34; } @@ -12662,7 +12649,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_740 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_739, x_738, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_740 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_739, x_738, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_740; goto block_34; } @@ -12688,7 +12675,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_745 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_743, x_744, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_745 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_743, x_744, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_745; goto block_34; } @@ -12722,7 +12709,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_752 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_750, x_751, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_752 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_736, x_750, x_751, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_752; goto block_34; } @@ -12788,7 +12775,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_768 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_766, x_767, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_768 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_766, x_767, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_768; goto block_34; } @@ -12817,7 +12804,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_773 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_771, x_772, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_773 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_771, x_772, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_773; goto block_34; } @@ -12835,7 +12822,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_775 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_771, x_774, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_775 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_736, x_764, x_771, x_774, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_775; goto block_34; } @@ -12871,7 +12858,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_782 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_780, x_764, x_771, x_781, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_782 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_736, x_780, x_764, x_771, x_781, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_782; goto block_34; } @@ -12902,7 +12889,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_787 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_736, x_764, x_771, x_786, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_787 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_736, x_764, x_771, x_786, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_787; goto block_34; } @@ -12920,7 +12907,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_789 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_736, x_764, x_771, x_788, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_789 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_736, x_764, x_771, x_788, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_789; goto block_34; } @@ -12956,7 +12943,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_796 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_794, x_764, x_771, x_795, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_796 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_733, x_734, x_735, x_736, x_706, x_719, x_732, x_717, x_703, x_690, x_785, x_794, x_764, x_771, x_795, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_796; goto block_34; } @@ -13248,7 +13235,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_856 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_855, x_854, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_856 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_855, x_854, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_856; goto block_34; } @@ -13274,7 +13261,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_861 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_859, x_860, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_861 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_859, x_860, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_861; goto block_34; } @@ -13308,7 +13295,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_868 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_866, x_867, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_868 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_852, x_866, x_867, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_868; goto block_34; } @@ -13374,7 +13361,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_884 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_882, x_883, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_884 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_882, x_883, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_884; goto block_34; } @@ -13403,7 +13390,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_889 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_887, x_888, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_889 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_887, x_888, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_889; goto block_34; } @@ -13421,7 +13408,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_891 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_887, x_890, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_891 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_852, x_880, x_887, x_890, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_891; goto block_34; } @@ -13457,7 +13444,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_898 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_896, x_880, x_887, x_897, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_898 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_852, x_896, x_880, x_887, x_897, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_898; goto block_34; } @@ -13488,7 +13475,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_903 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_852, x_880, x_887, x_902, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_903 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_852, x_880, x_887, x_902, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_903; goto block_34; } @@ -13506,7 +13493,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_905 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_852, x_880, x_887, x_904, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_905 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_852, x_880, x_887, x_904, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_905; goto block_34; } @@ -13542,7 +13529,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_912 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_910, x_880, x_887, x_911, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_912 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_16, x_1, x_849, x_850, x_851, x_852, x_820, x_834, x_848, x_832, x_817, x_803, x_901, x_910, x_880, x_887, x_911, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_17 = x_912; goto block_34; } @@ -13650,7 +13637,7 @@ return x_33; } } } -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(lean_object* x_1, size_t x_2, size_t x_3) { +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(lean_object* x_1, size_t x_2, size_t x_3) { _start: { uint8_t x_4; @@ -13731,7 +13718,7 @@ _start: { lean_object* x_13; lean_inc(x_1); -x_13 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_1, x_2, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_13 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_1, x_2, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_1); if (lean_obj_tag(x_13) == 0) { @@ -13862,7 +13849,7 @@ else size_t x_41; uint8_t x_42; x_41 = lean_usize_of_nat(x_18); lean_dec(x_18); -x_42 = l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(x_1, x_12, x_41); +x_42 = l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_1, x_12, x_41); if (x_42 == 0) { uint8_t x_43; @@ -14250,20 +14237,6 @@ x_18 = l_Lean_Meta_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__L return x_18; } } -LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_9; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___lambda__1___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; @@ -14316,13 +14289,13 @@ x_18 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef return x_18; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { uint8_t x_15; lean_object* x_16; x_15 = lean_unbox(x_1); lean_dec(x_1); -x_16 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__1(x_15, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +x_16 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__1(x_15, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -14333,7 +14306,7 @@ lean_dec(x_7); return x_16; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -14363,12 +14336,12 @@ _start: uint8_t x_25; lean_object* x_26; x_25 = lean_unbox(x_16); lean_dec(x_16); -x_26 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_25, x_17, x_18, x_19, x_20, x_21, x_22, x_23, x_24); +x_26 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_25, x_17, x_18, x_19, x_20, x_21, x_22, x_23, x_24); lean_dec(x_17); return x_26; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { size_t x_14; size_t x_15; lean_object* x_16; @@ -14376,13 +14349,13 @@ x_14 = lean_unbox_usize(x_4); lean_dec(x_4); x_15 = lean_unbox_usize(x_5); lean_dec(x_5); -x_16 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_16 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_3); lean_dec(x_2); return x_16; } } -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; @@ -14390,7 +14363,7 @@ x_4 = lean_unbox_usize(x_2); lean_dec(x_2); x_5 = lean_unbox_usize(x_3); lean_dec(x_3); -x_6 = l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__13(x_1, x_4, x_5); +x_6 = l_Array_anyMUnsafe_any___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12(x_1, x_4, x_5); lean_dec(x_1); x_7 = lean_box(x_6); return x_7; @@ -15974,534 +15947,310 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { if (lean_obj_tag(x_1) == 0) { -lean_object* x_12; -lean_dec(x_9); -lean_dec(x_5); -x_12 = lean_box(0); +lean_object* x_13; +lean_dec(x_10); +lean_dec(x_6); +x_13 = lean_box(0); if (lean_obj_tag(x_2) == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_14, 0, x_3); -lean_ctor_set(x_14, 1, x_12); -lean_ctor_set(x_14, 2, x_4); -lean_ctor_set(x_14, 3, x_12); -lean_ctor_set(x_14, 4, x_13); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_11); -return x_15; +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_15, 0, x_3); +lean_ctor_set(x_15, 1, x_13); +lean_ctor_set(x_15, 2, x_4); +lean_ctor_set(x_15, 3, x_5); +lean_ctor_set(x_15, 4, x_13); +lean_ctor_set(x_15, 5, x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_12); +return x_16; } else { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_2); -if (x_16 == 0) +uint8_t x_17; +x_17 = !lean_is_exclusive(x_2); +if (x_17 == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_unsigned_to_nat(0u); -x_18 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_18, 0, x_3); -lean_ctor_set(x_18, 1, x_2); -lean_ctor_set(x_18, 2, x_4); -lean_ctor_set(x_18, 3, x_12); -lean_ctor_set(x_18, 4, x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_11); -return x_19; +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_unsigned_to_nat(0u); +x_19 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_19, 0, x_3); +lean_ctor_set(x_19, 1, x_2); +lean_ctor_set(x_19, 2, x_4); +lean_ctor_set(x_19, 3, x_5); +lean_ctor_set(x_19, 4, x_13); +lean_ctor_set(x_19, 5, x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_12); +return x_20; } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_2, 0); -lean_inc(x_20); +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_21 = lean_ctor_get(x_2, 0); +lean_inc(x_21); lean_dec(x_2); -x_21 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_21, 0, x_20); -x_22 = lean_unsigned_to_nat(0u); -x_23 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_23, 0, x_3); -lean_ctor_set(x_23, 1, x_21); -lean_ctor_set(x_23, 2, x_4); -lean_ctor_set(x_23, 3, x_12); -lean_ctor_set(x_23, 4, x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_11); -return x_24; +x_22 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_24, 0, x_3); +lean_ctor_set(x_24, 1, x_22); +lean_ctor_set(x_24, 2, x_4); +lean_ctor_set(x_24, 3, x_5); +lean_ctor_set(x_24, 4, x_13); +lean_ctor_set(x_24, 5, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_12); +return x_25; } } } else { -uint8_t x_25; -x_25 = !lean_is_exclusive(x_1); -if (x_25 == 0) +uint8_t x_26; +x_26 = !lean_is_exclusive(x_1); +if (x_26 == 0) { -lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_26 = lean_ctor_get(x_1, 0); -x_27 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__3; -lean_inc(x_26); -x_28 = l_Lean_Syntax_isOfKind(x_26, x_27); -if (x_28 == 0) +lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_27 = lean_ctor_get(x_1, 0); +x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__3; +lean_inc(x_27); +x_29 = l_Lean_Syntax_isOfKind(x_27, x_28); +if (x_29 == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; +lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_free_object(x_1); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_29 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5; -x_30 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4(x_26, x_29, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_26); -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) +x_30 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5; +x_31 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4(x_27, x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_27); +x_32 = !lean_is_exclusive(x_31); +if (x_32 == 0) { -return x_30; +return x_31; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_30, 0); -x_33 = lean_ctor_get(x_30, 1); +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_31, 0); +x_34 = lean_ctor_get(x_31, 1); +lean_inc(x_34); lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_30); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_dec(x_31); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; } } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_9); -lean_dec(x_5); -x_35 = lean_unsigned_to_nat(1u); -x_36 = l_Lean_Syntax_getArg(x_26, x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_26); -lean_ctor_set(x_37, 1, x_36); -lean_ctor_set(x_1, 0, x_37); +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_10); +lean_dec(x_6); +x_36 = lean_unsigned_to_nat(1u); +x_37 = l_Lean_Syntax_getArg(x_27, x_36); +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_27); +lean_ctor_set(x_38, 1, x_37); +lean_ctor_set(x_1, 0, x_38); if (lean_obj_tag(x_2) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = lean_box(0); -x_39 = lean_unsigned_to_nat(0u); -x_40 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_40, 0, x_3); -lean_ctor_set(x_40, 1, x_38); -lean_ctor_set(x_40, 2, x_4); -lean_ctor_set(x_40, 3, x_1); -lean_ctor_set(x_40, 4, x_39); -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_40); -lean_ctor_set(x_41, 1, x_11); -return x_41; +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_39 = lean_box(0); +x_40 = lean_unsigned_to_nat(0u); +x_41 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_41, 0, x_3); +lean_ctor_set(x_41, 1, x_39); +lean_ctor_set(x_41, 2, x_4); +lean_ctor_set(x_41, 3, x_5); +lean_ctor_set(x_41, 4, x_1); +lean_ctor_set(x_41, 5, x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_12); +return x_42; } else { -uint8_t x_42; -x_42 = !lean_is_exclusive(x_2); -if (x_42 == 0) +uint8_t x_43; +x_43 = !lean_is_exclusive(x_2); +if (x_43 == 0) { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_unsigned_to_nat(0u); -x_44 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_44, 0, x_3); -lean_ctor_set(x_44, 1, x_2); -lean_ctor_set(x_44, 2, x_4); -lean_ctor_set(x_44, 3, x_1); -lean_ctor_set(x_44, 4, x_43); -x_45 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_11); -return x_45; +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_unsigned_to_nat(0u); +x_45 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_45, 0, x_3); +lean_ctor_set(x_45, 1, x_2); +lean_ctor_set(x_45, 2, x_4); +lean_ctor_set(x_45, 3, x_5); +lean_ctor_set(x_45, 4, x_1); +lean_ctor_set(x_45, 5, x_44); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_12); +return x_46; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_46 = lean_ctor_get(x_2, 0); -lean_inc(x_46); +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_47 = lean_ctor_get(x_2, 0); +lean_inc(x_47); lean_dec(x_2); -x_47 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_47, 0, x_46); -x_48 = lean_unsigned_to_nat(0u); -x_49 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_49, 0, x_3); -lean_ctor_set(x_49, 1, x_47); -lean_ctor_set(x_49, 2, x_4); -lean_ctor_set(x_49, 3, x_1); -lean_ctor_set(x_49, 4, x_48); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_11); -return x_50; +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_47); +x_49 = lean_unsigned_to_nat(0u); +x_50 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_50, 0, x_3); +lean_ctor_set(x_50, 1, x_48); +lean_ctor_set(x_50, 2, x_4); +lean_ctor_set(x_50, 3, x_5); +lean_ctor_set(x_50, 4, x_1); +lean_ctor_set(x_50, 5, x_49); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_12); +return x_51; } } } } else { -lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_51 = lean_ctor_get(x_1, 0); -lean_inc(x_51); +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = lean_ctor_get(x_1, 0); +lean_inc(x_52); lean_dec(x_1); -x_52 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__3; -lean_inc(x_51); -x_53 = l_Lean_Syntax_isOfKind(x_51, x_52); -if (x_53 == 0) +x_53 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__3; +lean_inc(x_52); +x_54 = l_Lean_Syntax_isOfKind(x_52, x_53); +if (x_54 == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_54 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5; -x_55 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4(x_51, x_54, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_51); -x_56 = lean_ctor_get(x_55, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_55, 1); +x_55 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5; +x_56 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__4(x_52, x_55, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_52); +x_57 = lean_ctor_get(x_56, 0); lean_inc(x_57); -if (lean_is_exclusive(x_55)) { - lean_ctor_release(x_55, 0); - lean_ctor_release(x_55, 1); - x_58 = x_55; +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_59 = x_56; } else { - lean_dec_ref(x_55); - x_58 = lean_box(0); + lean_dec_ref(x_56); + x_59 = lean_box(0); } -if (lean_is_scalar(x_58)) { - x_59 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_59)) { + x_60 = lean_alloc_ctor(1, 2, 0); } else { - x_59 = x_58; + x_60 = x_59; } -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_57); -return x_59; +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_58); +return x_60; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_9); -lean_dec(x_5); -x_60 = lean_unsigned_to_nat(1u); -x_61 = l_Lean_Syntax_getArg(x_51, x_60); -x_62 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_62, 0, x_51); -lean_ctor_set(x_62, 1, x_61); -x_63 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_63, 0, x_62); +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_10); +lean_dec(x_6); +x_61 = lean_unsigned_to_nat(1u); +x_62 = l_Lean_Syntax_getArg(x_52, x_61); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_52); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_64, 0, x_63); if (lean_obj_tag(x_2) == 0) { -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_64 = lean_box(0); -x_65 = lean_unsigned_to_nat(0u); -x_66 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_66, 0, x_3); -lean_ctor_set(x_66, 1, x_64); -lean_ctor_set(x_66, 2, x_4); -lean_ctor_set(x_66, 3, x_63); -lean_ctor_set(x_66, 4, x_65); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_11); -return x_67; +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_65 = lean_box(0); +x_66 = lean_unsigned_to_nat(0u); +x_67 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_67, 0, x_3); +lean_ctor_set(x_67, 1, x_65); +lean_ctor_set(x_67, 2, x_4); +lean_ctor_set(x_67, 3, x_5); +lean_ctor_set(x_67, 4, x_64); +lean_ctor_set(x_67, 5, x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_12); +return x_68; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_68 = lean_ctor_get(x_2, 0); -lean_inc(x_68); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_69 = lean_ctor_get(x_2, 0); +lean_inc(x_69); if (lean_is_exclusive(x_2)) { lean_ctor_release(x_2, 0); - x_69 = x_2; + x_70 = x_2; } else { lean_dec_ref(x_2); - x_69 = lean_box(0); + x_70 = lean_box(0); } -if (lean_is_scalar(x_69)) { - x_70 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_70)) { + x_71 = lean_alloc_ctor(1, 1, 0); } else { - x_70 = x_69; + x_71 = x_70; } -lean_ctor_set(x_70, 0, x_68); -x_71 = lean_unsigned_to_nat(0u); -x_72 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_72, 0, x_3); -lean_ctor_set(x_72, 1, x_70); -lean_ctor_set(x_72, 2, x_4); -lean_ctor_set(x_72, 3, x_63); -lean_ctor_set(x_72, 4, x_71); -x_73 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_73, 0, x_72); -lean_ctor_set(x_73, 1, x_11); -return x_73; +lean_ctor_set(x_71, 0, x_69); +x_72 = lean_unsigned_to_nat(0u); +x_73 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_73, 0, x_3); +lean_ctor_set(x_73, 1, x_71); +lean_ctor_set(x_73, 2, x_4); +lean_ctor_set(x_73, 3, x_5); +lean_ctor_set(x_73, 4, x_64); +lean_ctor_set(x_73, 5, x_72); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_73); +lean_ctor_set(x_74, 1, x_12); +return x_74; } } } } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_unsigned_to_nat(2u); -x_13 = l_Lean_Syntax_getArg(x_1, x_12); -lean_inc(x_13); -x_14 = l_Lean_Syntax_matchesNull(x_13, x_12); -if (x_14 == 0) -{ -lean_object* x_15; uint8_t x_16; -x_15 = lean_unsigned_to_nat(0u); -x_16 = l_Lean_Syntax_matchesNull(x_13, x_15); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; uint8_t x_19; -lean_dec(x_4); -lean_dec(x_2); -x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; -x_18 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_1, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_1); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -return x_18; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_18, 0); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_18); -x_22 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_unsigned_to_nat(3u); -x_24 = l_Lean_Syntax_getArg(x_1, x_23); -if (lean_obj_tag(x_4) == 0) -{ -uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = 0; -x_26 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; -x_27 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_27, 0, x_1); -lean_ctor_set(x_27, 1, x_26); -lean_ctor_set(x_27, 2, x_24); -lean_ctor_set_uint8(x_27, sizeof(void*)*3, x_25); -lean_ctor_set_uint8(x_27, sizeof(void*)*3 + 1, x_25); -x_28 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_28, 0, x_27); -x_29 = lean_apply_8(x_2, x_28, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_29; -} -else -{ -uint8_t x_30; -x_30 = !lean_is_exclusive(x_4); -if (x_30 == 0) -{ -lean_object* x_31; uint8_t x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; -x_31 = lean_ctor_get(x_4, 0); -lean_dec(x_31); -x_32 = 1; -x_33 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; -x_34 = 0; -x_35 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_35, 0, x_1); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_35, 2, x_24); -lean_ctor_set_uint8(x_35, sizeof(void*)*3, x_32); -lean_ctor_set_uint8(x_35, sizeof(void*)*3 + 1, x_34); -lean_ctor_set(x_4, 0, x_35); -x_36 = lean_apply_8(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_36; -} -else -{ -uint8_t x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -lean_dec(x_4); -x_37 = 1; -x_38 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; -x_39 = 0; -x_40 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_40, 0, x_1); -lean_ctor_set(x_40, 1, x_38); -lean_ctor_set(x_40, 2, x_24); -lean_ctor_set_uint8(x_40, sizeof(void*)*3, x_37); -lean_ctor_set_uint8(x_40, sizeof(void*)*3 + 1, x_39); -x_41 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_41, 0, x_40); -x_42 = lean_apply_8(x_2, x_41, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_42; -} -} -} -} -else -{ -lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_43 = lean_unsigned_to_nat(0u); -x_44 = l_Lean_Syntax_getArg(x_13, x_43); -lean_dec(x_13); -lean_inc(x_44); -x_45 = l_Lean_Syntax_matchesNull(x_44, x_43); -if (x_45 == 0) -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_unsigned_to_nat(3u); -x_47 = l_Lean_Syntax_getArg(x_1, x_46); -x_48 = l_Lean_Syntax_getArgs(x_44); -lean_dec(x_44); -if (lean_obj_tag(x_4) == 0) -{ -uint8_t x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_49 = 0; -x_50 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_50, 0, x_1); -lean_ctor_set(x_50, 1, x_48); -lean_ctor_set(x_50, 2, x_47); -lean_ctor_set_uint8(x_50, sizeof(void*)*3, x_49); -lean_ctor_set_uint8(x_50, sizeof(void*)*3 + 1, x_49); -x_51 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_51, 0, x_50); -x_52 = lean_apply_8(x_2, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_52; -} -else -{ -uint8_t x_53; -x_53 = !lean_is_exclusive(x_4); -if (x_53 == 0) -{ -lean_object* x_54; uint8_t x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_4, 0); -lean_dec(x_54); -x_55 = 1; -x_56 = 0; -x_57 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_57, 0, x_1); -lean_ctor_set(x_57, 1, x_48); -lean_ctor_set(x_57, 2, x_47); -lean_ctor_set_uint8(x_57, sizeof(void*)*3, x_55); -lean_ctor_set_uint8(x_57, sizeof(void*)*3 + 1, x_56); -lean_ctor_set(x_4, 0, x_57); -x_58 = lean_apply_8(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_58; -} -else -{ -uint8_t x_59; uint8_t x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_4); -x_59 = 1; -x_60 = 0; -x_61 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_61, 0, x_1); -lean_ctor_set(x_61, 1, x_48); -lean_ctor_set(x_61, 2, x_47); -lean_ctor_set_uint8(x_61, sizeof(void*)*3, x_59); -lean_ctor_set_uint8(x_61, sizeof(void*)*3 + 1, x_60); -x_62 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_62, 0, x_61); -x_63 = lean_apply_8(x_2, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_63; -} -} -} -else -{ -lean_object* x_64; lean_object* x_65; uint8_t x_66; -lean_dec(x_44); -lean_dec(x_4); -lean_dec(x_2); -x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4; -x_65 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_1, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_1); -x_66 = !lean_is_exclusive(x_65); -if (x_66 == 0) -{ -return x_65; -} -else -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_65, 0); -x_68 = lean_ctor_get(x_65, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_65); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; -} -} -} +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_1); +lean_ctor_set(x_12, 1, x_4); +x_13 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_13, 0, x_12); +x_14 = lean_apply_8(x_2, x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_14; } } static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); return x_1; } } @@ -16517,7 +16266,613 @@ x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3() { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_5, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_4); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = lean_ctor_get(x_4, 0); +lean_inc(x_5); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed), 12, 4); +lean_closure_set(x_17, 0, x_1); +lean_closure_set(x_17, 1, x_2); +lean_closure_set(x_17, 2, x_3); +lean_closure_set(x_17, 3, x_5); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; +lean_inc(x_16); +x_19 = l_Lean_Syntax_isOfKind(x_16, x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_17); +lean_free_object(x_4); +lean_dec(x_16); +x_20 = lean_box(0); +x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_5, x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_unsigned_to_nat(1u); +x_23 = l_Lean_Syntax_getArg(x_16, x_22); +x_24 = l_Lean_Syntax_isNone(x_23); +if (x_24 == 0) +{ +lean_object* x_25; uint8_t x_26; +x_25 = lean_unsigned_to_nat(2u); +lean_inc(x_23); +x_26 = l_Lean_Syntax_matchesNull(x_23, x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_23); +lean_dec(x_17); +lean_free_object(x_4); +lean_dec(x_16); +x_27 = lean_box(0); +x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_5, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_29 = l_Lean_Syntax_getArg(x_23, x_22); +lean_dec(x_23); +lean_ctor_set(x_4, 0, x_29); +x_30 = lean_box(0); +x_31 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_16, x_17, x_30, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_23); +lean_free_object(x_4); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_32 = lean_box(0); +x_33 = lean_box(0); +x_34 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_16, x_17, x_33, x_32, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_34; +} +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_35 = lean_ctor_get(x_4, 0); +lean_inc(x_35); +lean_dec(x_4); +lean_inc(x_5); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_36 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed), 12, 4); +lean_closure_set(x_36, 0, x_1); +lean_closure_set(x_36, 1, x_2); +lean_closure_set(x_36, 2, x_3); +lean_closure_set(x_36, 3, x_5); +x_37 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; +lean_inc(x_35); +x_38 = l_Lean_Syntax_isOfKind(x_35, x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_36); +lean_dec(x_35); +x_39 = lean_box(0); +x_40 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_5, x_39, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_40; +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = lean_unsigned_to_nat(1u); +x_42 = l_Lean_Syntax_getArg(x_35, x_41); +x_43 = l_Lean_Syntax_isNone(x_42); +if (x_43 == 0) +{ +lean_object* x_44; uint8_t x_45; +x_44 = lean_unsigned_to_nat(2u); +lean_inc(x_42); +x_45 = l_Lean_Syntax_matchesNull(x_42, x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_42); +lean_dec(x_36); +lean_dec(x_35); +x_46 = lean_box(0); +x_47 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_5, x_46, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_48 = l_Lean_Syntax_getArg(x_42, x_41); +lean_dec(x_42); +x_49 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_49, 0, x_48); +x_50 = lean_box(0); +x_51 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_35, x_36, x_50, x_49, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_42); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_52 = lean_box(0); +x_53 = lean_box(0); +x_54 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_35, x_36, x_53, x_52, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_54; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = lean_apply_8(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_11; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_12 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_1, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) +{ +return x_12; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_12); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_12 = 0; +x_13 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; +x_14 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_13); +lean_ctor_set(x_14, 2, x_4); +lean_ctor_set_uint8(x_14, sizeof(void*)*3, x_12); +lean_ctor_set_uint8(x_14, sizeof(void*)*3 + 1, x_12); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = lean_apply_8(x_2, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_3); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_18 = lean_ctor_get(x_3, 0); +lean_dec(x_18); +x_19 = 1; +x_20 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; +x_21 = 0; +x_22 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_22, 0, x_1); +lean_ctor_set(x_22, 1, x_20); +lean_ctor_set(x_22, 2, x_4); +lean_ctor_set_uint8(x_22, sizeof(void*)*3, x_19); +lean_ctor_set_uint8(x_22, sizeof(void*)*3 + 1, x_21); +lean_ctor_set(x_3, 0, x_22); +x_23 = lean_apply_8(x_2, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_23; +} +else +{ +uint8_t x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_3); +x_24 = 1; +x_25 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; +x_26 = 0; +x_27 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_27, 0, x_1); +lean_ctor_set(x_27, 1, x_25); +lean_ctor_set(x_27, 2, x_4); +lean_ctor_set_uint8(x_27, sizeof(void*)*3, x_24); +lean_ctor_set_uint8(x_27, sizeof(void*)*3 + 1, x_26); +x_28 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_28, 0, x_27); +x_29 = lean_apply_8(x_2, x_28, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = 0; +x_14 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_4); +lean_ctor_set(x_14, 2, x_5); +lean_ctor_set_uint8(x_14, sizeof(void*)*3, x_13); +lean_ctor_set_uint8(x_14, sizeof(void*)*3 + 1, x_13); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = lean_apply_8(x_2, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_3); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_3, 0); +lean_dec(x_18); +x_19 = 1; +x_20 = 0; +x_21 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_21, 0, x_1); +lean_ctor_set(x_21, 1, x_4); +lean_ctor_set(x_21, 2, x_5); +lean_ctor_set_uint8(x_21, sizeof(void*)*3, x_19); +lean_ctor_set_uint8(x_21, sizeof(void*)*3 + 1, x_20); +lean_ctor_set(x_3, 0, x_21); +x_22 = lean_apply_8(x_2, x_3, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_22; +} +else +{ +uint8_t x_23; uint8_t x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_3); +x_23 = 1; +x_24 = 0; +x_25 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_25, 0, x_1); +lean_ctor_set(x_25, 1, x_4); +lean_ctor_set(x_25, 2, x_5); +lean_ctor_set_uint8(x_25, sizeof(void*)*3, x_23); +lean_ctor_set_uint8(x_25, sizeof(void*)*3 + 1, x_24); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_25); +x_27 = lean_apply_8(x_2, x_26, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_27; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2; +x_13 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_1, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +return x_13; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_13); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_15 = lean_unsigned_to_nat(2u); +x_16 = l_Lean_Syntax_getArg(x_1, x_15); +lean_inc(x_16); +x_17 = l_Lean_Syntax_matchesNull(x_16, x_15); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; +lean_dec(x_5); +lean_dec(x_4); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Syntax_matchesNull(x_16, x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_7); +lean_dec(x_3); +x_20 = lean_box(0); +x_21 = lean_apply_8(x_2, x_20, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_2); +x_22 = lean_unsigned_to_nat(3u); +x_23 = l_Lean_Syntax_getArg(x_1, x_22); +x_24 = lean_apply_9(x_3, x_7, x_23, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +lean_dec(x_3); +lean_dec(x_2); +x_25 = lean_unsigned_to_nat(0u); +x_26 = l_Lean_Syntax_getArg(x_16, x_25); +lean_dec(x_16); +lean_inc(x_26); +x_27 = l_Lean_Syntax_matchesNull(x_26, x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_5); +x_28 = lean_unsigned_to_nat(3u); +x_29 = l_Lean_Syntax_getArg(x_1, x_28); +x_30 = l_Lean_Syntax_getArgs(x_26); +lean_dec(x_26); +x_31 = lean_apply_10(x_4, x_7, x_30, x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_31; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_26); +lean_dec(x_4); +x_32 = lean_unsigned_to_nat(3u); +x_33 = l_Lean_Syntax_getArg(x_1, x_32); +x_34 = lean_apply_9(x_5, x_7, x_33, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_18 = l_Lean_Syntax_matchesNull(x_1, x_17); +if (x_18 == 0) +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +if (x_2 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_19 = lean_box(0); +x_20 = lean_apply_8(x_3, x_19, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_20; +} +else +{ +lean_object* x_21; +lean_dec(x_3); +x_21 = lean_apply_9(x_4, x_9, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +lean_dec(x_4); +lean_dec(x_3); +x_22 = lean_unsigned_to_nat(0u); +x_23 = l_Lean_Syntax_getArg(x_1, x_22); +lean_dec(x_1); +lean_inc(x_23); +x_24 = l_Lean_Syntax_matchesNull(x_23, x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_7); +x_25 = l_Lean_Syntax_getArgs(x_23); +lean_dec(x_23); +x_26 = lean_apply_10(x_6, x_9, x_25, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_26; +} +else +{ +lean_object* x_27; +lean_dec(x_23); +lean_dec(x_6); +x_27 = lean_apply_9(x_7, x_9, x_5, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; uint8_t x_16; +x_15 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_16 = l_Lean_Syntax_matchesNull(x_1, x_15); +if (x_16 == 0) +{ +lean_object* x_17; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_17 = lean_apply_9(x_2, x_7, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +lean_dec(x_2); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Syntax_getArg(x_1, x_18); +lean_dec(x_1); +lean_inc(x_19); +x_20 = l_Lean_Syntax_matchesNull(x_19, x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_5); +x_21 = l_Lean_Syntax_getArgs(x_19); +lean_dec(x_19); +x_22 = lean_apply_10(x_4, x_7, x_21, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_22; +} +else +{ +lean_object* x_23; +lean_dec(x_19); +lean_dec(x_4); +x_23 = lean_apply_9(x_5, x_7, x_3, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_23; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__4; +x_2 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__1; +x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__1; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3() { _start: { lean_object* x_1; @@ -16525,130 +16880,131 @@ x_1 = lean_mk_string_unchecked("terminationBy\?", 14, 14); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__4; x_2 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__1; x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__1; -x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpointursion", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { if (lean_obj_tag(x_3) == 0) { lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); -x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_4, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_1, x_4, x_2, x_3, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_13; } else { -uint8_t x_14; -x_14 = !lean_is_exclusive(x_3); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_15 = lean_ctor_get(x_3, 0); +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_14 = lean_ctor_get(x_3, 0); +lean_inc(x_14); +lean_inc(x_3); lean_inc(x_2); lean_inc(x_4); lean_inc(x_1); -x_16 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed), 11, 3); -lean_closure_set(x_16, 0, x_1); -lean_closure_set(x_16, 1, x_4); -lean_closure_set(x_16, 2, x_2); -x_17 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; -lean_inc(x_15); -x_18 = l_Lean_Syntax_isOfKind(x_15, x_17); -if (x_18 == 0) +x_15 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3), 12, 4); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_4); +lean_closure_set(x_15, 2, x_2); +lean_closure_set(x_15, 3, x_3); +x_16 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2; +lean_inc(x_14); +x_17 = l_Lean_Syntax_isOfKind(x_14, x_16); +if (x_17 == 0) { -lean_object* x_19; uint8_t x_20; -lean_dec(x_16); -lean_free_object(x_3); -x_19 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4; -lean_inc(x_15); -x_20 = l_Lean_Syntax_isOfKind(x_15, x_19); -if (x_20 == 0) +lean_object* x_18; uint8_t x_19; +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4; +lean_inc(x_14); +x_19 = l_Lean_Syntax_isOfKind(x_14, x_18); +if (x_19 == 0) { -lean_object* x_21; lean_object* x_22; uint8_t x_23; +lean_object* x_20; uint8_t x_21; lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; -x_22 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_15, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; +lean_inc(x_14); +x_21 = l_Lean_Syntax_isOfKind(x_14, x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +lean_dec(x_15); +x_22 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_23 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_14, x_22, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_15); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) +lean_dec(x_14); +x_24 = !lean_is_exclusive(x_23); +if (x_24 == 0) { -return x_22; +return x_23; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_22, 0); -x_25 = lean_ctor_get(x_22, 1); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_23, 0); +x_26 = lean_ctor_get(x_23, 1); +lean_inc(x_26); lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_22); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; +lean_dec(x_23); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; } } else { -lean_object* x_27; lean_object* x_28; -lean_dec(x_15); -x_27 = lean_box(0); -x_28 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_4, x_2, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_28; -} -} -else +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = lean_unsigned_to_nat(1u); +x_29 = l_Lean_Syntax_getArg(x_14, x_28); +x_30 = l_Lean_Syntax_isNone(x_29); +if (x_30 == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_29 = lean_unsigned_to_nat(1u); -x_30 = l_Lean_Syntax_getArg(x_15, x_29); -x_31 = l_Lean_Syntax_isNone(x_30); -if (x_31 == 0) -{ -uint8_t x_32; -lean_inc(x_30); -x_32 = l_Lean_Syntax_matchesNull(x_30, x_29); +lean_object* x_31; uint8_t x_32; +x_31 = lean_unsigned_to_nat(2u); +x_32 = l_Lean_Syntax_matchesNull(x_29, x_31); if (x_32 == 0) { lean_object* x_33; lean_object* x_34; uint8_t x_35; -lean_dec(x_30); -lean_dec(x_16); -lean_free_object(x_3); -x_33 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; -x_34 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_15, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_15); +x_33 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_34 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_14, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_15); +lean_dec(x_14); x_35 = !lean_is_exclusive(x_34); if (x_35 == 0) { @@ -16670,180 +17026,479 @@ return x_38; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_39 = lean_unsigned_to_nat(0u); -x_40 = l_Lean_Syntax_getArg(x_30, x_39); -lean_dec(x_30); -lean_ctor_set(x_3, 0, x_40); +lean_object* x_39; lean_object* x_40; +lean_dec(x_14); +x_39 = lean_box(0); +x_40 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_15, x_39, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_29); +lean_dec(x_14); x_41 = lean_box(0); -x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_15, x_16, x_41, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_15, x_41, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_42; } } +} else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; -lean_dec(x_30); -lean_free_object(x_3); +lean_object* x_43; lean_object* x_44; +lean_dec(x_15); +lean_dec(x_14); x_43 = lean_box(0); -x_44 = lean_box(0); -x_45 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_15, x_16, x_44, x_43, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_45; -} +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_1, x_4, x_2, x_3, x_43, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_44; } } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_46 = lean_ctor_get(x_3, 0); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_45 = lean_unsigned_to_nat(1u); +x_46 = l_Lean_Syntax_getArg(x_14, x_45); +lean_inc(x_15); +lean_inc(x_14); +x_47 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___boxed), 10, 2); +lean_closure_set(x_47, 0, x_14); +lean_closure_set(x_47, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_48 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6), 11, 2); +lean_closure_set(x_48, 0, x_14); +lean_closure_set(x_48, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_49 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__7), 12, 2); +lean_closure_set(x_49, 0, x_14); +lean_closure_set(x_49, 1, x_15); +lean_inc(x_15); +lean_inc(x_14); +x_50 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___boxed), 11, 2); +lean_closure_set(x_50, 0, x_14); +lean_closure_set(x_50, 1, x_15); +x_51 = lean_unsigned_to_nat(0u); lean_inc(x_46); +x_52 = l_Lean_Syntax_matchesNull(x_46, x_51); +if (x_52 == 0) +{ +uint8_t x_53; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_3); +if (x_53 == 0) +{ +lean_object* x_54; uint8_t x_55; +x_54 = lean_ctor_get(x_3, 0); +lean_dec(x_54); +x_55 = l_Lean_Syntax_isNone(x_46); +if (x_55 == 0) +{ +uint8_t x_56; +lean_inc(x_46); +x_56 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_56 == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_free_object(x_3); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_57 = lean_box(0); +x_58 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_57, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_58; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_15); +x_59 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_59); +x_60 = lean_box(0); +x_61 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(x_14, x_47, x_48, x_49, x_50, x_60, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +x_62 = lean_box(0); +x_63 = lean_box(0); +x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(x_14, x_47, x_48, x_49, x_50, x_63, x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_64; +} +} +else +{ +uint8_t x_65; lean_dec(x_3); -lean_inc(x_2); -lean_inc(x_4); -lean_inc(x_1); -x_47 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed), 11, 3); -lean_closure_set(x_47, 0, x_1); -lean_closure_set(x_47, 1, x_4); -lean_closure_set(x_47, 2, x_2); -x_48 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2; +x_65 = l_Lean_Syntax_isNone(x_46); +if (x_65 == 0) +{ +uint8_t x_66; lean_inc(x_46); -x_49 = l_Lean_Syntax_isOfKind(x_46, x_48); -if (x_49 == 0) +x_66 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_66 == 0) { -lean_object* x_50; uint8_t x_51; +lean_object* x_67; lean_object* x_68; +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); lean_dec(x_47); -x_50 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4; -lean_inc(x_46); -x_51 = l_Lean_Syntax_isOfKind(x_46, x_50); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_52 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; -x_53 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_46, x_52, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_46); +x_67 = lean_box(0); +x_68 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_67, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_46); -x_54 = lean_ctor_get(x_53, 0); -lean_inc(x_54); -x_55 = lean_ctor_get(x_53, 1); -lean_inc(x_55); -if (lean_is_exclusive(x_53)) { - lean_ctor_release(x_53, 0); - lean_ctor_release(x_53, 1); - x_56 = x_53; -} else { - lean_dec_ref(x_53); - x_56 = lean_box(0); -} -if (lean_is_scalar(x_56)) { - x_57 = lean_alloc_ctor(1, 2, 0); -} else { - x_57 = x_56; -} -lean_ctor_set(x_57, 0, x_54); -lean_ctor_set(x_57, 1, x_55); -return x_57; +lean_dec(x_15); +lean_dec(x_14); +return x_68; } else { -lean_object* x_58; lean_object* x_59; +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_15); +x_69 = l_Lean_Syntax_getArg(x_46, x_51); lean_dec(x_46); -x_58 = lean_box(0); -x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_4, x_2, x_58, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_59; +x_70 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_70, 0, x_69); +x_71 = lean_box(0); +x_72 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(x_14, x_47, x_48, x_49, x_50, x_71, x_70, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_72; } } else { -lean_object* x_60; lean_object* x_61; uint8_t x_62; -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_60 = lean_unsigned_to_nat(1u); -x_61 = l_Lean_Syntax_getArg(x_46, x_60); -x_62 = l_Lean_Syntax_isNone(x_61); -if (x_62 == 0) -{ -uint8_t x_63; -lean_inc(x_61); -x_63 = l_Lean_Syntax_matchesNull(x_61, x_60); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_61); -lean_dec(x_47); -x_64 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2; -x_65 = l_Lean_throwErrorAt___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__6(x_46, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_dec(x_46); -x_66 = lean_ctor_get(x_65, 0); -lean_inc(x_66); -x_67 = lean_ctor_get(x_65, 1); -lean_inc(x_67); -if (lean_is_exclusive(x_65)) { - lean_ctor_release(x_65, 0); - lean_ctor_release(x_65, 1); - x_68 = x_65; -} else { - lean_dec_ref(x_65); - x_68 = lean_box(0); -} -if (lean_is_scalar(x_68)) { - x_69 = lean_alloc_ctor(1, 2, 0); -} else { - x_69 = x_68; -} -lean_ctor_set(x_69, 0, x_66); -lean_ctor_set(x_69, 1, x_67); -return x_69; -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_70 = lean_unsigned_to_nat(0u); -x_71 = l_Lean_Syntax_getArg(x_61, x_70); -lean_dec(x_61); -x_72 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_72, 0, x_71); +lean_dec(x_15); x_73 = lean_box(0); -x_74 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_46, x_47, x_73, x_72, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_74; +x_74 = lean_box(0); +x_75 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(x_14, x_47, x_48, x_49, x_50, x_74, x_73, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_14); +return x_75; +} } } else { -lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_61); -x_75 = lean_box(0); -x_76 = lean_box(0); -x_77 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2(x_46, x_47, x_76, x_75, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_77; +lean_object* x_76; lean_object* x_77; uint8_t x_78; +x_76 = lean_unsigned_to_nat(2u); +x_77 = l_Lean_Syntax_getArg(x_14, x_76); +lean_inc(x_77); +x_78 = l_Lean_Syntax_matchesNull(x_77, x_51); +if (x_78 == 0) +{ +uint8_t x_79; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_79 = !lean_is_exclusive(x_3); +if (x_79 == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_80 = lean_ctor_get(x_3, 0); +lean_dec(x_80); +x_81 = lean_unsigned_to_nat(3u); +x_82 = l_Lean_Syntax_getArg(x_14, x_81); +x_83 = l_Lean_Syntax_isNone(x_46); +if (x_83 == 0) +{ +uint8_t x_84; +lean_inc(x_46); +x_84 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; +lean_dec(x_82); +lean_free_object(x_3); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_85 = lean_box(0); +x_86 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_85, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_86; +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_dec(x_15); +lean_dec(x_14); +x_87 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_87); +x_88 = lean_box(0); +x_89 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(x_77, x_78, x_47, x_48, x_82, x_49, x_50, x_88, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_89; +} +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_90 = lean_box(0); +x_91 = lean_box(0); +x_92 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(x_77, x_78, x_47, x_48, x_82, x_49, x_50, x_91, x_90, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_92; +} +} +else +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; +lean_dec(x_3); +x_93 = lean_unsigned_to_nat(3u); +x_94 = l_Lean_Syntax_getArg(x_14, x_93); +x_95 = l_Lean_Syntax_isNone(x_46); +if (x_95 == 0) +{ +uint8_t x_96; +lean_inc(x_46); +x_96 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; +lean_dec(x_94); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +x_97 = lean_box(0); +x_98 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_97, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_98; +} +else +{ +lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; +lean_dec(x_15); +lean_dec(x_14); +x_99 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +x_100 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_100, 0, x_99); +x_101 = lean_box(0); +x_102 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(x_77, x_78, x_47, x_48, x_94, x_49, x_50, x_101, x_100, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_102; +} +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_103 = lean_box(0); +x_104 = lean_box(0); +x_105 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(x_77, x_78, x_47, x_48, x_94, x_49, x_50, x_104, x_103, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_105; +} +} +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; uint8_t x_109; +lean_dec(x_47); +x_106 = lean_unsigned_to_nat(3u); +x_107 = l_Lean_Syntax_getArg(x_14, x_106); +x_108 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6; +x_109 = l_Lean_Syntax_matchesIdent(x_107, x_108); +if (x_109 == 0) +{ +uint8_t x_110; +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_110 = !lean_is_exclusive(x_3); +if (x_110 == 0) +{ +lean_object* x_111; uint8_t x_112; +x_111 = lean_ctor_get(x_3, 0); +lean_dec(x_111); +x_112 = l_Lean_Syntax_isNone(x_46); +if (x_112 == 0) +{ +uint8_t x_113; +lean_inc(x_46); +x_113 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_113 == 0) +{ +lean_object* x_114; lean_object* x_115; +lean_free_object(x_3); +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +x_114 = lean_box(0); +x_115 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_114, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_115; +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; +lean_dec(x_15); +lean_dec(x_14); +x_116 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_3, 0, x_116); +x_117 = lean_box(0); +x_118 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(x_77, x_48, x_107, x_49, x_50, x_117, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_118; +} +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +lean_free_object(x_3); +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_119 = lean_box(0); +x_120 = lean_box(0); +x_121 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(x_77, x_48, x_107, x_49, x_50, x_120, x_119, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_121; +} +} +else +{ +uint8_t x_122; +lean_dec(x_3); +x_122 = l_Lean_Syntax_isNone(x_46); +if (x_122 == 0) +{ +uint8_t x_123; +lean_inc(x_46); +x_123 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_123 == 0) +{ +lean_object* x_124; lean_object* x_125; +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +x_124 = lean_box(0); +x_125 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_14, x_15, x_124, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_15); +lean_dec(x_14); +return x_125; +} +else +{ +lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; +lean_dec(x_15); +lean_dec(x_14); +x_126 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +x_127 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_127, 0, x_126); +x_128 = lean_box(0); +x_129 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(x_77, x_48, x_107, x_49, x_50, x_128, x_127, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_129; +} +} +else +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; +lean_dec(x_46); +lean_dec(x_15); +lean_dec(x_14); +x_130 = lean_box(0); +x_131 = lean_box(0); +x_132 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(x_77, x_48, x_107, x_49, x_50, x_131, x_130, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_132; +} +} +} +else +{ +uint8_t x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; +lean_dec(x_107); +lean_dec(x_77); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +lean_dec(x_15); +x_133 = 0; +x_134 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1; +x_135 = lean_box(0); +x_136 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_136, 0, x_14); +lean_ctor_set(x_136, 1, x_134); +lean_ctor_set(x_136, 2, x_135); +lean_ctor_set_uint8(x_136, sizeof(void*)*3, x_133); +lean_ctor_set_uint8(x_136, sizeof(void*)*3 + 1, x_133); +x_137 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_137, 0, x_136); +x_138 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_1, x_4, x_2, x_3, x_137, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_138; } } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { if (lean_obj_tag(x_2) == 0) { lean_object* x_12; lean_object* x_13; x_12 = lean_box(0); -x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_4, x_1, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12(x_4, x_1, x_2, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_13; } else @@ -16851,7 +17506,7 @@ else lean_object* x_14; lean_object* x_15; uint8_t x_16; x_14 = lean_ctor_get(x_2, 0); lean_inc(x_14); -x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4; lean_inc(x_14); x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); if (x_16 == 0) @@ -16859,7 +17514,7 @@ if (x_16 == 0) lean_object* x_17; lean_object* x_18; lean_dec(x_14); x_17 = lean_box(0); -x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_4, x_1, x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12(x_4, x_1, x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_18; } else @@ -16867,13 +17522,13 @@ else lean_object* x_19; lean_object* x_20; x_19 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_19, 0, x_14); -x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3(x_4, x_1, x_2, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12(x_4, x_1, x_2, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_20; } } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1() { _start: { lean_object* x_1; @@ -16881,7 +17536,7 @@ x_1 = lean_mk_string_unchecked("Unexpected Termination.suffix syntax: ", 38, 38) return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2() { _start: { lean_object* x_1; @@ -16889,7 +17544,7 @@ x_1 = lean_mk_string_unchecked(" of kind ", 9, 9); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -16913,10 +17568,10 @@ lean_inc(x_1); x_18 = l_Lean_Syntax_formatStxAux(x_15, x_16, x_17, x_1); x_19 = l_Std_Format_defWidth; x_20 = lean_format_pretty(x_18, x_19, x_17, x_17); -x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; +x_21 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1; x_22 = lean_string_append(x_21, x_20); lean_dec(x_20); -x_23 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_23 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2; x_24 = lean_string_append(x_22, x_23); lean_inc(x_1); x_25 = l_Lean_Syntax_getKind(x_1); @@ -16958,10 +17613,10 @@ lean_inc(x_1); x_41 = l_Lean_Syntax_formatStxAux(x_39, x_40, x_35, x_1); x_42 = l_Std_Format_defWidth; x_43 = lean_format_pretty(x_41, x_42, x_35, x_35); -x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1; x_45 = lean_string_append(x_44, x_43); lean_dec(x_43); -x_46 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_46 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2; x_47 = lean_string_append(x_45, x_46); lean_inc(x_1); x_48 = l_Lean_Syntax_getKind(x_1); @@ -16989,7 +17644,7 @@ lean_object* x_58; lean_object* x_59; lean_object* x_60; x_58 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_58, 0, x_36); x_59 = lean_box(0); -x_60 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_1, x_3, x_59, x_58, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_60 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13(x_1, x_3, x_59, x_58, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_60; } } @@ -17000,12 +17655,12 @@ lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_dec(x_12); x_61 = lean_box(0); x_62 = lean_box(0); -x_63 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_1, x_3, x_62, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_63 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13(x_1, x_3, x_62, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_10); return x_63; } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1() { _start: { lean_object* x_1; @@ -17013,23 +17668,23 @@ x_1 = lean_mk_string_unchecked("suffix", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_MutualDef___hyg_5____closed__4; x_2 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders_getBodyTerm_x3f___closed__1; x_3 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__1; -x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1; +x_4 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; uint8_t x_11; -x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2; +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2; lean_inc(x_1); x_11 = l_Lean_Syntax_isOfKind(x_1, x_10); if (x_11 == 0) @@ -17042,10 +17697,10 @@ lean_inc(x_1); x_15 = l_Lean_Syntax_formatStxAux(x_12, x_13, x_14, x_1); x_16 = l_Std_Format_defWidth; x_17 = lean_format_pretty(x_15, x_16, x_14, x_14); -x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1; x_19 = lean_string_append(x_18, x_17); lean_dec(x_17); -x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_20 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2; x_21 = lean_string_append(x_19, x_20); lean_inc(x_1); x_22 = l_Lean_Syntax_getKind(x_1); @@ -17089,10 +17744,10 @@ lean_inc(x_1); x_39 = l_Lean_Syntax_formatStxAux(x_37, x_38, x_32, x_1); x_40 = l_Std_Format_defWidth; x_41 = lean_format_pretty(x_39, x_40, x_32, x_32); -x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1; +x_42 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1; x_43 = lean_string_append(x_42, x_41); lean_dec(x_41); -x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2; +x_44 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2; x_45 = lean_string_append(x_43, x_44); lean_inc(x_1); x_46 = l_Lean_Syntax_getKind(x_1); @@ -17122,7 +17777,7 @@ lean_dec(x_33); x_57 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_57, 0, x_56); x_58 = lean_box(0); -x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_1, x_58, x_57, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_59 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14(x_1, x_58, x_57, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_59; } } @@ -17132,7 +17787,7 @@ lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_dec(x_33); x_60 = lean_box(0); x_61 = lean_box(0); -x_62 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_1, x_61, x_60, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_62 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14(x_1, x_61, x_60, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_62; } } @@ -17152,12 +17807,13 @@ lean_dec(x_3); lean_dec(x_2); x_9 = lean_box(0); x_10 = lean_unsigned_to_nat(0u); -x_11 = lean_alloc_ctor(0, 5, 0); +x_11 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_11, 0, x_1); lean_ctor_set(x_11, 1, x_9); lean_ctor_set(x_11, 2, x_9); lean_ctor_set(x_11, 3, x_9); -lean_ctor_set(x_11, 4, x_10); +lean_ctor_set(x_11, 4, x_9); +lean_ctor_set(x_11, 5, x_10); x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_8); @@ -17167,7 +17823,7 @@ else { lean_object* x_13; lean_object* x_14; x_13 = lean_box(0); -x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(x_1, x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_14 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15(x_1, x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8); return x_14; } } @@ -17303,16 +17959,16 @@ lean_dec(x_1); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_12; -x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_10); +lean_object* x_13; +x_13 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_6); -return x_12; +return x_13; } } LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { @@ -17324,13 +17980,13 @@ lean_dec(x_3); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_12; -x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); -return x_12; +lean_object* x_10; +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_2); +return x_10; } } LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { @@ -17338,15 +17994,85 @@ _start: { lean_object* x_11; x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +lean_dec(x_1); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; lean_object* x_18; +x_17 = lean_unbox(x_2); +lean_dec(x_2); +x_18 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__10(x_1, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_8); +return x_18; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__13(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_3); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_2); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_2); return x_10; } @@ -25467,7 +26193,7 @@ x_29 = lean_ctor_get(x_23, 1); lean_inc(x_29); lean_dec(x_23); x_30 = l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__2; -x_31 = l_Lean_throwError___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11(x_30, x_11, x_12, x_13, x_14, x_15, x_16, x_29); +x_31 = l_Lean_throwError___at_Lean_Elab_Tactic_evalSepTactics_goEven___spec__9(x_30, x_11, x_12, x_13, x_14, x_15, x_16, x_29); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); @@ -25536,7 +26262,7 @@ static lean_object* _init_l_Array_mapMUnsafe_map___at___private_Lean_Elab_Mutual _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9; x_2 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__18___lambda__1___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; @@ -25643,7 +26369,7 @@ x_39 = lean_ctor_get(x_37, 1); lean_inc(x_39); lean_dec(x_37); x_40 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__18___lambda__1___closed__3; -x_41 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_41 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_42 = 0; x_43 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_43, 0, x_40); @@ -25703,7 +26429,7 @@ x_57 = lean_ctor_get(x_55, 1); lean_inc(x_57); lean_dec(x_55); x_58 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabFunValues___spec__18___lambda__1___closed__3; -x_59 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_59 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_60 = 0; x_61 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_61, 0, x_58); @@ -28548,7 +29274,6 @@ _start: if (lean_obj_tag(x_3) == 0) { lean_object* x_11; lean_object* x_12; -lean_dec(x_8); lean_dec(x_6); lean_dec(x_4); lean_dec(x_2); @@ -28612,7 +29337,7 @@ x_26 = l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLet x_27 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_27, 0, x_3); lean_ctor_set(x_27, 1, x_26); -x_28 = l_Lean_throwErrorAt___at_Lean_Elab_Term_elabMatch_elabMatchDefault___spec__7(x_23, x_27, x_4, x_5, x_6, x_7, x_8, x_9, x_22); +x_28 = l_Lean_throwErrorAt___at_Lean_Elab_Term_Do_concat___spec__6(x_23, x_27, x_4, x_5, x_6, x_7, x_8, x_9, x_22); lean_dec(x_6); lean_dec(x_23); x_29 = !lean_is_exclusive(x_28); @@ -28639,7 +29364,6 @@ else uint8_t x_33; lean_free_object(x_3); lean_dec(x_14); -lean_dec(x_8); lean_dec(x_6); lean_dec(x_4); x_33 = !lean_is_exclusive(x_20); @@ -28714,7 +29438,7 @@ x_50 = l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLet x_51 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_51, 0, x_49); lean_ctor_set(x_51, 1, x_50); -x_52 = l_Lean_throwErrorAt___at_Lean_Elab_Term_elabMatch_elabMatchDefault___spec__7(x_46, x_51, x_4, x_5, x_6, x_7, x_8, x_9, x_45); +x_52 = l_Lean_throwErrorAt___at_Lean_Elab_Term_Do_concat___spec__6(x_46, x_51, x_4, x_5, x_6, x_7, x_8, x_9, x_45); lean_dec(x_6); lean_dec(x_46); x_53 = lean_ctor_get(x_52, 0); @@ -28742,7 +29466,6 @@ else { lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_dec(x_37); -lean_dec(x_8); lean_dec(x_6); lean_dec(x_4); x_57 = lean_ctor_get(x_43, 0); @@ -28786,6 +29509,7 @@ _start: lean_object* x_11; x_11 = l_List_forM___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); +lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); return x_11; @@ -28797,6 +29521,7 @@ _start: lean_object* x_10; x_10 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_checkLetRecsToLiftTypes(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_8); +lean_dec(x_7); lean_dec(x_6); lean_dec(x_4); return x_10; @@ -34159,7 +34884,7 @@ lean_closure_set(x_13, 2, x_10); lean_closure_set(x_13, 3, x_11); x_14 = 0; x_15 = lean_box(x_14); -x_16 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaTelescope___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_processSumCasesOn___spec__1___rarg___boxed), 10, 3); +x_16 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___boxed), 10, 3); lean_closure_set(x_16, 0, x_12); lean_closure_set(x_16, 1, x_13); lean_closure_set(x_16, 2, x_15); @@ -36810,8 +37535,9 @@ x_62 = l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_check___lambda__2___clo x_63 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_63, 0, x_61); lean_ctor_set(x_63, 1, x_62); -x_64 = l_Lean_throwErrorAt___at_Lean_Elab_Term_elabMatch_elabMatchDefault___spec__7(x_24, x_63, x_8, x_9, x_10, x_11, x_12, x_13, x_53); +x_64 = l_Lean_throwErrorAt___at_Lean_Elab_Term_Do_concat___spec__6(x_24, x_63, x_8, x_9, x_10, x_11, x_12, x_13, x_53); lean_dec(x_13); +lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -44101,12 +44827,20 @@ goto _start; } } } +static lean_object* _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_range___lambda__1___boxed), 1, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; size_t x_13; size_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; lean_object* x_20; -x_11 = l_List_iotaTR(x_2); -x_12 = lean_array_mk(x_11); +x_11 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1; +x_12 = l_Array_ofFn___rarg(x_2, x_11); x_13 = lean_array_size(x_12); x_14 = 0; x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__13(x_13, x_14, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); @@ -44312,8 +45046,8 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_El _start: { lean_object* x_11; lean_object* x_12; size_t x_13; size_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; lean_object* x_20; -x_11 = l_List_iotaTR(x_2); -x_12 = lean_array_mk(x_11); +x_11 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1; +x_12 = l_Array_ofFn___rarg(x_2, x_11); x_13 = lean_array_size(x_12); x_14 = 0; x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__17(x_13, x_14, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); @@ -44710,7 +45444,6 @@ lean_inc(x_27); x_28 = lean_ctor_get(x_26, 1); lean_inc(x_28); lean_dec(x_26); -lean_inc(x_15); lean_inc(x_13); lean_inc(x_11); lean_inc_n(x_27, 2); @@ -45462,12 +46195,13 @@ lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; x_11 = lean_box(0); x_12 = lean_array_get_size(x_3); lean_inc(x_12); -x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabMutualDef_go___lambda__5), 12, 4); +x_13 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabMutualDef_go___lambda__5___boxed), 12, 4); lean_closure_set(x_13, 0, x_3); lean_closure_set(x_13, 1, x_1); lean_closure_set(x_13, 2, x_2); lean_closure_set(x_13, 3, x_12); x_14 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__16(x_11, x_12, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_12); return x_14; } } @@ -45717,6 +46451,15 @@ lean_dec(x_2); return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_11; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef_go___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { @@ -45777,6 +46520,15 @@ lean_dec(x_2); return x_17; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__16(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_11; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___lambda__1___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; @@ -45835,6 +46587,15 @@ lean_dec(x_8); return x_19; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Term_elabMutualDef_go___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Elab_Term_elabMutualDef_go___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_4); +return x_13; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Term_elabMutualDef___spec__5(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { @@ -51515,8 +52276,8 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_El _start: { lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; lean_object* x_16; -x_7 = l_List_iotaTR(x_2); -x_8 = lean_array_mk(x_7); +x_7 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1; +x_8 = l_Array_ofFn___rarg(x_2, x_7); x_9 = lean_array_size(x_8); x_10 = 0; x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_Command_elabMutualDef___spec__12(x_9, x_10, x_8, x_4, x_5, x_6); @@ -51756,7 +52517,7 @@ lean_inc(x_30); lean_dec(x_9); x_31 = l_Lean_Elab_Command_elabMutualDef___lambda__3___closed__5; x_32 = l_Lean_Language_Snapshot_Diagnostics_empty; -x_33 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_33 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_34 = 0; x_35 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_35, 0, x_31); @@ -51795,7 +52556,7 @@ lean_inc(x_44); lean_dec(x_9); x_45 = l_Lean_Elab_Command_elabMutualDef___lambda__3___closed__5; x_46 = l_Lean_Language_Snapshot_Diagnostics_empty; -x_47 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16; +x_47 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16; x_48 = 0; x_49 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_49, 0, x_45); @@ -51882,6 +52643,7 @@ lean_closure_set(x_14, 1, x_1); lean_closure_set(x_14, 2, x_11); lean_closure_set(x_14, 3, x_12); x_15 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabMutualDef___spec__11(x_12, x_13, x_14, x_2, x_3, x_7); +lean_dec(x_13); return x_15; } } @@ -52133,6 +52895,15 @@ lean_dec(x_2); return x_13; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabMutualDef___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Command_elabMutualDef___spec__11(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_2); +return x_7; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Command_elabMutualDef___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { @@ -52515,38 +53286,38 @@ l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lea lean_mark_persistent(l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__1); l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__2 = _init_l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__2(); lean_mark_persistent(l_Lean_Elab_Term_withRestoreOrSaveFull___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__4___closed__2); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__1); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__2); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__3); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__4); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__5); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__6); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__7); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__8); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__9); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__10); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__11); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__12); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__13); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__14); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__15); -l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__12___lambda__2___closed__16); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__1); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__3); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__4); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__5); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__6); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__7); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__8); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__9); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__10); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__11); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__12); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__13); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__14); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__15); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___spec__11___lambda__2___closed__16); l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1 = _init_l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1(); lean_mark_persistent(l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___closed__1); l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___boxed__const__1 = _init_l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_elabHeaders___boxed__const__1(); @@ -52597,30 +53368,38 @@ l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__4); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__1___closed__5); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__1); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__3); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__2___closed__4); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__1); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__3); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__3___closed__4); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__1); l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__5___closed__2); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__1); -l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__6___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__8___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__3); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__4); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__5); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__12___closed__6); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__14___closed__2); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__1); +l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2 = _init_l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___at___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_declValToTerminationHint___spec__1___lambda__15___closed__2); l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__1 = _init_l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__1(); lean_mark_persistent(l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__1); l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__2 = _init_l___private_Lean_Elab_MutualDef_0__Lean_Elab_Term_withHeaderSecVars_getFVars___closed__2(); @@ -52837,6 +53616,8 @@ l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go_ lean_mark_persistent(l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___closed__1); l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___closed__2 = _init_l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___closed__2(); lean_mark_persistent(l_Lean_Elab_addDeclarationRangesForBuiltin___at_Lean_Elab_Term_elabMutualDef_go___spec__7___closed__2); +l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1 = _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1(); +lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Term_elabMutualDef_go___spec__12___closed__1); l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__1___closed__1 = _init_l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__1___closed__1(); lean_mark_persistent(l_Lean_Elab_withSaveInfoContext___at_Lean_Elab_Term_elabMutualDef___spec__1___closed__1); l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___lambda__2___closed__1 = _init_l_Lean_Elab_elabAttr___at_Lean_Elab_Command_elabMutualDef___spec__4___lambda__2___closed__1(); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Basic.c b/stage0/stdlib/Lean/Elab/PreDefinition/Basic.c index 1155627895..2855afeb42 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/Basic.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Basic.c @@ -431,12 +431,13 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(0); x_2 = lean_box(0); x_3 = lean_unsigned_to_nat(0u); -x_4 = lean_alloc_ctor(0, 5, 0); +x_4 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_4, 0, x_2); lean_ctor_set(x_4, 1, x_1); lean_ctor_set(x_4, 2, x_1); lean_ctor_set(x_4, 3, x_1); -lean_ctor_set(x_4, 4, x_3); +lean_ctor_set(x_4, 4, x_1); +lean_ctor_set(x_4, 5, x_3); return x_4; } } diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Main.c b/stage0/stdlib/Lean/Elab/PreDefinition/Main.c index 882ec129d4..8f39f58c42 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/Main.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Main.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Elab.PreDefinition.Main -// Imports: Lean.Util.SCC Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural Lean.Elab.PreDefinition.WF.Main Lean.Elab.PreDefinition.MkInhabitant +// Imports: Lean.Util.SCC Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Structural Lean.Elab.PreDefinition.WF.Main Lean.Elab.PreDefinition.MkInhabitant Lean.Elab.PreDefinition.PartialFixpoint #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -17,13 +17,16 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_checkTerminationByHint LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___lambda__1___boxed(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC_add___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__19(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__4; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___closed__1; @@ -37,6 +40,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_addPreDefinitions lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___boxed(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__2___closed__3; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1; LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__18(lean_object*, lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___lambda__1___boxed(lean_object*, lean_object*); @@ -45,19 +49,21 @@ static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensure LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAsAxioms___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___boxed(lean_object**); lean_object* l_Lean_indentD(lean_object*); double lean_float_div(double, double); uint8_t l_Lean_Exception_isInterrupt(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__8___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUseWF___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__2(lean_object*, lean_object*, size_t, size_t); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1; static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12___closed__1; lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14; size_t lean_uint64_to_usize(uint64_t); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14; static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__2___closed__1; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___closed__7; lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Term_mkCoe___spec__3___rarg(lean_object*, lean_object*); @@ -66,7 +72,6 @@ static lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0 LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_setLevelMVarsAtPreDef___lambda__1___boxed(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___closed__5; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5; static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__3; lean_object* l_Lean_Expr_sort___override(lean_object*); lean_object* l_Lean_MessageData_ofList(lean_object*); @@ -75,14 +80,14 @@ lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Term_mkCoe___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___closed__8; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); lean_object* l_Lean_Elab_TerminationHints_ensureNone(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___closed__1; uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkLabeledSorry(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortCommand___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -100,20 +105,23 @@ static lean_object* l_Lean_Elab_addPreDefinitions___closed__7; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__3; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8; lean_object* l_Lean_Elab_logException___at_Lean_Elab_Term_exceptionToSorry___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_modifyDataOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__16(lean_object*, lean_object*, lean_object*); uint8_t lean_float_decLt(double, double); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2; lean_object* l_Lean_Elab_addAndCompilePartialRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_push___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__9(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_resetOnStack___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__20(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAsAxioms___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_get_num_heartbeats(lean_object*); @@ -129,7 +137,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefi LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs(lean_object*); lean_object* l_Lean_CollectLevelMVars_main(lean_object*, lean_object*); lean_object* l_Lean_Elab_wfRecursion(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14; static lean_object* l_Lean_Elab_addPreDefinitions___closed__1; lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -138,15 +146,14 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_PreD LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___lambda__2___boxed(lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___lambda__1___closed__2; lean_object* l_Lean_Elab_Term_logUnassignedLevelMVarsUsingErrorInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__10___boxed(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11; static lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__2; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2; static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__4; lean_object* l_Lean_Elab_withSaveInfoContext___at___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___closed__10; lean_object* l_Lean_Elab_addAndCompileUnsafe(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isLambda(lean_object*); lean_object* l_Lean_Elab_TerminationArgument_elab(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_ensureFunIndReservedNamesAvailable___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -158,44 +165,43 @@ lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___closed__2; extern lean_object* l_Lean_Elab_abortCommandExceptionId; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__6(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__9___closed__4; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_checkTerminationByHints___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13; static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___closed__3; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2; lean_object* l_Lean_profileitM___at___private_Lean_Elab_Term_0__Lean_Elab_Term_applyAttributesCore___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_applyAttributesOf(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__7(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withLCtx___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__3; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4___closed__1; LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive___lambda__1(lean_object*, lean_object*); lean_object* l_instMonadControlTOfMonadControl___rarg(lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUseStructural___spec__1(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_throwAbortCommand___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___spec__1___rarg(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5; static lean_object* l_Lean_Elab_addPreDefinitions___lambda__3___closed__3; lean_object* l_Lean_Elab_Term_exposeLevelMVars___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__2___boxed(lean_object**); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___closed__2; lean_object* lean_st_ref_take(lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLetDeclImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7; uint8_t l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_159____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_1294____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__18___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2(lean_object*, uint8_t, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3; lean_object* l_Lean_Elab_Structural_structuralRecursion(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___closed__5; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__1; @@ -204,6 +210,7 @@ lean_object* lean_nat_div(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__11(lean_object*, size_t, size_t); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__9___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_sccAux___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__8(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedMVarsAtPreDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -225,8 +232,9 @@ LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_Main lean_object* l_Lean_MessageData_andList(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13; static lean_object* l_Lean_Elab_throwAbortCommand___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___spec__1___rarg___closed__2; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12; lean_object* l_outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_updateLowLinkOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__15___lambda__1(lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___closed__2; @@ -236,6 +244,7 @@ lean_object* l_Lean_mkPtrSet___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_checkTerminationByHints___spec__4(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__13(lean_object*, lean_object*); lean_object* l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___closed__1; static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__5; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__2___closed__1; @@ -244,54 +253,54 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_P lean_object* lean_array_to_list(lean_object*); lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7; lean_object* l_Lean_Elab_Term_saveState___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_SCC_scc___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__5___closed__3; +lean_object* l_Lean_Elab_partialFixpoint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_processSumCasesOn___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__3___closed__2; static lean_object* l_Lean_Elab_addPreDefinitions___closed__2; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5; extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4; lean_object* lean_io_mono_nanos_now(lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_constName_x21(lean_object*); uint8_t l_Lean_Level_hasMVar(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_ensureFunIndReservedNamesAvailable(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__8(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12; lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Expr_hash(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__6; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__3; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__5(size_t, lean_object*, lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_Elab_addPreDefinitions___lambda__3___closed__2; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__3(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_Elab_addPreDefinitions___closed__3; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4___closed__3; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16; uint8_t lean_name_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226_(lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__2(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__1; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_setLevelMVarsAtPreDef(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_setLevelMVarsAtPreDef___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__2; @@ -304,8 +313,8 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreD static lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4___closed__1; static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__6; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAsAxioms___spec__1___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -314,16 +323,15 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_e static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__14(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1; lean_object* l_Std_DHashMap_Internal_AssocList_replace___at___private_Lean_Meta_Check_0__Lean_Meta_checkAux_check___spec__6(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8; static lean_object* l_Lean_Elab_ensureFunIndReservedNamesAvailable___closed__1; LEAN_EXPORT lean_object* l_panic___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__2(lean_object*); -lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_guessLex___spec__11(size_t, size_t, lean_object*); lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__5___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___lambda__2(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__3; @@ -332,11 +340,12 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAux lean_object* l_instMonadControlTOfPure___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__1; +lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(size_t, size_t, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___closed__4; LEAN_EXPORT uint8_t l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4___lambda__1(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15; static lean_object* l_Lean_Elab_addPreDefinitions___lambda__1___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__2___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__2___boxed(lean_object*, lean_object*, lean_object*); @@ -354,7 +363,7 @@ lean_object* l_Lean_Elab_Term_addTermInfo_x27(lean_object*, lean_object*, lean_o lean_object* l_List_mapTR_loop___at_Lean_Elab_addAndCompileUnsafe___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__1(lean_object*, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__9(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__7; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -362,15 +371,18 @@ LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_resetOnStack___at static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAsAxioms___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_getDataOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__6___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_addPreDefinitions___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_mkInhabitantFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__4(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_addSCC_add___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mapErrorImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -378,8 +390,7 @@ static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensure uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__5(lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__8(lean_object*, size_t, size_t); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_setLevelMVarsAtPreDef___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -395,18 +406,23 @@ lean_object* l_Lean_Elab_eraseRecAppSyntax(lean_object*, lean_object*, lean_obje LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8; lean_object* l_Lean_indentExpr(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16; LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2; uint8_t l___private_Lean_Elab_DefView_0__Lean_Elab_beqDefKind____x40_Lean_Elab_DefView___hyg_18_(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__4___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_shouldUseWF___boxed(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__5; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Name_hash___override(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__1___closed__1; @@ -418,25 +434,27 @@ static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensure LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_collectMVarsAtPreDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5; lean_object* lean_nat_sub(lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14; lean_object* l_Lean_Expr_getAppFn(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_instMonadControlReaderT___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_bind___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__7(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_addPreDefinitions___spec__7(lean_object*, lean_object*); lean_object* l_Lean_Elab_checkCodomainsLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAsAxioms___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__3___boxed(lean_object**); static double l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4___closed__4; lean_object* l_Lean_Elab_Term_exposeLevelMVars___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_getDataOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__6(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__4(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6; static lean_object* l_Lean_Elab_addPreDefinitions___closed__8; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___closed__6; lean_object* l_Lean_Meta_ensureEqnReservedNamesAvailable(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___lambda__3___closed__1; @@ -446,10 +464,12 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_PreD extern lean_object* l_Lean_Core_instMonadCoreM; static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__7; lean_object* l_Lean_Expr_FoldConstsImpl_fold_visit___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1(lean_object*, size_t, size_t); static double l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__4___closed__5; lean_object* l_List_reverse___rarg(lean_object*); lean_object* l_Lean_Expr_letFunAppArgs_x3f(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3; size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__2___closed__2; @@ -458,29 +478,33 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_e LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_addPreDefinitions___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__5; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7; lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___private_Lean_Meta_Check_0__Lean_Meta_checkAux_check___spec__1(lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationByHints(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__22___lambda__1(lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9; size_t lean_array_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_ensureReservedNameAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1; lean_object* l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_shouldUsepartialFixpoint(lean_object*); lean_object* l_Lean_Core_transform___at_Lean_Elab_Term_exposeLevelMVars___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__7___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_addPreDefinitions___lambda__2(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -492,6 +516,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefin LEAN_EXPORT uint8_t l_Lean_Elab_shouldUseStructural(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_shouldUsepartialFixpoint___boxed(lean_object*); static lean_object* l_Lean_Elab_addPreDefinitions___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Util_SCC_0__Lean_SCC_updateLowLinkOf___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__15(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__3; @@ -508,6 +533,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_a uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__4; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__12(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_compileDecl___spec__1(lean_object*, lean_object*); @@ -532,9 +558,12 @@ lean_object* lean_expr_instantiate1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUseStructural___spec__1___boxed(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Elab_Modifiers_isPartial(lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Elab_ensureFunIndReservedNamesAvailable___spec__2___closed__2; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_partitionPreDefs___spec__4(lean_object*, lean_object*, size_t, size_t); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4; lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at___private_Lean_Meta_Check_0__Lean_Meta_checkAux_check___spec__3(lean_object*); lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_instMonad___rarg(lean_object*); @@ -542,12 +571,11 @@ size_t lean_usize_land(size_t, size_t); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_betaReduceLetRecApps___spec__1(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visit___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasLevelMVar(lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13; double lean_float_sub(double, double); static lean_object* l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_ensureNoUnassignedLevelMVarsAtPreDef_visitLevel___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__6; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11; uint8_t l_Array_isEmpty___rarg(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_addPreDefinitions___spec__14___lambda__3___closed__1; lean_object* l_instMonadControlReaderT___lambda__3___boxed(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_MessageLog_hasErrors(lean_object*); @@ -14081,7 +14109,7 @@ static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTermi _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Invalid `decreasing_by`; this function is marked as ", 52, 52); +x_1 = lean_mk_string_unchecked("Invalid `termination_by`; this function is mutually ", 52, 52); return x_1; } } @@ -14098,7 +14126,7 @@ static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTermi _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("structurally recursive, so no explicit termination proof is needed.", 67, 67); +x_1 = lean_mk_string_unchecked("recursive with ", 15, 15); return x_1; } } @@ -14114,75 +14142,112 @@ return x_2; static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4; -x_3 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", which is not also marked as ", 30, 30); +return x_1; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6() { _start: { -uint8_t x_7; -x_7 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); -if (x_7 == 0) +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("`nontermination_partialFixpointursive`, so this one cannot be either.", 69, 69); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +if (x_1 == 0) { lean_object* x_8; lean_object* x_9; -lean_dec(x_4); -x_8 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_8); -lean_ctor_set(x_9, 1, x_6); -return x_9; +x_8 = lean_ctor_get(x_2, 6); +x_9 = lean_ctor_get(x_8, 3); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; +lean_dec(x_5); +lean_dec(x_3); +x_10 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_7); +return x_11; } else { -lean_object* x_10; -x_10 = lean_ctor_get(x_2, 3); -if (lean_obj_tag(x_10) == 0) +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_12 = lean_ctor_get(x_9, 0); +x_13 = lean_ctor_get(x_12, 0); +x_14 = lean_ctor_get(x_3, 3); +lean_inc(x_14); +lean_dec(x_3); +x_15 = l_Lean_MessageData_ofName(x_14); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +x_22 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_13, x_23, x_5, x_6, x_7); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -lean_object* x_11; lean_object* x_12; -lean_dec(x_4); -x_11 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_6); -return x_12; +return x_24; } else { -lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; uint8_t x_18; -x_13 = lean_ctor_get(x_10, 0); -x_14 = lean_ctor_get(x_13, 0); -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5; -x_16 = 2; -x_17 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_14, x_15, x_16, x_4, x_5, x_6); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_17, 0); -lean_dec(x_19); -x_20 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -lean_ctor_set(x_17, 0, x_20); -return x_17; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_24); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_17, 1); -lean_inc(x_21); -lean_dec(x_17); -x_22 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_21); -return x_23; -} -} +lean_object* x_29; lean_object* x_30; +lean_dec(x_5); +lean_dec(x_3); +x_29 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_7); +return x_30; } } } @@ -14190,7 +14255,7 @@ static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTermi _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Invalid `termination_by`; this function is mutually ", 52, 52); +x_1 = lean_mk_string_unchecked("Invalid `decreasing_by`; this function is marked as ", 52, 52); return x_1; } } @@ -14207,7 +14272,7 @@ static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTermi _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("recursive with ", 15, 15); +x_1 = lean_mk_string_unchecked("nonterminating, so no explicit termination proof is needed.", 59, 59); return x_1; } } @@ -14223,112 +14288,65 @@ return x_2; static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked(", which is not marked as `structural` ", 38, 38); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2; +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__4; +x_3 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6() { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("so this one cannot be `structural` either.", 42, 42); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -if (x_3 == 0) -{ -uint8_t x_9; -x_9 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); -if (x_9 == 0) +lean_object* x_8; lean_object* x_9; +x_8 = lean_ctor_get(x_2, 6); +x_9 = lean_ctor_get(x_8, 3); +if (lean_obj_tag(x_9) == 0) { lean_object* x_10; lean_object* x_11; -lean_dec(x_4); x_10 = lean_box(0); -x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_10, x_6, x_7, x_8); +x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_3, x_10, x_5, x_6, x_7); return x_11; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_ctor_get(x_4, 3); -lean_inc(x_13); -lean_dec(x_4); -x_14 = l_Lean_MessageData_ofName(x_13); -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__4; -x_16 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_14); -x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6; -x_18 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_18, 0, x_16); -lean_ctor_set(x_18, 1, x_17); -x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2; -x_20 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_18); -x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8; -x_22 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_12, x_22, x_6, x_7, x_8); -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) +lean_object* x_12; +x_12 = lean_ctor_get(x_8, 4); +if (lean_obj_tag(x_12) == 0) { -return x_23; +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_3, x_13, x_5, x_6, x_7); +return x_14; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_23, 0); -x_26 = lean_ctor_get(x_23, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_23); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; +lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_15 = lean_ctor_get(x_12, 0); +x_16 = lean_ctor_get(x_15, 0); +x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5; +x_18 = 2; +lean_inc(x_5); +x_19 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_16, x_17, x_18, x_5, x_6, x_7); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_3, x_20, x_5, x_6, x_21); +lean_dec(x_20); +return x_22; } } } -else -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_4); -x_28 = lean_box(0); -x_29 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_28, x_6, x_7, x_8); -return x_29; -} -} } static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked(", which is marked as `termination_by ", 37, 37); +x_1 = lean_mk_string_unchecked(", which is marked as ", 21, 21); return x_1; } } @@ -14345,7 +14363,7 @@ static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTermi _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("structural` so this one also needs to be marked `structural`.", 61, 61); +x_1 = lean_mk_string_unchecked("`nontermination_partialFixpointursive` so this one also needs to be marked ", 75, 75); return x_1; } } @@ -14358,29 +14376,47 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5() { _start: { -if (x_3 == 0) +lean_object* x_1; +x_1 = lean_mk_string_unchecked("`nontermination_partialFixpointursive`.", 39, 39); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6() { +_start: { -lean_object* x_9; lean_object* x_10; -x_9 = lean_box(0); -x_10 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_9, x_6, x_7, x_8); -return x_10; +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +if (x_1 == 0) +{ +lean_object* x_8; lean_object* x_9; +x_8 = lean_box(0); +x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_1, x_2, x_3, x_8, x_5, x_6, x_7); +return x_9; } else { -uint8_t x_11; -x_11 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); -if (x_11 == 0) +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_2, 6); +x_11 = lean_ctor_get(x_10, 3); +if (lean_obj_tag(x_11) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_ctor_get(x_4, 3); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_12 = lean_ctor_get(x_2, 0); +x_13 = lean_ctor_get(x_3, 3); lean_inc(x_13); -lean_dec(x_4); +lean_dec(x_3); x_14 = l_Lean_MessageData_ofName(x_13); -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__4; +x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4; x_16 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_14); @@ -14388,7 +14424,7 @@ x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spe x_18 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); -x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2; +x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; x_20 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_18); @@ -14396,41 +14432,593 @@ x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spe x_22 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_22, 0, x_20); lean_ctor_set(x_22, 1, x_21); -x_23 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_12, x_22, x_6, x_7, x_8); -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) +x_23 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6; +x_24 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +x_25 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_12, x_24, x_5, x_6, x_7); +x_26 = !lean_is_exclusive(x_25); +if (x_26 == 0) { -return x_23; +return x_25; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_23, 0); -x_26 = lean_ctor_get(x_23, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_23); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} -else -{ -lean_object* x_28; lean_object* x_29; -x_28 = lean_box(0); -x_29 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_28, x_6, x_7, x_8); +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_25, 0); +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_25); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); return x_29; } } +else +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_box(0); +x_31 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_1, x_2, x_3, x_30, x_5, x_6, x_7); +return x_31; +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("structurally recursive, so no explicit termination proof is needed.", 67, 67); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2; +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2; +x_3 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; +x_8 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_box(0); +x_10 = lean_apply_4(x_2, x_9, x_5, x_6, x_7); +return x_10; +} +else +{ +lean_object* x_11; +x_11 = lean_ctor_get(x_3, 4); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = lean_apply_4(x_2, x_12, x_5, x_6, x_7); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_14 = lean_ctor_get(x_11, 0); +x_15 = lean_ctor_get(x_14, 0); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3; +x_17 = 2; +lean_inc(x_5); +x_18 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_15, x_16, x_17, x_5, x_6, x_7); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_apply_4(x_2, x_19, x_5, x_6, x_20); +return x_21; +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", which is not marked as `structural` ", 38, 38); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("so this one cannot be `structural` either.", 42, 42); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +if (x_4 == 0) +{ +uint8_t x_10; +x_10 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +lean_dec(x_5); +x_11 = lean_box(0); +x_12 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4(x_1, x_2, x_3, x_11, x_7, x_8, x_9); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +lean_dec(x_2); +x_13 = lean_ctor_get(x_1, 0); +x_14 = lean_ctor_get(x_5, 3); +lean_inc(x_14); +lean_dec(x_5); +x_15 = l_Lean_MessageData_ofName(x_14); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +x_22 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_13, x_23, x_7, x_8, x_9); +lean_dec(x_8); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +return x_24; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_24); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +} +else +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_5); +x_29 = lean_box(0); +x_30 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4(x_1, x_2, x_3, x_29, x_7, x_8, x_9); +return x_30; +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", which is marked as `termination_by ", 37, 37); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("structural` so this one also needs to be marked `structural`.", 61, 61); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +if (x_4 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5(x_1, x_2, x_3, x_4, x_5, x_10, x_7, x_8, x_9); +return x_11; +} +else +{ +uint8_t x_12; +x_12 = lean_ctor_get_uint8(x_1, sizeof(void*)*3); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +lean_dec(x_2); +x_13 = lean_ctor_get(x_1, 0); +x_14 = lean_ctor_get(x_5, 3); +lean_inc(x_14); +lean_dec(x_5); +x_15 = l_Lean_MessageData_ofName(x_14); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__2; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +x_22 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_13, x_23, x_7, x_8, x_9); +lean_dec(x_8); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +return x_24; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_24); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_box(0); +x_30 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5(x_1, x_2, x_3, x_4, x_5, x_29, x_7, x_8, x_9); +return x_30; +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("incomplete set of `termination_by` annotations:\n", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("This function is mutually recursive with ", 41, 41); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", which ", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" not have ", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("a `termination_by` clause.\n", 27, 27); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("The present clause is ignored.", 30, 30); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("do", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("does", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +if (x_4 == 0) +{ +if (x_6 == 0) +{ +uint8_t x_12; +x_12 = l_Array_isEmpty___rarg(x_7); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_inc(x_7); +x_13 = lean_array_to_list(x_7); +x_14 = lean_box(0); +x_15 = l_List_mapTR_loop___at_Lean_Elab_checkTerminationByHints___spec__2(x_13, x_14); +x_16 = l_Lean_MessageData_andList(x_15); +x_17 = lean_array_get_size(x_7); +lean_dec(x_7); +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_dec_eq(x_17, x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_1, 0); +x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4; +x_22 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_16); +x_23 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6; +x_24 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +if (x_19 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +x_27 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8; +x_28 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +x_29 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2; +x_30 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +x_31 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10; +x_32 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +x_33 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12; +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +x_35 = 2; +lean_inc(x_9); +x_36 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_20, x_34, x_35, x_9, x_10, x_11); +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +lean_dec(x_36); +x_39 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_4, x_5, x_37, x_9, x_10, x_38); +lean_dec(x_37); +return x_39; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16; +x_41 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_41, 0, x_24); +lean_ctor_set(x_41, 1, x_40); +x_42 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8; +x_43 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2; +x_45 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_43); +x_46 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10; +x_47 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_48 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12; +x_49 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +x_50 = 2; +lean_inc(x_9); +x_51 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_20, x_49, x_50, x_9, x_10, x_11); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_4, x_5, x_52, x_9, x_10, x_53); +lean_dec(x_52); +return x_54; +} +} +else +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_7); +x_55 = lean_box(0); +x_56 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_4, x_5, x_55, x_9, x_10, x_11); +return x_56; +} +} +else +{ +lean_object* x_57; lean_object* x_58; +lean_dec(x_7); +x_57 = lean_box(0); +x_58 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_4, x_5, x_57, x_9, x_10, x_11); +return x_58; +} +} +else +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_7); +x_59 = lean_box(0); +x_60 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_4, x_5, x_59, x_9, x_10, x_11); +return x_60; +} } } static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("incomplete set of `termination_by` annotations:\n", 48, 48); +x_1 = lean_mk_string_unchecked("conflicting annotations: this function cannot be both terminating and a partial fixpoint", 88, 88); return x_1; } } @@ -14443,260 +15031,225 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3() { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, uint8_t x_6, lean_object* x_7, size_t x_8, size_t x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("This function is mutually with ", 31, 31); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4() { -_start: +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_9, x_8); +if (x_14 == 0) { -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(", which ", 8, 8); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" not have ", 10, 10); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("a `termination_by` clause.\n", 27, 27); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("The present clause is ignored.", 30, 30); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("do", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("does", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, size_t x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -uint8_t x_13; -x_13 = lean_usize_dec_lt(x_8, x_7); -if (x_13 == 0) -{ -lean_object* x_14; -lean_dec(x_10); +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_4); lean_dec(x_2); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_9); -lean_ctor_set(x_14, 1, x_12); -return x_14; +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_10); +lean_ctor_set(x_15, 1, x_13); +return x_15; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_23; lean_object* x_24; -lean_dec(x_9); -x_15 = lean_array_uget(x_6, x_8); -x_23 = lean_ctor_get(x_15, 6); +lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_10); +x_16 = lean_array_uget(x_7, x_9); +x_17 = lean_ctor_get(x_16, 6); +lean_inc(x_17); +x_18 = lean_ctor_get(x_17, 2); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_17); +x_19 = lean_box(0); +lean_inc(x_11); +lean_inc(x_2); +x_20 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_6, x_16, x_2, x_19, x_11, x_12, x_13); +lean_dec(x_16); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; size_t x_24; size_t x_25; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_ctor_get(x_21, 0); lean_inc(x_23); -lean_dec(x_15); -x_24 = lean_ctor_get(x_23, 2); -lean_inc(x_24); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; -lean_dec(x_23); -x_25 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_16 = x_25; -x_17 = x_12; -goto block_22; +lean_dec(x_21); +x_24 = 1; +x_25 = lean_usize_add(x_9, x_24); +x_9 = x_25; +x_10 = x_23; +x_13 = x_22; +goto _start; } else { -if (x_5 == 0) -{ -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Array_isEmpty___rarg(x_4); +uint8_t x_27; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_4); +lean_dec(x_2); +x_27 = !lean_is_exclusive(x_20); if (x_27 == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_inc(x_4); -x_28 = lean_array_to_list(x_4); -x_29 = lean_box(0); -x_30 = l_List_mapTR_loop___at_Lean_Elab_checkTerminationByHints___spec__2(x_28, x_29); -x_31 = l_Lean_MessageData_andList(x_30); -x_32 = lean_array_get_size(x_4); -x_33 = lean_unsigned_to_nat(1u); -x_34 = lean_nat_dec_eq(x_32, x_33); -lean_dec(x_32); -x_35 = lean_ctor_get(x_26, 0); -lean_inc(x_35); -x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4; -x_37 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_31); -x_38 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6; -x_39 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -if (x_34 == 0) -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14; -x_41 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -x_42 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8; -x_43 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2; -x_45 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_43); -x_46 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10; -x_47 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -x_48 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12; -x_49 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -x_50 = 2; -lean_inc(x_10); -x_51 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_35, x_49, x_50, x_10, x_11, x_12); -lean_dec(x_35); -x_52 = lean_ctor_get(x_51, 0); -lean_inc(x_52); -x_53 = lean_ctor_get(x_51, 1); -lean_inc(x_53); -lean_dec(x_51); -lean_inc(x_10); -lean_inc(x_2); -x_54 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_26, x_23, x_5, x_2, x_52, x_10, x_11, x_53); -lean_dec(x_52); -lean_dec(x_23); -lean_dec(x_26); -if (lean_obj_tag(x_54) == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_54, 0); -lean_inc(x_55); -x_56 = lean_ctor_get(x_54, 1); -lean_inc(x_56); -lean_dec(x_54); -x_16 = x_55; -x_17 = x_56; -goto block_22; +return x_20; } else { -uint8_t x_57; -lean_dec(x_10); +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_20, 0); +x_29 = lean_ctor_get(x_20, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_20); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_18, 0); +lean_inc(x_31); +lean_dec(x_18); +x_32 = lean_box(x_6); +lean_inc(x_2); +x_33 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___boxed), 7, 3); +lean_closure_set(x_33, 0, x_32); +lean_closure_set(x_33, 1, x_16); +lean_closure_set(x_33, 2, x_2); +x_34 = lean_ctor_get(x_17, 3); +lean_inc(x_34); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_box(0); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_4); +lean_inc(x_2); +x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7(x_31, x_33, x_17, x_5, x_2, x_6, x_4, x_35, x_11, x_12, x_13); +lean_dec(x_17); +lean_dec(x_31); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +if (lean_obj_tag(x_37) == 0) +{ +uint8_t x_38; +lean_dec(x_12); +lean_dec(x_11); lean_dec(x_4); lean_dec(x_2); -x_57 = !lean_is_exclusive(x_54); +x_38 = !lean_is_exclusive(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_36, 0); +lean_dec(x_39); +x_40 = lean_ctor_get(x_37, 0); +lean_inc(x_40); +lean_dec(x_37); +lean_ctor_set(x_36, 0, x_40); +return x_36; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_36, 1); +lean_inc(x_41); +lean_dec(x_36); +x_42 = lean_ctor_get(x_37, 0); +lean_inc(x_42); +lean_dec(x_37); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_41); +return x_43; +} +} +else +{ +lean_object* x_44; lean_object* x_45; size_t x_46; size_t x_47; +x_44 = lean_ctor_get(x_36, 1); +lean_inc(x_44); +lean_dec(x_36); +x_45 = lean_ctor_get(x_37, 0); +lean_inc(x_45); +lean_dec(x_37); +x_46 = 1; +x_47 = lean_usize_add(x_9, x_46); +x_9 = x_47; +x_10 = x_45; +x_13 = x_44; +goto _start; +} +} +else +{ +uint8_t x_49; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_4); +lean_dec(x_2); +x_49 = !lean_is_exclusive(x_36); +if (x_49 == 0) +{ +return x_36; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_36, 0); +x_51 = lean_ctor_get(x_36, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_36); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_33); +lean_dec(x_31); +lean_dec(x_17); +lean_dec(x_4); +lean_dec(x_2); +x_53 = lean_ctor_get(x_34, 0); +lean_inc(x_53); +lean_dec(x_34); +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +lean_dec(x_53); +x_55 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2; +x_56 = l_Lean_throwErrorAt___at_Lean_Elab_checkTerminationByHints___spec__1(x_54, x_55, x_11, x_12, x_13); +lean_dec(x_12); +lean_dec(x_54); +x_57 = !lean_is_exclusive(x_56); if (x_57 == 0) { -return x_54; +return x_56; } else { lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_54, 0); -x_59 = lean_ctor_get(x_54, 1); +x_58 = lean_ctor_get(x_56, 0); +x_59 = lean_ctor_get(x_56, 1); lean_inc(x_59); lean_inc(x_58); -lean_dec(x_54); +lean_dec(x_56); x_60 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_60, 0, x_58); lean_ctor_set(x_60, 1, x_59); @@ -14704,195 +15257,6 @@ return x_60; } } } -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; uint8_t x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_61 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16; -x_62 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_62, 0, x_39); -lean_ctor_set(x_62, 1, x_61); -x_63 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8; -x_64 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_64, 0, x_62); -lean_ctor_set(x_64, 1, x_63); -x_65 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2; -x_66 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_66, 0, x_65); -lean_ctor_set(x_66, 1, x_64); -x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10; -x_68 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -x_69 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12; -x_70 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_70, 0, x_68); -lean_ctor_set(x_70, 1, x_69); -x_71 = 2; -lean_inc(x_10); -x_72 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_35, x_70, x_71, x_10, x_11, x_12); -lean_dec(x_35); -x_73 = lean_ctor_get(x_72, 0); -lean_inc(x_73); -x_74 = lean_ctor_get(x_72, 1); -lean_inc(x_74); -lean_dec(x_72); -lean_inc(x_10); -lean_inc(x_2); -x_75 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_26, x_23, x_5, x_2, x_73, x_10, x_11, x_74); -lean_dec(x_73); -lean_dec(x_23); -lean_dec(x_26); -if (lean_obj_tag(x_75) == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = lean_ctor_get(x_75, 0); -lean_inc(x_76); -x_77 = lean_ctor_get(x_75, 1); -lean_inc(x_77); -lean_dec(x_75); -x_16 = x_76; -x_17 = x_77; -goto block_22; -} -else -{ -uint8_t x_78; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_2); -x_78 = !lean_is_exclusive(x_75); -if (x_78 == 0) -{ -return x_75; -} -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_75, 0); -x_80 = lean_ctor_get(x_75, 1); -lean_inc(x_80); -lean_inc(x_79); -lean_dec(x_75); -x_81 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_81, 0, x_79); -lean_ctor_set(x_81, 1, x_80); -return x_81; -} -} -} -} -else -{ -lean_object* x_82; lean_object* x_83; -x_82 = lean_box(0); -lean_inc(x_10); -lean_inc(x_2); -x_83 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_26, x_23, x_5, x_2, x_82, x_10, x_11, x_12); -lean_dec(x_23); -lean_dec(x_26); -if (lean_obj_tag(x_83) == 0) -{ -lean_object* x_84; lean_object* x_85; -x_84 = lean_ctor_get(x_83, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_83, 1); -lean_inc(x_85); -lean_dec(x_83); -x_16 = x_84; -x_17 = x_85; -goto block_22; -} -else -{ -uint8_t x_86; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_2); -x_86 = !lean_is_exclusive(x_83); -if (x_86 == 0) -{ -return x_83; -} -else -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_83, 0); -x_88 = lean_ctor_get(x_83, 1); -lean_inc(x_88); -lean_inc(x_87); -lean_dec(x_83); -x_89 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_88); -return x_89; -} -} -} -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_24, 0); -lean_inc(x_90); -lean_dec(x_24); -x_91 = lean_box(0); -lean_inc(x_10); -lean_inc(x_2); -x_92 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_90, x_23, x_5, x_2, x_91, x_10, x_11, x_12); -lean_dec(x_23); -lean_dec(x_90); -if (lean_obj_tag(x_92) == 0) -{ -lean_object* x_93; lean_object* x_94; -x_93 = lean_ctor_get(x_92, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_92, 1); -lean_inc(x_94); -lean_dec(x_92); -x_16 = x_93; -x_17 = x_94; -goto block_22; -} -else -{ -uint8_t x_95; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_2); -x_95 = !lean_is_exclusive(x_92); -if (x_95 == 0) -{ -return x_92; -} -else -{ -lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_96 = lean_ctor_get(x_92, 0); -x_97 = lean_ctor_get(x_92, 1); -lean_inc(x_97); -lean_inc(x_96); -lean_dec(x_92); -x_98 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_98, 0, x_96); -lean_ctor_set(x_98, 1, x_97); -return x_98; -} -} -} -} -block_22: -{ -lean_object* x_18; size_t x_19; size_t x_20; -x_18 = lean_ctor_get(x_16, 0); -lean_inc(x_18); -lean_dec(x_16); -x_19 = 1; -x_20 = lean_usize_add(x_8, x_19); -x_8 = x_20; -x_9 = x_18; -x_12 = x_17; -goto _start; -} } } } @@ -15018,6 +15382,7 @@ lean_dec(x_9); if (lean_obj_tag(x_10) == 0) { lean_object* x_11; lean_object* x_12; +lean_dec(x_3); lean_dec(x_2); x_11 = lean_box(0); x_12 = lean_alloc_ctor(0, 2, 0); @@ -15034,6 +15399,7 @@ lean_dec(x_10); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; lean_object* x_15; +lean_dec(x_3); lean_dec(x_2); x_14 = lean_box(0); x_15 = lean_alloc_ctor(0, 2, 0); @@ -15043,7 +15409,7 @@ return x_15; } else { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_16 = lean_ctor_get(x_13, 0); lean_inc(x_16); lean_dec(x_13); @@ -15054,120 +15420,141 @@ x_20 = lean_ctor_get(x_16, 6); lean_inc(x_20); x_21 = lean_ctor_get(x_20, 2); lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 3); +lean_inc(x_22); lean_dec(x_20); if (x_19 == 0) { -lean_object* x_41; +lean_object* x_46; lean_dec(x_17); -x_41 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; -x_22 = x_41; -goto block_40; +x_46 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; +x_23 = x_46; +goto block_45; } else { -uint8_t x_42; -x_42 = lean_nat_dec_le(x_17, x_17); -if (x_42 == 0) +uint8_t x_47; +x_47 = lean_nat_dec_le(x_17, x_17); +if (x_47 == 0) { -lean_object* x_43; +lean_object* x_48; lean_dec(x_17); -x_43 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; -x_22 = x_43; -goto block_40; +x_48 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; +x_23 = x_48; +goto block_45; } else { -size_t x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_usize_of_nat(x_17); +size_t x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_usize_of_nat(x_17); lean_dec(x_17); -x_45 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; -x_46 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_checkTerminationByHints___spec__4(x_1, x_7, x_44, x_45); -x_22 = x_46; -goto block_40; +x_50 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_getMVarsAtPreDef___closed__1; +x_51 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_checkTerminationByHints___spec__4(x_1, x_7, x_49, x_50); +x_23 = x_51; +goto block_45; } } -block_40: +block_45: { -uint8_t x_23; +uint8_t x_24; if (lean_obj_tag(x_21) == 0) { -uint8_t x_35; -x_35 = 0; -x_23 = x_35; -goto block_34; +uint8_t x_40; +x_40 = 0; +x_24 = x_40; +goto block_39; } else { -lean_object* x_36; uint8_t x_37; -x_36 = lean_ctor_get(x_21, 0); -lean_inc(x_36); +lean_object* x_41; uint8_t x_42; +x_41 = lean_ctor_get(x_21, 0); +lean_inc(x_41); lean_dec(x_21); -x_37 = lean_ctor_get_uint8(x_36, sizeof(void*)*3); -lean_dec(x_36); -if (x_37 == 0) +x_42 = lean_ctor_get_uint8(x_41, sizeof(void*)*3); +lean_dec(x_41); +if (x_42 == 0) +{ +uint8_t x_43; +x_43 = 0; +x_24 = x_43; +goto block_39; +} +else +{ +uint8_t x_44; +x_44 = 1; +x_24 = x_44; +goto block_39; +} +} +block_39: +{ +uint8_t x_25; +if (lean_obj_tag(x_22) == 0) +{ +uint8_t x_37; +x_37 = 0; +x_25 = x_37; +goto block_36; +} +else { uint8_t x_38; -x_38 = 0; -x_23 = x_38; -goto block_34; +lean_dec(x_22); +x_38 = 1; +x_25 = x_38; +goto block_36; +} +block_36: +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_box(0); +x_27 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(x_1, x_16, x_5, x_23, x_24, x_25, x_1, x_6, x_7, x_26, x_2, x_3, x_4); +if (lean_obj_tag(x_27) == 0) +{ +uint8_t x_28; +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) +{ +lean_object* x_29; +x_29 = lean_ctor_get(x_27, 0); +lean_dec(x_29); +lean_ctor_set(x_27, 0, x_26); +return x_27; } else { -uint8_t x_39; -x_39 = 1; -x_23 = x_39; -goto block_34; -} -} -block_34: -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_box(0); -x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(x_1, x_16, x_5, x_22, x_23, x_1, x_6, x_7, x_24, x_2, x_3, x_4); -if (lean_obj_tag(x_25) == 0) -{ -uint8_t x_26; -x_26 = !lean_is_exclusive(x_25); -if (x_26 == 0) -{ -lean_object* x_27; -x_27 = lean_ctor_get(x_25, 0); +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); lean_dec(x_27); -lean_ctor_set(x_25, 0, x_24); -return x_25; -} -else -{ -lean_object* x_28; lean_object* x_29; -x_28 = lean_ctor_get(x_25, 1); -lean_inc(x_28); -lean_dec(x_25); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_24); -lean_ctor_set(x_29, 1, x_28); -return x_29; +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_26); +lean_ctor_set(x_31, 1, x_30); +return x_31; } } else { -uint8_t x_30; -x_30 = !lean_is_exclusive(x_25); -if (x_30 == 0) +uint8_t x_32; +x_32 = !lean_is_exclusive(x_27); +if (x_32 == 0) { -return x_25; +return x_27; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_25, 0); -x_32 = lean_ctor_get(x_25, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_25); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_27, 0); +x_34 = lean_ctor_get(x_27, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_27); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} } } } @@ -15186,62 +15573,114 @@ lean_dec(x_1); return x_6; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_7; -x_7 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); +uint8_t x_8; lean_object* x_9; +x_8 = lean_unbox(x_1); lean_dec(x_1); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -uint8_t x_9; lean_object* x_10; -x_9 = lean_unbox(x_3); -lean_dec(x_3); -x_10 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_1, x_2, x_9, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_5); +x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1(x_8, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_2); -lean_dec(x_1); -return x_10; +return x_9; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -uint8_t x_9; lean_object* x_10; -x_9 = lean_unbox(x_3); -lean_dec(x_3); -x_10 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_1, x_2, x_9, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_5); +uint8_t x_8; lean_object* x_9; +x_8 = lean_unbox(x_1); +lean_dec(x_1); +x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2(x_8, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_2); -lean_dec(x_1); -return x_10; +return x_9; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -uint8_t x_13; size_t x_14; size_t x_15; lean_object* x_16; -x_13 = lean_unbox(x_5); -lean_dec(x_5); -x_14 = lean_unbox_usize(x_7); -lean_dec(x_7); -x_15 = lean_unbox_usize(x_8); -lean_dec(x_8); -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(x_1, x_2, x_3, x_4, x_13, x_6, x_14, x_15, x_9, x_10, x_11, x_12); -lean_dec(x_11); +uint8_t x_8; lean_object* x_9; +x_8 = lean_unbox(x_1); +lean_dec(x_1); +x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3(x_8, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5(x_1, x_2, x_3, x_10, x_5, x_6, x_7, x_8, x_9); lean_dec(x_6); lean_dec(x_3); lean_dec(x_1); -return x_16; +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6(x_1, x_2, x_3, x_10, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; uint8_t x_13; lean_object* x_14; +x_12 = lean_unbox(x_4); +lean_dec(x_4); +x_13 = lean_unbox(x_6); +lean_dec(x_6); +x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7(x_1, x_2, x_3, x_12, x_5, x_13, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_8); +lean_dec(x_3); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; uint8_t x_15; size_t x_16; size_t x_17; lean_object* x_18; +x_14 = lean_unbox(x_5); +lean_dec(x_5); +x_15 = lean_unbox(x_6); +lean_dec(x_6); +x_16 = lean_unbox_usize(x_8); +lean_dec(x_8); +x_17 = lean_unbox_usize(x_9); +lean_dec(x_9); +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3(x_1, x_2, x_3, x_4, x_14, x_15, x_7, x_16, x_17, x_10, x_11, x_12, x_13); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_1); +return x_18; } } LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_checkTerminationByHints___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { @@ -15279,7 +15718,6 @@ _start: { lean_object* x_5; x_5 = l_Lean_Elab_checkTerminationByHints(x_1, x_2, x_3, x_4); -lean_dec(x_3); lean_dec(x_1); return x_5; } @@ -15338,7 +15776,7 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_19 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Elab_PreDefinition_WF_Fix_0__Lean_Elab_WF_processSumCasesOn___spec__1___rarg(x_16, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_19 = l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(x_16, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10); if (lean_obj_tag(x_19) == 0) { lean_object* x_20; lean_object* x_21; @@ -15381,7 +15819,7 @@ lean_inc(x_32); x_33 = lean_ctor_get(x_13, 4); lean_inc(x_33); lean_dec(x_13); -x_34 = lean_ctor_get(x_20, 4); +x_34 = lean_ctor_get(x_20, 5); lean_inc(x_34); lean_dec(x_20); lean_inc(x_9); @@ -15450,7 +15888,7 @@ lean_inc(x_47); x_48 = lean_ctor_get(x_13, 4); lean_inc(x_48); lean_dec(x_13); -x_49 = lean_ctor_get(x_20, 4); +x_49 = lean_ctor_get(x_20, 5); lean_inc(x_49); lean_dec(x_20); lean_inc(x_9); @@ -15687,6 +16125,94 @@ x_3 = lean_box(x_2); return x_3; } } +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1(lean_object* x_1, size_t x_2, size_t x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_eq(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_5 = lean_array_uget(x_1, x_2); +x_6 = lean_ctor_get(x_5, 6); +lean_inc(x_6); +lean_dec(x_5); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +lean_dec(x_6); +if (lean_obj_tag(x_7) == 0) +{ +size_t x_8; size_t x_9; +x_8 = 1; +x_9 = lean_usize_add(x_2, x_8); +x_2 = x_9; +goto _start; +} +else +{ +uint8_t x_11; +lean_dec(x_7); +x_11 = 1; +return x_11; +} +} +else +{ +uint8_t x_12; +x_12 = 0; +return x_12; +} +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_shouldUsepartialFixpoint(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; uint8_t x_4; +x_2 = lean_array_get_size(x_1); +x_3 = lean_unsigned_to_nat(0u); +x_4 = lean_nat_dec_lt(x_3, x_2); +if (x_4 == 0) +{ +uint8_t x_5; +lean_dec(x_2); +x_5 = 0; +return x_5; +} +else +{ +size_t x_6; size_t x_7; uint8_t x_8; +x_6 = 0; +x_7 = lean_usize_of_nat(x_2); +lean_dec(x_2); +x_8 = l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1(x_1, x_6, x_7); +return x_8; +} +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUsepartialFixpoint___spec__1(x_1, x_4, x_5); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_shouldUsepartialFixpoint___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_Elab_shouldUsepartialFixpoint(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_shouldUseWF___spec__1(lean_object* x_1, size_t x_2, size_t x_3) { _start: { @@ -15704,7 +16230,7 @@ lean_inc(x_7); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; -x_8 = lean_ctor_get(x_6, 3); +x_8 = lean_ctor_get(x_6, 4); lean_inc(x_8); lean_dec(x_6); if (lean_obj_tag(x_8) == 0) @@ -15741,7 +16267,7 @@ return x_15; else { lean_object* x_16; -x_16 = lean_ctor_get(x_6, 3); +x_16 = lean_ctor_get(x_6, 4); lean_inc(x_16); lean_dec(x_6); if (lean_obj_tag(x_16) == 0) @@ -18781,64 +19307,64 @@ return x_252; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__4(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_12; lean_object* x_24; lean_object* x_66; lean_object* x_67; lean_object* x_223; lean_object* x_266; lean_object* x_303; uint8_t x_304; +lean_object* x_12; lean_object* x_24; lean_object* x_66; lean_object* x_67; lean_object* x_227; lean_object* x_270; lean_object* x_307; uint8_t x_308; x_66 = lean_array_get_size(x_1); -x_303 = lean_unsigned_to_nat(1u); -x_304 = lean_nat_dec_eq(x_66, x_303); -if (x_304 == 0) +x_307 = lean_unsigned_to_nat(1u); +x_308 = lean_nat_dec_eq(x_66, x_307); +if (x_308 == 0) { -lean_object* x_305; -x_305 = lean_box(0); -x_266 = x_305; -goto block_302; +lean_object* x_309; +x_309 = lean_box(0); +x_270 = x_309; +goto block_306; } else { -lean_object* x_306; uint8_t x_307; -x_306 = lean_unsigned_to_nat(0u); -x_307 = lean_nat_dec_lt(x_306, x_66); -if (x_307 == 0) +lean_object* x_310; uint8_t x_311; +x_310 = lean_unsigned_to_nat(0u); +x_311 = lean_nat_dec_lt(x_310, x_66); +if (x_311 == 0) { -lean_object* x_308; lean_object* x_309; uint8_t x_310; -x_308 = l_Lean_Elab_instInhabitedPreDefinition; -x_309 = l_outOfBounds___rarg(x_308); -x_310 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(x_309); -if (x_310 == 0) +lean_object* x_312; lean_object* x_313; uint8_t x_314; +x_312 = l_Lean_Elab_instInhabitedPreDefinition; +x_313 = l_outOfBounds___rarg(x_312); +x_314 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(x_313); +if (x_314 == 0) { -lean_object* x_311; -x_311 = lean_box(0); -x_266 = x_311; -goto block_302; +lean_object* x_315; +x_315 = lean_box(0); +x_270 = x_315; +goto block_306; } else { -lean_object* x_312; +lean_object* x_316; lean_dec(x_66); lean_dec(x_1); -x_312 = l_outOfBounds___rarg(x_308); -x_24 = x_312; +x_316 = l_outOfBounds___rarg(x_312); +x_24 = x_316; goto block_65; } } else { -lean_object* x_313; uint8_t x_314; -x_313 = lean_array_fget(x_1, x_306); -lean_inc(x_313); -x_314 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(x_313); -if (x_314 == 0) +lean_object* x_317; uint8_t x_318; +x_317 = lean_array_fget(x_1, x_310); +lean_inc(x_317); +x_318 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_isNonRecursive(x_317); +if (x_318 == 0) { -lean_object* x_315; -lean_dec(x_313); -x_315 = lean_box(0); -x_266 = x_315; -goto block_302; +lean_object* x_319; +lean_dec(x_317); +x_319 = lean_box(0); +x_270 = x_319; +goto block_306; } else { lean_dec(x_66); lean_dec(x_1); -x_24 = x_313; +x_24 = x_317; goto block_65; } } @@ -19115,7 +19641,7 @@ return x_64; } } } -block_222: +block_226: { lean_object* x_68; lean_dec(x_67); @@ -19146,6 +19672,7 @@ lean_object* x_165; lean_object* x_166; x_165 = lean_ctor_get(x_164, 1); lean_inc(x_165); lean_dec(x_164); +lean_inc(x_10); lean_inc(x_9); x_166 = l_Lean_Elab_checkTerminationByHints(x_1, x_9, x_10, x_165); if (lean_obj_tag(x_166) == 0) @@ -19174,142 +19701,146 @@ x_171 = l_Lean_Elab_shouldUseStructural(x_1); if (x_171 == 0) { uint8_t x_172; -x_172 = l_Lean_Elab_shouldUseWF(x_1); +x_172 = l_Lean_Elab_shouldUsepartialFixpoint(x_1); if (x_172 == 0) { -lean_object* x_173; uint8_t x_174; lean_object* x_175; lean_object* x_176; -x_173 = lean_unsigned_to_nat(0u); -x_174 = lean_nat_dec_lt(x_173, x_66); +uint8_t x_173; +x_173 = l_Lean_Elab_shouldUseWF(x_1); +if (x_173 == 0) +{ +lean_object* x_174; uint8_t x_175; lean_object* x_176; lean_object* x_177; +x_174 = lean_unsigned_to_nat(0u); +x_175 = lean_nat_dec_lt(x_174, x_66); lean_inc(x_1); -x_175 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__2), 2, 1); -lean_closure_set(x_175, 0, x_1); -if (x_174 == 0) +x_176 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__2), 2, 1); +lean_closure_set(x_176, 0, x_1); +if (x_175 == 0) { -lean_object* x_203; lean_object* x_204; -x_203 = l_Lean_Elab_instInhabitedPreDefinition; -x_204 = l_outOfBounds___rarg(x_203); -x_176 = x_204; -goto block_202; -} -else -{ -lean_object* x_205; -x_205 = lean_array_fget(x_1, x_173); -x_176 = x_205; -goto block_202; -} -block_202: -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; uint8_t x_189; lean_object* x_190; uint8_t x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; -x_177 = lean_ctor_get(x_176, 0); -lean_inc(x_177); -lean_dec(x_176); -x_178 = lean_ctor_get(x_9, 0); -lean_inc(x_178); -x_179 = lean_ctor_get(x_9, 1); -lean_inc(x_179); -x_180 = lean_ctor_get(x_9, 2); -lean_inc(x_180); -x_181 = lean_ctor_get(x_9, 3); -lean_inc(x_181); -x_182 = lean_ctor_get(x_9, 4); -lean_inc(x_182); -x_183 = lean_ctor_get(x_9, 5); -lean_inc(x_183); -x_184 = lean_ctor_get(x_9, 6); -lean_inc(x_184); -x_185 = lean_ctor_get(x_9, 7); -lean_inc(x_185); -x_186 = lean_ctor_get(x_9, 8); -lean_inc(x_186); -x_187 = lean_ctor_get(x_9, 9); -lean_inc(x_187); -x_188 = lean_ctor_get(x_9, 10); -lean_inc(x_188); -x_189 = lean_ctor_get_uint8(x_9, sizeof(void*)*12); -x_190 = lean_ctor_get(x_9, 11); -lean_inc(x_190); -x_191 = lean_ctor_get_uint8(x_9, sizeof(void*)*12 + 1); -x_192 = l_Lean_replaceRef(x_177, x_183); -lean_dec(x_183); -lean_dec(x_177); -x_193 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_193, 0, x_178); -lean_ctor_set(x_193, 1, x_179); -lean_ctor_set(x_193, 2, x_180); -lean_ctor_set(x_193, 3, x_181); -lean_ctor_set(x_193, 4, x_182); -lean_ctor_set(x_193, 5, x_192); -lean_ctor_set(x_193, 6, x_184); -lean_ctor_set(x_193, 7, x_185); -lean_ctor_set(x_193, 8, x_186); -lean_ctor_set(x_193, 9, x_187); -lean_ctor_set(x_193, 10, x_188); -lean_ctor_set(x_193, 11, x_190); -lean_ctor_set_uint8(x_193, sizeof(void*)*12, x_189); -lean_ctor_set_uint8(x_193, sizeof(void*)*12 + 1, x_191); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_1); -x_194 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__3), 9, 4); -lean_closure_set(x_194, 0, x_1); -lean_closure_set(x_194, 1, x_169); -lean_closure_set(x_194, 2, x_5); -lean_closure_set(x_194, 3, x_6); -lean_inc(x_10); -lean_inc(x_8); -lean_inc(x_7); -x_195 = l_Lean_Meta_mapErrorImp___rarg(x_194, x_175, x_7, x_8, x_193, x_10, x_170); -if (lean_obj_tag(x_195) == 0) -{ -uint8_t x_196; -lean_dec(x_70); -lean_dec(x_66); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_196 = !lean_is_exclusive(x_195); -if (x_196 == 0) -{ -x_12 = x_195; -goto block_23; -} -else -{ -lean_object* x_197; lean_object* x_198; lean_object* x_199; -x_197 = lean_ctor_get(x_195, 0); -x_198 = lean_ctor_get(x_195, 1); -lean_inc(x_198); -lean_inc(x_197); -lean_dec(x_195); -x_199 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_199, 0, x_197); -lean_ctor_set(x_199, 1, x_198); -x_12 = x_199; -goto block_23; -} -} -else -{ -lean_object* x_200; lean_object* x_201; -x_200 = lean_ctor_get(x_195, 0); -lean_inc(x_200); -x_201 = lean_ctor_get(x_195, 1); -lean_inc(x_201); -lean_dec(x_195); -x_71 = x_200; -x_72 = x_201; -goto block_163; -} -} +lean_object* x_204; lean_object* x_205; +x_204 = l_Lean_Elab_instInhabitedPreDefinition; +x_205 = l_outOfBounds___rarg(x_204); +x_177 = x_205; +goto block_203; } else { lean_object* x_206; +x_206 = lean_array_fget(x_1, x_174); +x_177 = x_206; +goto block_203; +} +block_203: +{ +lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; uint8_t x_190; lean_object* x_191; uint8_t x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; +x_178 = lean_ctor_get(x_177, 0); +lean_inc(x_178); +lean_dec(x_177); +x_179 = lean_ctor_get(x_9, 0); +lean_inc(x_179); +x_180 = lean_ctor_get(x_9, 1); +lean_inc(x_180); +x_181 = lean_ctor_get(x_9, 2); +lean_inc(x_181); +x_182 = lean_ctor_get(x_9, 3); +lean_inc(x_182); +x_183 = lean_ctor_get(x_9, 4); +lean_inc(x_183); +x_184 = lean_ctor_get(x_9, 5); +lean_inc(x_184); +x_185 = lean_ctor_get(x_9, 6); +lean_inc(x_185); +x_186 = lean_ctor_get(x_9, 7); +lean_inc(x_186); +x_187 = lean_ctor_get(x_9, 8); +lean_inc(x_187); +x_188 = lean_ctor_get(x_9, 9); +lean_inc(x_188); +x_189 = lean_ctor_get(x_9, 10); +lean_inc(x_189); +x_190 = lean_ctor_get_uint8(x_9, sizeof(void*)*12); +x_191 = lean_ctor_get(x_9, 11); +lean_inc(x_191); +x_192 = lean_ctor_get_uint8(x_9, sizeof(void*)*12 + 1); +x_193 = l_Lean_replaceRef(x_178, x_184); +lean_dec(x_184); +lean_dec(x_178); +x_194 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_194, 0, x_179); +lean_ctor_set(x_194, 1, x_180); +lean_ctor_set(x_194, 2, x_181); +lean_ctor_set(x_194, 3, x_182); +lean_ctor_set(x_194, 4, x_183); +lean_ctor_set(x_194, 5, x_193); +lean_ctor_set(x_194, 6, x_185); +lean_ctor_set(x_194, 7, x_186); +lean_ctor_set(x_194, 8, x_187); +lean_ctor_set(x_194, 9, x_188); +lean_ctor_set(x_194, 10, x_189); +lean_ctor_set(x_194, 11, x_191); +lean_ctor_set_uint8(x_194, sizeof(void*)*12, x_190); +lean_ctor_set_uint8(x_194, sizeof(void*)*12 + 1, x_192); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_1); +x_195 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__13___lambda__3), 9, 4); +lean_closure_set(x_195, 0, x_1); +lean_closure_set(x_195, 1, x_169); +lean_closure_set(x_195, 2, x_5); +lean_closure_set(x_195, 3, x_6); +lean_inc(x_10); +lean_inc(x_8); +lean_inc(x_7); +x_196 = l_Lean_Meta_mapErrorImp___rarg(x_195, x_176, x_7, x_8, x_194, x_10, x_170); +if (lean_obj_tag(x_196) == 0) +{ +uint8_t x_197; +lean_dec(x_70); +lean_dec(x_66); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_197 = !lean_is_exclusive(x_196); +if (x_197 == 0) +{ +x_12 = x_196; +goto block_23; +} +else +{ +lean_object* x_198; lean_object* x_199; lean_object* x_200; +x_198 = lean_ctor_get(x_196, 0); +x_199 = lean_ctor_get(x_196, 1); +lean_inc(x_199); +lean_inc(x_198); +lean_dec(x_196); +x_200 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_200, 0, x_198); +lean_ctor_set(x_200, 1, x_199); +x_12 = x_200; +goto block_23; +} +} +else +{ +lean_object* x_201; lean_object* x_202; +x_201 = lean_ctor_get(x_196, 0); +lean_inc(x_201); +x_202 = lean_ctor_get(x_196, 1); +lean_inc(x_202); +lean_dec(x_196); +x_71 = x_201; +x_72 = x_202; +goto block_163; +} +} +} +else +{ +lean_object* x_207; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); @@ -19317,8 +19848,8 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_206 = l_Lean_Elab_wfRecursion(x_1, x_169, x_5, x_6, x_7, x_8, x_9, x_10, x_170); -if (lean_obj_tag(x_206) == 0) +x_207 = l_Lean_Elab_wfRecursion(x_1, x_169, x_5, x_6, x_7, x_8, x_9, x_10, x_170); +if (lean_obj_tag(x_207) == 0) { lean_dec(x_70); lean_dec(x_66); @@ -19329,26 +19860,27 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_12 = x_206; +x_12 = x_207; goto block_23; } else { -lean_object* x_207; lean_object* x_208; -x_207 = lean_ctor_get(x_206, 0); -lean_inc(x_207); -x_208 = lean_ctor_get(x_206, 1); +lean_object* x_208; lean_object* x_209; +x_208 = lean_ctor_get(x_207, 0); lean_inc(x_208); -lean_dec(x_206); -x_71 = x_207; -x_72 = x_208; +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +lean_dec(x_207); +x_71 = x_208; +x_72 = x_209; goto block_163; } } } else { -lean_object* x_209; +lean_object* x_210; +lean_dec(x_169); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); @@ -19356,8 +19888,8 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_209 = l_Lean_Elab_Structural_structuralRecursion(x_1, x_169, x_5, x_6, x_7, x_8, x_9, x_10, x_170); -if (lean_obj_tag(x_209) == 0) +x_210 = l_Lean_Elab_partialFixpoint(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_170); +if (lean_obj_tag(x_210) == 0) { lean_dec(x_70); lean_dec(x_66); @@ -19368,61 +19900,100 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_12 = x_209; +x_12 = x_210; goto block_23; } else { -lean_object* x_210; lean_object* x_211; -x_210 = lean_ctor_get(x_209, 0); -lean_inc(x_210); -x_211 = lean_ctor_get(x_209, 1); +lean_object* x_211; lean_object* x_212; +x_211 = lean_ctor_get(x_210, 0); lean_inc(x_211); -lean_dec(x_209); -x_71 = x_210; -x_72 = x_211; +x_212 = lean_ctor_get(x_210, 1); +lean_inc(x_212); +lean_dec(x_210); +x_71 = x_211; +x_72 = x_212; goto block_163; } } } else { -lean_object* x_212; lean_object* x_213; -x_212 = lean_ctor_get(x_168, 0); -lean_inc(x_212); -x_213 = lean_ctor_get(x_168, 1); -lean_inc(x_213); -lean_dec(x_168); -x_71 = x_212; -x_72 = x_213; -goto block_163; -} +lean_object* x_213; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_1); +x_213 = l_Lean_Elab_Structural_structuralRecursion(x_1, x_169, x_5, x_6, x_7, x_8, x_9, x_10, x_170); +if (lean_obj_tag(x_213) == 0) +{ +lean_dec(x_70); +lean_dec(x_66); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_12 = x_213; +goto block_23; } else { lean_object* x_214; lean_object* x_215; -x_214 = lean_ctor_get(x_166, 0); +x_214 = lean_ctor_get(x_213, 0); lean_inc(x_214); -x_215 = lean_ctor_get(x_166, 1); +x_215 = lean_ctor_get(x_213, 1); lean_inc(x_215); -lean_dec(x_166); +lean_dec(x_213); x_71 = x_214; x_72 = x_215; goto block_163; } } +} else { lean_object* x_216; lean_object* x_217; -x_216 = lean_ctor_get(x_164, 0); +x_216 = lean_ctor_get(x_168, 0); lean_inc(x_216); -x_217 = lean_ctor_get(x_164, 1); +x_217 = lean_ctor_get(x_168, 1); lean_inc(x_217); -lean_dec(x_164); +lean_dec(x_168); x_71 = x_216; x_72 = x_217; goto block_163; } +} +else +{ +lean_object* x_218; lean_object* x_219; +x_218 = lean_ctor_get(x_166, 0); +lean_inc(x_218); +x_219 = lean_ctor_get(x_166, 1); +lean_inc(x_219); +lean_dec(x_166); +x_71 = x_218; +x_72 = x_219; +goto block_163; +} +} +else +{ +lean_object* x_220; lean_object* x_221; +x_220 = lean_ctor_get(x_164, 0); +lean_inc(x_220); +x_221 = lean_ctor_get(x_164, 1); +lean_inc(x_221); +lean_dec(x_164); +x_71 = x_220; +x_72 = x_221; +goto block_163; +} block_163: { uint8_t x_73; @@ -20074,7 +20645,7 @@ goto block_23; } else { -uint8_t x_218; +uint8_t x_222; lean_dec(x_66); lean_dec(x_10); lean_dec(x_9); @@ -20083,69 +20654,69 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_218 = !lean_is_exclusive(x_68); -if (x_218 == 0) +x_222 = !lean_is_exclusive(x_68); +if (x_222 == 0) { return x_68; } else { -lean_object* x_219; lean_object* x_220; lean_object* x_221; -x_219 = lean_ctor_get(x_68, 0); -x_220 = lean_ctor_get(x_68, 1); -lean_inc(x_220); -lean_inc(x_219); +lean_object* x_223; lean_object* x_224; lean_object* x_225; +x_223 = lean_ctor_get(x_68, 0); +x_224 = lean_ctor_get(x_68, 1); +lean_inc(x_224); +lean_inc(x_223); lean_dec(x_68); -x_221 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_221, 0, x_219); -lean_ctor_set(x_221, 1, x_220); -return x_221; +x_225 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_225, 0, x_223); +lean_ctor_set(x_225, 1, x_224); +return x_225; } } } -block_265: +block_269: { -lean_object* x_224; uint8_t x_225; -lean_dec(x_223); -x_224 = lean_unsigned_to_nat(0u); -x_225 = lean_nat_dec_lt(x_224, x_66); -if (x_225 == 0) +lean_object* x_228; uint8_t x_229; +lean_dec(x_227); +x_228 = lean_unsigned_to_nat(0u); +x_229 = lean_nat_dec_lt(x_228, x_66); +if (x_229 == 0) { -lean_object* x_226; -x_226 = lean_box(0); -x_67 = x_226; -goto block_222; +lean_object* x_230; +x_230 = lean_box(0); +x_67 = x_230; +goto block_226; } else { -size_t x_227; uint8_t x_228; -x_227 = lean_usize_of_nat(x_66); -x_228 = l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__8(x_1, x_2, x_227); -if (x_228 == 0) +size_t x_231; uint8_t x_232; +x_231 = lean_usize_of_nat(x_66); +x_232 = l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__8(x_1, x_2, x_231); +if (x_232 == 0) { -lean_object* x_229; -x_229 = lean_box(0); -x_67 = x_229; -goto block_222; +lean_object* x_233; +x_233 = lean_box(0); +x_67 = x_233; +goto block_226; } else { -size_t x_230; lean_object* x_231; lean_object* x_232; -x_230 = lean_array_size(x_1); -x_231 = lean_box(0); +size_t x_234; lean_object* x_235; lean_object* x_236; +x_234 = lean_array_size(x_1); +x_235 = lean_box(0); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_5); -x_232 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__9(x_3, x_1, x_1, x_230, x_2, x_231, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_232) == 0) +x_236 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__9(x_3, x_1, x_1, x_234, x_2, x_235, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_236) == 0) { -lean_object* x_233; uint8_t x_234; lean_object* x_235; -x_233 = lean_ctor_get(x_232, 1); -lean_inc(x_233); -lean_dec(x_232); -x_234 = 0; +lean_object* x_237; uint8_t x_238; lean_object* x_239; +x_237 = lean_ctor_get(x_236, 1); +lean_inc(x_237); +lean_dec(x_236); +x_238 = 0; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); @@ -20153,22 +20724,22 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_235 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial(x_1, x_234, x_5, x_6, x_7, x_8, x_9, x_10, x_233); -if (lean_obj_tag(x_235) == 0) +x_239 = l___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial(x_1, x_238, x_5, x_6, x_7, x_8, x_9, x_10, x_237); +if (lean_obj_tag(x_239) == 0) { -uint8_t x_236; -x_236 = !lean_is_exclusive(x_235); -if (x_236 == 0) +uint8_t x_240; +x_240 = !lean_is_exclusive(x_239); +if (x_240 == 0) { -lean_object* x_237; lean_object* x_238; uint8_t x_239; -x_237 = lean_ctor_get(x_235, 1); -x_238 = lean_ctor_get(x_235, 0); -lean_dec(x_238); -x_239 = lean_nat_dec_le(x_66, x_66); +lean_object* x_241; lean_object* x_242; uint8_t x_243; +x_241 = lean_ctor_get(x_239, 1); +x_242 = lean_ctor_get(x_239, 0); +lean_dec(x_242); +x_243 = lean_nat_dec_le(x_66, x_66); lean_dec(x_66); -if (x_239 == 0) +if (x_243 == 0) { -lean_object* x_240; +lean_object* x_244; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -20176,105 +20747,56 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_240 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -lean_ctor_set(x_235, 0, x_240); -return x_235; -} -else -{ -lean_object* x_241; uint8_t x_242; -lean_free_object(x_235); -x_241 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10(x_1, x_2, x_227, x_231, x_5, x_6, x_7, x_8, x_9, x_10, x_237); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_242 = !lean_is_exclusive(x_241); -if (x_242 == 0) -{ -lean_object* x_243; lean_object* x_244; -x_243 = lean_ctor_get(x_241, 0); -lean_dec(x_243); x_244 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -lean_ctor_set(x_241, 0, x_244); -return x_241; +lean_ctor_set(x_239, 0, x_244); +return x_239; } else { -lean_object* x_245; lean_object* x_246; lean_object* x_247; -x_245 = lean_ctor_get(x_241, 1); -lean_inc(x_245); -lean_dec(x_241); -x_246 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_247 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_247, 0, x_246); -lean_ctor_set(x_247, 1, x_245); -return x_247; -} -} -} -else -{ -lean_object* x_248; uint8_t x_249; -x_248 = lean_ctor_get(x_235, 1); -lean_inc(x_248); -lean_dec(x_235); -x_249 = lean_nat_dec_le(x_66, x_66); -lean_dec(x_66); -if (x_249 == 0) -{ -lean_object* x_250; lean_object* x_251; +lean_object* x_245; uint8_t x_246; +lean_free_object(x_239); +x_245 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10(x_1, x_2, x_231, x_235, x_5, x_6, x_7, x_8, x_9, x_10, x_241); lean_dec(x_10); -lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); +x_246 = !lean_is_exclusive(x_245); +if (x_246 == 0) +{ +lean_object* x_247; lean_object* x_248; +x_247 = lean_ctor_get(x_245, 0); +lean_dec(x_247); +x_248 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +lean_ctor_set(x_245, 0, x_248); +return x_245; +} +else +{ +lean_object* x_249; lean_object* x_250; lean_object* x_251; +x_249 = lean_ctor_get(x_245, 1); +lean_inc(x_249); +lean_dec(x_245); x_250 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; x_251 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_251, 0, x_250); -lean_ctor_set(x_251, 1, x_248); +lean_ctor_set(x_251, 1, x_249); return x_251; } -else -{ -lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; -x_252 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10(x_1, x_2, x_227, x_231, x_5, x_6, x_7, x_8, x_9, x_10, x_248); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_253 = lean_ctor_get(x_252, 1); -lean_inc(x_253); -if (lean_is_exclusive(x_252)) { - lean_ctor_release(x_252, 0); - lean_ctor_release(x_252, 1); - x_254 = x_252; -} else { - lean_dec_ref(x_252); - x_254 = lean_box(0); -} -x_255 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -if (lean_is_scalar(x_254)) { - x_256 = lean_alloc_ctor(0, 2, 0); -} else { - x_256 = x_254; -} -lean_ctor_set(x_256, 0, x_255); -lean_ctor_set(x_256, 1, x_253); -return x_256; -} } } else { -uint8_t x_257; +lean_object* x_252; uint8_t x_253; +x_252 = lean_ctor_get(x_239, 1); +lean_inc(x_252); +lean_dec(x_239); +x_253 = lean_nat_dec_le(x_66, x_66); lean_dec(x_66); +if (x_253 == 0) +{ +lean_object* x_254; lean_object* x_255; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -20282,22 +20804,40 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_257 = !lean_is_exclusive(x_235); -if (x_257 == 0) -{ -return x_235; +x_254 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +x_255 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_255, 0, x_254); +lean_ctor_set(x_255, 1, x_252); +return x_255; } else { -lean_object* x_258; lean_object* x_259; lean_object* x_260; -x_258 = lean_ctor_get(x_235, 0); -x_259 = lean_ctor_get(x_235, 1); -lean_inc(x_259); -lean_inc(x_258); -lean_dec(x_235); -x_260 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_260, 0, x_258); -lean_ctor_set(x_260, 1, x_259); +lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; +x_256 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__10(x_1, x_2, x_231, x_235, x_5, x_6, x_7, x_8, x_9, x_10, x_252); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_257 = lean_ctor_get(x_256, 1); +lean_inc(x_257); +if (lean_is_exclusive(x_256)) { + lean_ctor_release(x_256, 0); + lean_ctor_release(x_256, 1); + x_258 = x_256; +} else { + lean_dec_ref(x_256); + x_258 = lean_box(0); +} +x_259 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +if (lean_is_scalar(x_258)) { + x_260 = lean_alloc_ctor(0, 2, 0); +} else { + x_260 = x_258; +} +lean_ctor_set(x_260, 0, x_259); +lean_ctor_set(x_260, 1, x_257); return x_260; } } @@ -20313,19 +20853,19 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_261 = !lean_is_exclusive(x_232); +x_261 = !lean_is_exclusive(x_239); if (x_261 == 0) { -return x_232; +return x_239; } else { lean_object* x_262; lean_object* x_263; lean_object* x_264; -x_262 = lean_ctor_get(x_232, 0); -x_263 = lean_ctor_get(x_232, 1); +x_262 = lean_ctor_get(x_239, 0); +x_263 = lean_ctor_get(x_239, 1); lean_inc(x_263); lean_inc(x_262); -lean_dec(x_232); +lean_dec(x_239); x_264 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_264, 0, x_262); lean_ctor_set(x_264, 1, x_263); @@ -20333,37 +20873,68 @@ return x_264; } } } -} -} -block_302: +else { -lean_object* x_267; uint8_t x_268; -lean_dec(x_266); -x_267 = lean_unsigned_to_nat(0u); -x_268 = lean_nat_dec_lt(x_267, x_66); -if (x_268 == 0) +uint8_t x_265; +lean_dec(x_66); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_265 = !lean_is_exclusive(x_236); +if (x_265 == 0) { -lean_object* x_269; -x_269 = lean_box(0); -x_223 = x_269; -goto block_265; +return x_236; } else { -size_t x_270; uint8_t x_271; -x_270 = lean_usize_of_nat(x_66); -x_271 = l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__11(x_1, x_2, x_270); -if (x_271 == 0) +lean_object* x_266; lean_object* x_267; lean_object* x_268; +x_266 = lean_ctor_get(x_236, 0); +x_267 = lean_ctor_get(x_236, 1); +lean_inc(x_267); +lean_inc(x_266); +lean_dec(x_236); +x_268 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_268, 0, x_266); +lean_ctor_set(x_268, 1, x_267); +return x_268; +} +} +} +} +} +block_306: { -lean_object* x_272; -x_272 = lean_box(0); -x_223 = x_272; -goto block_265; +lean_object* x_271; uint8_t x_272; +lean_dec(x_270); +x_271 = lean_unsigned_to_nat(0u); +x_272 = lean_nat_dec_lt(x_271, x_66); +if (x_272 == 0) +{ +lean_object* x_273; +x_273 = lean_box(0); +x_227 = x_273; +goto block_269; } else { -uint8_t x_273; lean_object* x_274; -x_273 = 0; +size_t x_274; uint8_t x_275; +x_274 = lean_usize_of_nat(x_66); +x_275 = l_Array_anyMUnsafe_any___at_Lean_Elab_addPreDefinitions___spec__11(x_1, x_2, x_274); +if (x_275 == 0) +{ +lean_object* x_276; +x_276 = lean_box(0); +x_227 = x_276; +goto block_269; +} +else +{ +uint8_t x_277; lean_object* x_278; +x_277 = 0; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); @@ -20371,80 +20942,22 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_1); -x_274 = l_Lean_Elab_addAndCompileUnsafe(x_1, x_273, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_274) == 0) +x_278 = l_Lean_Elab_addAndCompileUnsafe(x_1, x_277, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_278) == 0) { -uint8_t x_275; -x_275 = !lean_is_exclusive(x_274); -if (x_275 == 0) -{ -lean_object* x_276; lean_object* x_277; uint8_t x_278; -x_276 = lean_ctor_get(x_274, 1); -x_277 = lean_ctor_get(x_274, 0); -lean_dec(x_277); -x_278 = lean_nat_dec_le(x_66, x_66); -lean_dec(x_66); -if (x_278 == 0) -{ -lean_object* x_279; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_279 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -lean_ctor_set(x_274, 0, x_279); -return x_274; -} -else +uint8_t x_279; +x_279 = !lean_is_exclusive(x_278); +if (x_279 == 0) { lean_object* x_280; lean_object* x_281; uint8_t x_282; -lean_free_object(x_274); -x_280 = lean_box(0); -x_281 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12(x_1, x_2, x_270, x_280, x_5, x_6, x_7, x_8, x_9, x_10, x_276); -lean_dec(x_10); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_282 = !lean_is_exclusive(x_281); +x_280 = lean_ctor_get(x_278, 1); +x_281 = lean_ctor_get(x_278, 0); +lean_dec(x_281); +x_282 = lean_nat_dec_le(x_66, x_66); +lean_dec(x_66); if (x_282 == 0) { -lean_object* x_283; lean_object* x_284; -x_283 = lean_ctor_get(x_281, 0); -lean_dec(x_283); -x_284 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -lean_ctor_set(x_281, 0, x_284); -return x_281; -} -else -{ -lean_object* x_285; lean_object* x_286; lean_object* x_287; -x_285 = lean_ctor_get(x_281, 1); -lean_inc(x_285); -lean_dec(x_281); -x_286 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -x_287 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_287, 0, x_286); -lean_ctor_set(x_287, 1, x_285); -return x_287; -} -} -} -else -{ -lean_object* x_288; uint8_t x_289; -x_288 = lean_ctor_get(x_274, 1); -lean_inc(x_288); -lean_dec(x_274); -x_289 = lean_nat_dec_le(x_66, x_66); -lean_dec(x_66); -if (x_289 == 0) -{ -lean_object* x_290; lean_object* x_291; +lean_object* x_283; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -20452,48 +20965,106 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); +x_283 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +lean_ctor_set(x_278, 0, x_283); +return x_278; +} +else +{ +lean_object* x_284; lean_object* x_285; uint8_t x_286; +lean_free_object(x_278); +x_284 = lean_box(0); +x_285 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12(x_1, x_2, x_274, x_284, x_5, x_6, x_7, x_8, x_9, x_10, x_280); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_286 = !lean_is_exclusive(x_285); +if (x_286 == 0) +{ +lean_object* x_287; lean_object* x_288; +x_287 = lean_ctor_get(x_285, 0); +lean_dec(x_287); +x_288 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +lean_ctor_set(x_285, 0, x_288); +return x_285; +} +else +{ +lean_object* x_289; lean_object* x_290; lean_object* x_291; +x_289 = lean_ctor_get(x_285, 1); +lean_inc(x_289); +lean_dec(x_285); x_290 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; x_291 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_291, 0, x_290); -lean_ctor_set(x_291, 1, x_288); +lean_ctor_set(x_291, 1, x_289); return x_291; } +} +} else { -lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; -x_292 = lean_box(0); -x_293 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12(x_1, x_2, x_270, x_292, x_5, x_6, x_7, x_8, x_9, x_10, x_288); +lean_object* x_292; uint8_t x_293; +x_292 = lean_ctor_get(x_278, 1); +lean_inc(x_292); +lean_dec(x_278); +x_293 = lean_nat_dec_le(x_66, x_66); +lean_dec(x_66); +if (x_293 == 0) +{ +lean_object* x_294; lean_object* x_295; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_294 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +x_295 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_295, 0, x_294); +lean_ctor_set(x_295, 1, x_292); +return x_295; +} +else +{ +lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_296 = lean_box(0); +x_297 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_addPreDefinitions___spec__12(x_1, x_2, x_274, x_296, x_5, x_6, x_7, x_8, x_9, x_10, x_292); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_294 = lean_ctor_get(x_293, 1); -lean_inc(x_294); -if (lean_is_exclusive(x_293)) { - lean_ctor_release(x_293, 0); - lean_ctor_release(x_293, 1); - x_295 = x_293; +x_298 = lean_ctor_get(x_297, 1); +lean_inc(x_298); +if (lean_is_exclusive(x_297)) { + lean_ctor_release(x_297, 0); + lean_ctor_release(x_297, 1); + x_299 = x_297; } else { - lean_dec_ref(x_293); - x_295 = lean_box(0); + lean_dec_ref(x_297); + x_299 = lean_box(0); } -x_296 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; -if (lean_is_scalar(x_295)) { - x_297 = lean_alloc_ctor(0, 2, 0); +x_300 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__3___closed__1; +if (lean_is_scalar(x_299)) { + x_301 = lean_alloc_ctor(0, 2, 0); } else { - x_297 = x_295; + x_301 = x_299; } -lean_ctor_set(x_297, 0, x_296); -lean_ctor_set(x_297, 1, x_294); -return x_297; +lean_ctor_set(x_301, 0, x_300); +lean_ctor_set(x_301, 1, x_298); +return x_301; } } } else { -uint8_t x_298; +uint8_t x_302; lean_dec(x_66); lean_dec(x_10); lean_dec(x_9); @@ -20502,23 +21073,23 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_298 = !lean_is_exclusive(x_274); -if (x_298 == 0) +x_302 = !lean_is_exclusive(x_278); +if (x_302 == 0) { -return x_274; +return x_278; } else { -lean_object* x_299; lean_object* x_300; lean_object* x_301; -x_299 = lean_ctor_get(x_274, 0); -x_300 = lean_ctor_get(x_274, 1); -lean_inc(x_300); -lean_inc(x_299); -lean_dec(x_274); -x_301 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_301, 0, x_299); -lean_ctor_set(x_301, 1, x_300); -return x_301; +lean_object* x_303; lean_object* x_304; lean_object* x_305; +x_303 = lean_ctor_get(x_278, 0); +x_304 = lean_ctor_get(x_278, 1); +lean_inc(x_304); +lean_inc(x_303); +lean_dec(x_278); +x_305 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_305, 0, x_303); +lean_ctor_set(x_305, 1, x_304); +return x_305; } } } @@ -20688,7 +21259,7 @@ x_47 = lean_ctor_get(x_23, 0); lean_dec(x_47); x_48 = lean_array_size(x_21); lean_inc(x_21); -x_49 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_guessLex___spec__11(x_48, x_5, x_21); +x_49 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(x_48, x_5, x_21); x_50 = lean_array_to_list(x_49); x_51 = lean_box(0); x_52 = l_List_mapTR_loop___at_Lean_compileDecl___spec__1(x_50, x_51); @@ -20809,7 +21380,7 @@ lean_inc(x_76); lean_dec(x_23); x_77 = lean_array_size(x_21); lean_inc(x_21); -x_78 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_guessLex___spec__11(x_77, x_5, x_21); +x_78 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(x_77, x_5, x_21); x_79 = lean_array_to_list(x_78); x_80 = lean_box(0); x_81 = l_List_mapTR_loop___at_Lean_compileDecl___spec__1(x_79, x_80); @@ -23176,7 +23747,7 @@ lean_dec(x_2); return x_16; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1() { _start: { lean_object* x_1; @@ -23184,27 +23755,27 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2; x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4() { _start: { lean_object* x_1; @@ -23212,17 +23783,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6() { _start: { lean_object* x_1; @@ -23230,37 +23801,37 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8; x_2 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10() { _start: { lean_object* x_1; @@ -23268,17 +23839,17 @@ x_1 = lean_mk_string_unchecked("PreDefinition", 13, 13); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12() { _start: { lean_object* x_1; @@ -23286,17 +23857,17 @@ x_1 = lean_mk_string_unchecked("Main", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14() { _start: { lean_object* x_1; @@ -23304,33 +23875,33 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15; -x_2 = lean_unsigned_to_nat(4226u); +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15; +x_2 = lean_unsigned_to_nat(4684u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_addPreDefinitions___spec__2___closed__2; x_3 = 0; -x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16; +x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); if (lean_obj_tag(x_5) == 0) { @@ -23371,6 +23942,7 @@ lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_obje lean_object* initialize_Lean_Elab_PreDefinition_Structural(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_WF_Main(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_MkInhabitant(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_Main(uint8_t builtin, lean_object* w) { lean_object * res; @@ -23391,6 +23963,9 @@ lean_dec_ref(res); res = initialize_Lean_Elab_PreDefinition_MkInhabitant(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__1); l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_Main_0__Lean_Elab_addAndCompilePartial___spec__2___lambda__2___closed__2(); @@ -23527,6 +24102,12 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___ lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__4); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__5); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__6); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__7); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__1___closed__8); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__2(); @@ -23537,12 +24118,6 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___ lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__4); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__5); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__6); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__7); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__2___closed__8); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__2(); @@ -23551,38 +24126,68 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___ lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__3); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__4(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__5); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__3___closed__6); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__4___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__5___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__6___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__5); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__6); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__7); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__8); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__9); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__10); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__11); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__12); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__13); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__14); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__15); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___lambda__7___closed__16); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__3); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__5); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__6); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__7); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__8); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__9); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__10); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__11); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__12); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__13); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__14); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__15); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_checkTerminationByHints___spec__3___closed__16); l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___closed__1(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_elabTerminationByHints___spec__1___closed__1); l_Lean_addTrace___at_Lean_Elab_addPreDefinitions___spec__1___closed__1 = _init_l_Lean_addTrace___at_Lean_Elab_addPreDefinitions___spec__1___closed__1(); @@ -23674,39 +24279,39 @@ l_Lean_Elab_addPreDefinitions___closed__10 = _init_l_Lean_Elab_addPreDefinitions lean_mark_persistent(l_Lean_Elab_addPreDefinitions___closed__10); l_Lean_Elab_addPreDefinitions___closed__11 = _init_l_Lean_Elab_addPreDefinitions___closed__11(); lean_mark_persistent(l_Lean_Elab_addPreDefinitions___closed__11); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__5); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__6); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__7); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__8); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__9); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__10); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__11); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__12); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__13); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__14); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__15); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226____closed__16); -if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4226_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__4); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__5); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__6); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__7); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__8); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__9); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__10); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__11); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__12); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__13); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__14); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__15); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684____closed__16); +if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_Main___hyg_4684_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Mutual.c b/stage0/stdlib/Lean/Elab/PreDefinition/Mutual.c new file mode 100644 index 0000000000..46a181a26e --- /dev/null +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Mutual.c @@ -0,0 +1,4512 @@ +// Lean compiler output +// Module: Lean.Elab.PreDefinition.Mutual +// Imports: Lean.Elab.PreDefinition.Basic +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* l_Lean_Expr_bindingName_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___boxed(lean_object*); +extern lean_object* l_Lean_Elab_instInhabitedPreDefinition; +static lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1; +extern lean_object* l_Lean_allowUnsafeReducibility; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_generateEagerEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefAttributes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1(size_t, size_t, lean_object*); +lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1; +uint64_t lean_uint64_lor(uint64_t, uint64_t); +lean_object* l_Lean_Meta_markAsRecursive(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_sort___override(lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); +lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_mk_array(lean_object*, lean_object*); +uint8_t lean_usize_dec_eq(size_t, size_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_cleanPreDefs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2(lean_object*, size_t, size_t); +lean_object* l_Lean_Elab_addAndCompilePartialRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static uint64_t l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); +lean_object* l_Lean_Elab_PreDefinition_filterAttrs(lean_object*, lean_object*); +static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4; +extern lean_object* l_Lean_maxRecDepth; +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2; +lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Kernel_isDiagnosticsEnabled(lean_object*); +uint8_t l_Lean_Expr_isLambda(lean_object*); +size_t lean_usize_of_nat(lean_object*); +lean_object* l_Lean_Elab_applyAttributesOf(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_st_ref_take(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2; +uint64_t lean_uint64_shift_right(uint64_t, uint64_t); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Meta_setMVarUserNamesAt___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_Elab_addNonRec___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_outOfBounds___rarg(lean_object*); +lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3; +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_st_mk_ref(lean_object*, lean_object*); +lean_object* lean_array_to_list(lean_object*); +lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1(lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6; +extern lean_object* l_Lean_levelZero; +lean_object* l_Lean_Elab_abstractNestedProofs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_instInhabitedExpr; +lean_object* l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(lean_object*, lean_object*, uint8_t); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefAttributes___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_name_eq(lean_object*, lean_object*); +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_diagnostics; +lean_object* l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2; +lean_object* l_instMonadControlTOfPure___rarg(lean_object*); +uint8_t l_Lean_Expr_binderInfo(lean_object*); +lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_addAndCompileUnsafe___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_List_mapTR_loop___at_Lean_Elab_addAndCompileUnsafe___spec__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +lean_object* l_Lean_Expr_bindingDomain_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3(lean_object*, size_t, size_t); +static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1; +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_sub(lean_object*, lean_object*); +uint64_t lean_uint64_shift_left(uint64_t, uint64_t); +static lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5; +lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +extern lean_object* l_Lean_Core_instMonadCoreM; +lean_object* lean_array_mk(lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_add(size_t, size_t); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_uget(lean_object*, size_t); +size_t lean_array_size(lean_object*); +static lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1; +lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_bindingBody_x21(lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3___boxed(lean_object*, lean_object*, lean_object*); +lean_object* lean_array_get_size(lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); +lean_object* lean_nat_add(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1(lean_object*, size_t, size_t, lean_object*); +lean_object* l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3; +uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1(lean_object*, lean_object*, size_t, size_t); +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +lean_object* lean_expr_instantiate1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_ReaderT_instMonad___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = l_Lean_Expr_bindingBody_x21(x_6); +lean_dec(x_6); +x_10 = lean_expr_instantiate1(x_9, x_1); +lean_dec(x_9); +x_11 = 1; +x_12 = lean_usize_add(x_3, x_11); +x_13 = lean_array_uset(x_8, x_3, x_10); +x_3 = x_12; +x_4 = x_13; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; +x_11 = lean_usize_dec_eq(x_4, x_5); +if (x_11 == 0) +{ +lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_12 = lean_array_uget(x_3, x_4); +x_22 = l_Lean_Expr_bindingDomain_x21(x_12); +lean_dec(x_12); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_nat_dec_lt(x_23, x_2); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_25 = l_Lean_instInhabitedExpr; +x_26 = l_outOfBounds___rarg(x_25); +x_27 = l_Lean_Expr_bindingDomain_x21(x_26); +lean_dec(x_26); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_28 = l_Lean_Meta_isExprDefEq(x_22, x_27, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; uint8_t x_30; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_unbox(x_29); +lean_dec(x_29); +if (x_30 == 0) +{ +lean_object* x_31; uint8_t x_32; +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_31); +lean_dec(x_28); +x_32 = 1; +x_13 = x_32; +x_14 = x_31; +goto block_21; +} +else +{ +lean_object* x_33; uint8_t x_34; +x_33 = lean_ctor_get(x_28, 1); +lean_inc(x_33); +lean_dec(x_28); +x_34 = 0; +x_13 = x_34; +x_14 = x_33; +goto block_21; +} +} +else +{ +uint8_t x_35; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_35 = !lean_is_exclusive(x_28); +if (x_35 == 0) +{ +return x_28; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_28, 0); +x_37 = lean_ctor_get(x_28, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_28); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_array_fget(x_1, x_23); +x_40 = l_Lean_Expr_bindingDomain_x21(x_39); +lean_dec(x_39); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_41 = l_Lean_Meta_isExprDefEq(x_22, x_40, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; uint8_t x_43; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_unbox(x_42); +lean_dec(x_42); +if (x_43 == 0) +{ +lean_object* x_44; uint8_t x_45; +x_44 = lean_ctor_get(x_41, 1); +lean_inc(x_44); +lean_dec(x_41); +x_45 = 1; +x_13 = x_45; +x_14 = x_44; +goto block_21; +} +else +{ +lean_object* x_46; uint8_t x_47; +x_46 = lean_ctor_get(x_41, 1); +lean_inc(x_46); +lean_dec(x_41); +x_47 = 0; +x_13 = x_47; +x_14 = x_46; +goto block_21; +} +} +else +{ +uint8_t x_48; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_48 = !lean_is_exclusive(x_41); +if (x_48 == 0) +{ +return x_41; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_41, 0); +x_50 = lean_ctor_get(x_41, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_41); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +block_21: +{ +if (x_13 == 0) +{ +size_t x_15; size_t x_16; +x_15 = 1; +x_16 = lean_usize_add(x_4, x_15); +x_4 = x_16; +x_10 = x_14; +goto _start; +} +else +{ +uint8_t x_18; lean_object* x_19; lean_object* x_20; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_18 = 1; +x_19 = lean_box(x_18); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_14); +return x_20; +} +} +} +else +{ +uint8_t x_52; lean_object* x_53; lean_object* x_54; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_52 = 0; +x_53 = lean_box(x_52); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_53); +lean_ctor_set(x_54, 1, x_10); +return x_54; +} +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3(lean_object* x_1, size_t x_2, size_t x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_eq(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_array_uget(x_1, x_2); +x_6 = l_Lean_Expr_isLambda(x_5); +lean_dec(x_5); +if (x_6 == 0) +{ +uint8_t x_7; +x_7 = 1; +return x_7; +} +else +{ +size_t x_8; size_t x_9; +x_8 = 1; +x_9 = lean_usize_add(x_2, x_8); +x_2 = x_9; +goto _start; +} +} +else +{ +uint8_t x_11; +x_11 = 0; +return x_11; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; +lean_inc(x_4); +x_10 = lean_array_push(x_1, x_4); +x_11 = lean_array_size(x_2); +x_12 = 0; +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1(x_4, x_11, x_12, x_2); +lean_dec(x_4); +x_14 = l_Lean_Elab_Mutual_withCommonTelescope_go___rarg(x_3, x_10, x_13, x_5, x_6, x_7, x_8, x_9); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_46; uint8_t x_47; +x_9 = lean_array_get_size(x_3); +x_46 = lean_unsigned_to_nat(0u); +x_47 = lean_nat_dec_lt(x_46, x_9); +if (x_47 == 0) +{ +lean_object* x_48; +x_48 = lean_box(0); +x_10 = x_48; +goto block_45; +} +else +{ +size_t x_49; size_t x_50; uint8_t x_51; +x_49 = 0; +x_50 = lean_usize_of_nat(x_9); +x_51 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3(x_3, x_49, x_50); +if (x_51 == 0) +{ +lean_object* x_52; +x_52 = lean_box(0); +x_10 = x_52; +goto block_45; +} +else +{ +lean_object* x_53; +lean_dec(x_9); +x_53 = lean_apply_7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +return x_53; +} +} +block_45: +{ +lean_object* x_11; uint8_t x_12; uint8_t x_13; lean_object* x_14; +lean_dec(x_10); +x_11 = lean_unsigned_to_nat(0u); +x_12 = lean_nat_dec_lt(x_11, x_9); +if (x_12 == 0) +{ +uint8_t x_31; +lean_dec(x_9); +x_31 = 1; +x_13 = x_31; +x_14 = x_8; +goto block_30; +} +else +{ +size_t x_32; size_t x_33; lean_object* x_34; +x_32 = 0; +x_33 = lean_usize_of_nat(x_9); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_34 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2(x_3, x_9, x_3, x_32, x_33, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_9); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; uint8_t x_36; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_unbox(x_35); +lean_dec(x_35); +if (x_36 == 0) +{ +lean_object* x_37; uint8_t x_38; +x_37 = lean_ctor_get(x_34, 1); +lean_inc(x_37); +lean_dec(x_34); +x_38 = 1; +x_13 = x_38; +x_14 = x_37; +goto block_30; +} +else +{ +lean_object* x_39; uint8_t x_40; +x_39 = lean_ctor_get(x_34, 1); +lean_inc(x_39); +lean_dec(x_34); +x_40 = 0; +x_13 = x_40; +x_14 = x_39; +goto block_30; +} +} +else +{ +uint8_t x_41; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_41 = !lean_is_exclusive(x_34); +if (x_41 == 0) +{ +return x_34; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_34, 0); +x_43 = lean_ctor_get(x_34, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_34); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +block_30: +{ +if (x_13 == 0) +{ +lean_object* x_15; +x_15 = lean_apply_7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_14); +return x_15; +} +else +{ +lean_object* x_16; +lean_inc(x_3); +x_16 = lean_alloc_closure((void*)(l_Lean_Elab_Mutual_withCommonTelescope_go___rarg___lambda__1), 9, 3); +lean_closure_set(x_16, 0, x_2); +lean_closure_set(x_16, 1, x_3); +lean_closure_set(x_16, 2, x_1); +if (x_12 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; +lean_dec(x_3); +x_17 = l_Lean_instInhabitedExpr; +x_18 = l_outOfBounds___rarg(x_17); +x_19 = l_Lean_Expr_bindingName_x21(x_18); +x_20 = l_Lean_Expr_binderInfo(x_18); +x_21 = l_Lean_Expr_bindingDomain_x21(x_18); +lean_dec(x_18); +x_22 = 0; +x_23 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_19, x_20, x_21, x_16, x_22, x_4, x_5, x_6, x_7, x_14); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; +x_24 = lean_array_fget(x_3, x_11); +lean_dec(x_3); +x_25 = l_Lean_Expr_bindingName_x21(x_24); +x_26 = l_Lean_Expr_binderInfo(x_24); +x_27 = l_Lean_Expr_bindingDomain_x21(x_24); +lean_dec(x_24); +x_28 = 0; +x_29 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_25, x_26, x_27, x_16, x_28, x_4, x_5, x_6, x_7, x_14); +return x_29; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope_go(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Mutual_withCommonTelescope_go___rarg), 8, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__1(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_12 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_13 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__2(x_1, x_2, x_3, x_11, x_12, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_withCommonTelescope_go___spec__3(x_1, x_4, x_5); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = lean_ctor_get(x_5, 5); +lean_inc(x_8); +lean_dec(x_5); +x_9 = 1; +x_10 = lean_usize_add(x_2, x_9); +x_11 = lean_array_uset(x_7, x_2, x_8); +x_2 = x_10; +x_3 = x_11; +goto _start; +} +} +} +static lean_object* _init_l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +size_t x_8; size_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_8 = lean_array_size(x_1); +x_9 = 0; +x_10 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1(x_8, x_9, x_1); +x_11 = l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1; +x_12 = l_Lean_Elab_Mutual_withCommonTelescope_go___rarg(x_2, x_11, x_10, x_3, x_4, x_5, x_6, x_7); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_withCommonTelescope(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Mutual_withCommonTelescope___rarg), 7, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_withCommonTelescope___spec__1(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_eq(x_3, x_4); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = lean_array_uget(x_2, x_3); +x_7 = lean_ctor_get(x_6, 3); +lean_inc(x_7); +lean_dec(x_6); +x_8 = l_Lean_Expr_isAppOf(x_1, x_7); +lean_dec(x_7); +if (x_8 == 0) +{ +size_t x_9; size_t x_10; +x_9 = 1; +x_10 = lean_usize_add(x_3, x_9); +x_3 = x_10; +goto _start; +} +else +{ +uint8_t x_12; +x_12 = 1; +return x_12; +} +} +else +{ +uint8_t x_13; +x_13 = 0; +return x_13; +} +} +} +static uint64_t _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1() { +_start: +{ +uint8_t x_1; uint64_t x_2; +x_1 = 2; +x_2 = l_Lean_Meta_TransparencyMode_toUInt64(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; +x_1 = 1; +x_2 = lean_box(x_1); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_7, x_6); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_array_uget(x_5, x_7); +x_17 = !lean_is_exclusive(x_8); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_18 = lean_ctor_get(x_8, 1); +x_19 = lean_ctor_get(x_8, 0); +lean_dec(x_19); +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +x_22 = lean_ctor_get(x_18, 2); +lean_inc(x_22); +x_23 = lean_nat_dec_lt(x_21, x_22); +if (x_23 == 0) +{ +lean_object* x_24; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_ctor_set(x_8, 0, x_4); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_8); +lean_ctor_set(x_24, 1, x_13); +return x_24; +} +else +{ +uint8_t x_25; +x_25 = !lean_is_exclusive(x_18); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_26 = lean_ctor_get(x_18, 2); +lean_dec(x_26); +x_27 = lean_ctor_get(x_18, 1); +lean_dec(x_27); +x_28 = lean_ctor_get(x_18, 0); +lean_dec(x_28); +x_29 = lean_array_fget(x_20, x_21); +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_add(x_21, x_30); +lean_dec(x_21); +lean_ctor_set(x_18, 1, x_31); +x_32 = lean_ctor_get(x_9, 0); +lean_inc(x_32); +x_33 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 8); +x_34 = lean_ctor_get(x_9, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_9, 2); +lean_inc(x_35); +x_36 = lean_ctor_get(x_9, 3); +lean_inc(x_36); +x_37 = lean_ctor_get(x_9, 4); +lean_inc(x_37); +x_38 = lean_ctor_get(x_9, 5); +lean_inc(x_38); +x_39 = lean_ctor_get(x_9, 6); +lean_inc(x_39); +x_40 = !lean_is_exclusive(x_32); +if (x_40 == 0) +{ +uint8_t x_41; uint8_t x_42; uint8_t x_43; uint8_t x_44; uint8_t x_45; uint8_t x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; uint8_t x_55; uint8_t x_56; uint8_t x_57; uint8_t x_58; uint64_t x_59; uint8_t x_60; lean_object* x_61; uint64_t x_62; uint64_t x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; lean_object* x_67; lean_object* x_68; +x_41 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_42 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_43 = lean_ctor_get_uint8(x_32, 0); +x_44 = lean_ctor_get_uint8(x_32, 1); +x_45 = lean_ctor_get_uint8(x_32, 2); +x_46 = lean_ctor_get_uint8(x_32, 3); +x_47 = lean_ctor_get_uint8(x_32, 4); +x_48 = lean_ctor_get_uint8(x_32, 5); +x_49 = lean_ctor_get_uint8(x_32, 7); +x_50 = lean_ctor_get_uint8(x_32, 8); +x_51 = lean_ctor_get_uint8(x_32, 10); +x_52 = lean_ctor_get_uint8(x_32, 11); +x_53 = lean_ctor_get_uint8(x_32, 12); +x_54 = lean_ctor_get_uint8(x_32, 13); +x_55 = lean_ctor_get_uint8(x_32, 14); +x_56 = lean_ctor_get_uint8(x_32, 15); +x_57 = lean_ctor_get_uint8(x_32, 16); +x_58 = 0; +lean_ctor_set_uint8(x_32, 6, x_58); +x_59 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_32); +lean_dec(x_32); +x_60 = 2; +x_61 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_61, 0, x_43); +lean_ctor_set_uint8(x_61, 1, x_44); +lean_ctor_set_uint8(x_61, 2, x_45); +lean_ctor_set_uint8(x_61, 3, x_46); +lean_ctor_set_uint8(x_61, 4, x_47); +lean_ctor_set_uint8(x_61, 5, x_48); +lean_ctor_set_uint8(x_61, 6, x_58); +lean_ctor_set_uint8(x_61, 7, x_49); +lean_ctor_set_uint8(x_61, 8, x_50); +lean_ctor_set_uint8(x_61, 9, x_60); +lean_ctor_set_uint8(x_61, 10, x_51); +lean_ctor_set_uint8(x_61, 11, x_52); +lean_ctor_set_uint8(x_61, 12, x_53); +lean_ctor_set_uint8(x_61, 13, x_54); +lean_ctor_set_uint8(x_61, 14, x_55); +lean_ctor_set_uint8(x_61, 15, x_56); +lean_ctor_set_uint8(x_61, 16, x_57); +x_62 = 2; +x_63 = lean_uint64_shift_right(x_59, x_62); +x_64 = lean_uint64_shift_left(x_63, x_62); +x_65 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1; +x_66 = lean_uint64_lor(x_64, x_65); +x_67 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_67, 0, x_61); +lean_ctor_set(x_67, 1, x_34); +lean_ctor_set(x_67, 2, x_35); +lean_ctor_set(x_67, 3, x_36); +lean_ctor_set(x_67, 4, x_37); +lean_ctor_set(x_67, 5, x_38); +lean_ctor_set(x_67, 6, x_39); +lean_ctor_set_uint64(x_67, sizeof(void*)*7, x_66); +lean_ctor_set_uint8(x_67, sizeof(void*)*7 + 8, x_33); +lean_ctor_set_uint8(x_67, sizeof(void*)*7 + 9, x_41); +lean_ctor_set_uint8(x_67, sizeof(void*)*7 + 10, x_42); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_68 = l_Lean_Meta_isExprDefEq(x_16, x_29, x_67, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; uint8_t x_70; +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_unbox(x_69); +lean_dec(x_69); +if (x_70 == 0) +{ +uint8_t x_71; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_71 = !lean_is_exclusive(x_68); +if (x_71 == 0) +{ +lean_object* x_72; lean_object* x_73; +x_72 = lean_ctor_get(x_68, 0); +lean_dec(x_72); +x_73 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +lean_ctor_set(x_8, 0, x_73); +lean_ctor_set(x_68, 0, x_8); +return x_68; +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_68, 1); +lean_inc(x_74); +lean_dec(x_68); +x_75 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +lean_ctor_set(x_8, 0, x_75); +x_76 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_76, 0, x_8); +lean_ctor_set(x_76, 1, x_74); +return x_76; +} +} +else +{ +lean_object* x_77; size_t x_78; size_t x_79; +x_77 = lean_ctor_get(x_68, 1); +lean_inc(x_77); +lean_dec(x_68); +lean_inc(x_4); +lean_ctor_set(x_8, 0, x_4); +x_78 = 1; +x_79 = lean_usize_add(x_7, x_78); +x_7 = x_79; +x_13 = x_77; +goto _start; +} +} +else +{ +uint8_t x_81; +lean_dec(x_18); +lean_free_object(x_8); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_81 = !lean_is_exclusive(x_68); +if (x_81 == 0) +{ +return x_68; +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_68, 0); +x_83 = lean_ctor_get(x_68, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_68); +x_84 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +return x_84; +} +} +} +else +{ +uint8_t x_85; uint8_t x_86; uint8_t x_87; uint8_t x_88; uint8_t x_89; uint8_t x_90; uint8_t x_91; uint8_t x_92; uint8_t x_93; uint8_t x_94; uint8_t x_95; uint8_t x_96; uint8_t x_97; uint8_t x_98; uint8_t x_99; uint8_t x_100; uint8_t x_101; uint8_t x_102; uint8_t x_103; lean_object* x_104; uint64_t x_105; uint8_t x_106; lean_object* x_107; uint64_t x_108; uint64_t x_109; uint64_t x_110; uint64_t x_111; uint64_t x_112; lean_object* x_113; lean_object* x_114; +x_85 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_86 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_87 = lean_ctor_get_uint8(x_32, 0); +x_88 = lean_ctor_get_uint8(x_32, 1); +x_89 = lean_ctor_get_uint8(x_32, 2); +x_90 = lean_ctor_get_uint8(x_32, 3); +x_91 = lean_ctor_get_uint8(x_32, 4); +x_92 = lean_ctor_get_uint8(x_32, 5); +x_93 = lean_ctor_get_uint8(x_32, 7); +x_94 = lean_ctor_get_uint8(x_32, 8); +x_95 = lean_ctor_get_uint8(x_32, 9); +x_96 = lean_ctor_get_uint8(x_32, 10); +x_97 = lean_ctor_get_uint8(x_32, 11); +x_98 = lean_ctor_get_uint8(x_32, 12); +x_99 = lean_ctor_get_uint8(x_32, 13); +x_100 = lean_ctor_get_uint8(x_32, 14); +x_101 = lean_ctor_get_uint8(x_32, 15); +x_102 = lean_ctor_get_uint8(x_32, 16); +lean_dec(x_32); +x_103 = 0; +x_104 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_104, 0, x_87); +lean_ctor_set_uint8(x_104, 1, x_88); +lean_ctor_set_uint8(x_104, 2, x_89); +lean_ctor_set_uint8(x_104, 3, x_90); +lean_ctor_set_uint8(x_104, 4, x_91); +lean_ctor_set_uint8(x_104, 5, x_92); +lean_ctor_set_uint8(x_104, 6, x_103); +lean_ctor_set_uint8(x_104, 7, x_93); +lean_ctor_set_uint8(x_104, 8, x_94); +lean_ctor_set_uint8(x_104, 9, x_95); +lean_ctor_set_uint8(x_104, 10, x_96); +lean_ctor_set_uint8(x_104, 11, x_97); +lean_ctor_set_uint8(x_104, 12, x_98); +lean_ctor_set_uint8(x_104, 13, x_99); +lean_ctor_set_uint8(x_104, 14, x_100); +lean_ctor_set_uint8(x_104, 15, x_101); +lean_ctor_set_uint8(x_104, 16, x_102); +x_105 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_104); +lean_dec(x_104); +x_106 = 2; +x_107 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_107, 0, x_87); +lean_ctor_set_uint8(x_107, 1, x_88); +lean_ctor_set_uint8(x_107, 2, x_89); +lean_ctor_set_uint8(x_107, 3, x_90); +lean_ctor_set_uint8(x_107, 4, x_91); +lean_ctor_set_uint8(x_107, 5, x_92); +lean_ctor_set_uint8(x_107, 6, x_103); +lean_ctor_set_uint8(x_107, 7, x_93); +lean_ctor_set_uint8(x_107, 8, x_94); +lean_ctor_set_uint8(x_107, 9, x_106); +lean_ctor_set_uint8(x_107, 10, x_96); +lean_ctor_set_uint8(x_107, 11, x_97); +lean_ctor_set_uint8(x_107, 12, x_98); +lean_ctor_set_uint8(x_107, 13, x_99); +lean_ctor_set_uint8(x_107, 14, x_100); +lean_ctor_set_uint8(x_107, 15, x_101); +lean_ctor_set_uint8(x_107, 16, x_102); +x_108 = 2; +x_109 = lean_uint64_shift_right(x_105, x_108); +x_110 = lean_uint64_shift_left(x_109, x_108); +x_111 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1; +x_112 = lean_uint64_lor(x_110, x_111); +x_113 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_113, 0, x_107); +lean_ctor_set(x_113, 1, x_34); +lean_ctor_set(x_113, 2, x_35); +lean_ctor_set(x_113, 3, x_36); +lean_ctor_set(x_113, 4, x_37); +lean_ctor_set(x_113, 5, x_38); +lean_ctor_set(x_113, 6, x_39); +lean_ctor_set_uint64(x_113, sizeof(void*)*7, x_112); +lean_ctor_set_uint8(x_113, sizeof(void*)*7 + 8, x_33); +lean_ctor_set_uint8(x_113, sizeof(void*)*7 + 9, x_85); +lean_ctor_set_uint8(x_113, sizeof(void*)*7 + 10, x_86); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_114 = l_Lean_Meta_isExprDefEq(x_16, x_29, x_113, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_114) == 0) +{ +lean_object* x_115; uint8_t x_116; +x_115 = lean_ctor_get(x_114, 0); +lean_inc(x_115); +x_116 = lean_unbox(x_115); +lean_dec(x_115); +if (x_116 == 0) +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_117 = lean_ctor_get(x_114, 1); +lean_inc(x_117); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + x_118 = x_114; +} else { + lean_dec_ref(x_114); + x_118 = lean_box(0); +} +x_119 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +lean_ctor_set(x_8, 0, x_119); +if (lean_is_scalar(x_118)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_118; +} +lean_ctor_set(x_120, 0, x_8); +lean_ctor_set(x_120, 1, x_117); +return x_120; +} +else +{ +lean_object* x_121; size_t x_122; size_t x_123; +x_121 = lean_ctor_get(x_114, 1); +lean_inc(x_121); +lean_dec(x_114); +lean_inc(x_4); +lean_ctor_set(x_8, 0, x_4); +x_122 = 1; +x_123 = lean_usize_add(x_7, x_122); +x_7 = x_123; +x_13 = x_121; +goto _start; +} +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; +lean_dec(x_18); +lean_free_object(x_8); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_125 = lean_ctor_get(x_114, 0); +lean_inc(x_125); +x_126 = lean_ctor_get(x_114, 1); +lean_inc(x_126); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + x_127 = x_114; +} else { + lean_dec_ref(x_114); + x_127 = lean_box(0); +} +if (lean_is_scalar(x_127)) { + x_128 = lean_alloc_ctor(1, 2, 0); +} else { + x_128 = x_127; +} +lean_ctor_set(x_128, 0, x_125); +lean_ctor_set(x_128, 1, x_126); +return x_128; +} +} +} +else +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; uint8_t x_141; uint8_t x_142; uint8_t x_143; uint8_t x_144; uint8_t x_145; uint8_t x_146; uint8_t x_147; uint8_t x_148; uint8_t x_149; uint8_t x_150; uint8_t x_151; uint8_t x_152; uint8_t x_153; uint8_t x_154; uint8_t x_155; uint8_t x_156; uint8_t x_157; uint8_t x_158; lean_object* x_159; uint8_t x_160; lean_object* x_161; uint64_t x_162; uint8_t x_163; lean_object* x_164; uint64_t x_165; uint64_t x_166; uint64_t x_167; uint64_t x_168; uint64_t x_169; lean_object* x_170; lean_object* x_171; +lean_dec(x_18); +x_129 = lean_array_fget(x_20, x_21); +x_130 = lean_unsigned_to_nat(1u); +x_131 = lean_nat_add(x_21, x_130); +lean_dec(x_21); +x_132 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_132, 0, x_20); +lean_ctor_set(x_132, 1, x_131); +lean_ctor_set(x_132, 2, x_22); +x_133 = lean_ctor_get(x_9, 0); +lean_inc(x_133); +x_134 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 8); +x_135 = lean_ctor_get(x_9, 1); +lean_inc(x_135); +x_136 = lean_ctor_get(x_9, 2); +lean_inc(x_136); +x_137 = lean_ctor_get(x_9, 3); +lean_inc(x_137); +x_138 = lean_ctor_get(x_9, 4); +lean_inc(x_138); +x_139 = lean_ctor_get(x_9, 5); +lean_inc(x_139); +x_140 = lean_ctor_get(x_9, 6); +lean_inc(x_140); +x_141 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_142 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_143 = lean_ctor_get_uint8(x_133, 0); +x_144 = lean_ctor_get_uint8(x_133, 1); +x_145 = lean_ctor_get_uint8(x_133, 2); +x_146 = lean_ctor_get_uint8(x_133, 3); +x_147 = lean_ctor_get_uint8(x_133, 4); +x_148 = lean_ctor_get_uint8(x_133, 5); +x_149 = lean_ctor_get_uint8(x_133, 7); +x_150 = lean_ctor_get_uint8(x_133, 8); +x_151 = lean_ctor_get_uint8(x_133, 9); +x_152 = lean_ctor_get_uint8(x_133, 10); +x_153 = lean_ctor_get_uint8(x_133, 11); +x_154 = lean_ctor_get_uint8(x_133, 12); +x_155 = lean_ctor_get_uint8(x_133, 13); +x_156 = lean_ctor_get_uint8(x_133, 14); +x_157 = lean_ctor_get_uint8(x_133, 15); +x_158 = lean_ctor_get_uint8(x_133, 16); +if (lean_is_exclusive(x_133)) { + x_159 = x_133; +} else { + lean_dec_ref(x_133); + x_159 = lean_box(0); +} +x_160 = 0; +if (lean_is_scalar(x_159)) { + x_161 = lean_alloc_ctor(0, 0, 17); +} else { + x_161 = x_159; +} +lean_ctor_set_uint8(x_161, 0, x_143); +lean_ctor_set_uint8(x_161, 1, x_144); +lean_ctor_set_uint8(x_161, 2, x_145); +lean_ctor_set_uint8(x_161, 3, x_146); +lean_ctor_set_uint8(x_161, 4, x_147); +lean_ctor_set_uint8(x_161, 5, x_148); +lean_ctor_set_uint8(x_161, 6, x_160); +lean_ctor_set_uint8(x_161, 7, x_149); +lean_ctor_set_uint8(x_161, 8, x_150); +lean_ctor_set_uint8(x_161, 9, x_151); +lean_ctor_set_uint8(x_161, 10, x_152); +lean_ctor_set_uint8(x_161, 11, x_153); +lean_ctor_set_uint8(x_161, 12, x_154); +lean_ctor_set_uint8(x_161, 13, x_155); +lean_ctor_set_uint8(x_161, 14, x_156); +lean_ctor_set_uint8(x_161, 15, x_157); +lean_ctor_set_uint8(x_161, 16, x_158); +x_162 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_161); +lean_dec(x_161); +x_163 = 2; +x_164 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_164, 0, x_143); +lean_ctor_set_uint8(x_164, 1, x_144); +lean_ctor_set_uint8(x_164, 2, x_145); +lean_ctor_set_uint8(x_164, 3, x_146); +lean_ctor_set_uint8(x_164, 4, x_147); +lean_ctor_set_uint8(x_164, 5, x_148); +lean_ctor_set_uint8(x_164, 6, x_160); +lean_ctor_set_uint8(x_164, 7, x_149); +lean_ctor_set_uint8(x_164, 8, x_150); +lean_ctor_set_uint8(x_164, 9, x_163); +lean_ctor_set_uint8(x_164, 10, x_152); +lean_ctor_set_uint8(x_164, 11, x_153); +lean_ctor_set_uint8(x_164, 12, x_154); +lean_ctor_set_uint8(x_164, 13, x_155); +lean_ctor_set_uint8(x_164, 14, x_156); +lean_ctor_set_uint8(x_164, 15, x_157); +lean_ctor_set_uint8(x_164, 16, x_158); +x_165 = 2; +x_166 = lean_uint64_shift_right(x_162, x_165); +x_167 = lean_uint64_shift_left(x_166, x_165); +x_168 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1; +x_169 = lean_uint64_lor(x_167, x_168); +x_170 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_170, 0, x_164); +lean_ctor_set(x_170, 1, x_135); +lean_ctor_set(x_170, 2, x_136); +lean_ctor_set(x_170, 3, x_137); +lean_ctor_set(x_170, 4, x_138); +lean_ctor_set(x_170, 5, x_139); +lean_ctor_set(x_170, 6, x_140); +lean_ctor_set_uint64(x_170, sizeof(void*)*7, x_169); +lean_ctor_set_uint8(x_170, sizeof(void*)*7 + 8, x_134); +lean_ctor_set_uint8(x_170, sizeof(void*)*7 + 9, x_141); +lean_ctor_set_uint8(x_170, sizeof(void*)*7 + 10, x_142); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_171 = l_Lean_Meta_isExprDefEq(x_16, x_129, x_170, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_171) == 0) +{ +lean_object* x_172; uint8_t x_173; +x_172 = lean_ctor_get(x_171, 0); +lean_inc(x_172); +x_173 = lean_unbox(x_172); +lean_dec(x_172); +if (x_173 == 0) +{ +lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_174 = lean_ctor_get(x_171, 1); +lean_inc(x_174); +if (lean_is_exclusive(x_171)) { + lean_ctor_release(x_171, 0); + lean_ctor_release(x_171, 1); + x_175 = x_171; +} else { + lean_dec_ref(x_171); + x_175 = lean_box(0); +} +x_176 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +lean_ctor_set(x_8, 1, x_132); +lean_ctor_set(x_8, 0, x_176); +if (lean_is_scalar(x_175)) { + x_177 = lean_alloc_ctor(0, 2, 0); +} else { + x_177 = x_175; +} +lean_ctor_set(x_177, 0, x_8); +lean_ctor_set(x_177, 1, x_174); +return x_177; +} +else +{ +lean_object* x_178; size_t x_179; size_t x_180; +x_178 = lean_ctor_get(x_171, 1); +lean_inc(x_178); +lean_dec(x_171); +lean_inc(x_4); +lean_ctor_set(x_8, 1, x_132); +lean_ctor_set(x_8, 0, x_4); +x_179 = 1; +x_180 = lean_usize_add(x_7, x_179); +x_7 = x_180; +x_13 = x_178; +goto _start; +} +} +else +{ +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; +lean_dec(x_132); +lean_free_object(x_8); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_182 = lean_ctor_get(x_171, 0); +lean_inc(x_182); +x_183 = lean_ctor_get(x_171, 1); +lean_inc(x_183); +if (lean_is_exclusive(x_171)) { + lean_ctor_release(x_171, 0); + lean_ctor_release(x_171, 1); + x_184 = x_171; +} else { + lean_dec_ref(x_171); + x_184 = lean_box(0); +} +if (lean_is_scalar(x_184)) { + x_185 = lean_alloc_ctor(1, 2, 0); +} else { + x_185 = x_184; +} +lean_ctor_set(x_185, 0, x_182); +lean_ctor_set(x_185, 1, x_183); +return x_185; +} +} +} +} +else +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; uint8_t x_190; +x_186 = lean_ctor_get(x_8, 1); +lean_inc(x_186); +lean_dec(x_8); +x_187 = lean_ctor_get(x_186, 0); +lean_inc(x_187); +x_188 = lean_ctor_get(x_186, 1); +lean_inc(x_188); +x_189 = lean_ctor_get(x_186, 2); +lean_inc(x_189); +x_190 = lean_nat_dec_lt(x_188, x_189); +if (x_190 == 0) +{ +lean_object* x_191; lean_object* x_192; +lean_dec(x_189); +lean_dec(x_188); +lean_dec(x_187); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_191 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_191, 0, x_4); +lean_ctor_set(x_191, 1, x_186); +x_192 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_192, 0, x_191); +lean_ctor_set(x_192, 1, x_13); +return x_192; +} +else +{ +lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; uint8_t x_206; uint8_t x_207; uint8_t x_208; uint8_t x_209; uint8_t x_210; uint8_t x_211; uint8_t x_212; uint8_t x_213; uint8_t x_214; uint8_t x_215; uint8_t x_216; uint8_t x_217; uint8_t x_218; uint8_t x_219; uint8_t x_220; uint8_t x_221; uint8_t x_222; uint8_t x_223; lean_object* x_224; uint8_t x_225; lean_object* x_226; uint64_t x_227; uint8_t x_228; lean_object* x_229; uint64_t x_230; uint64_t x_231; uint64_t x_232; uint64_t x_233; uint64_t x_234; lean_object* x_235; lean_object* x_236; +if (lean_is_exclusive(x_186)) { + lean_ctor_release(x_186, 0); + lean_ctor_release(x_186, 1); + lean_ctor_release(x_186, 2); + x_193 = x_186; +} else { + lean_dec_ref(x_186); + x_193 = lean_box(0); +} +x_194 = lean_array_fget(x_187, x_188); +x_195 = lean_unsigned_to_nat(1u); +x_196 = lean_nat_add(x_188, x_195); +lean_dec(x_188); +if (lean_is_scalar(x_193)) { + x_197 = lean_alloc_ctor(0, 3, 0); +} else { + x_197 = x_193; +} +lean_ctor_set(x_197, 0, x_187); +lean_ctor_set(x_197, 1, x_196); +lean_ctor_set(x_197, 2, x_189); +x_198 = lean_ctor_get(x_9, 0); +lean_inc(x_198); +x_199 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 8); +x_200 = lean_ctor_get(x_9, 1); +lean_inc(x_200); +x_201 = lean_ctor_get(x_9, 2); +lean_inc(x_201); +x_202 = lean_ctor_get(x_9, 3); +lean_inc(x_202); +x_203 = lean_ctor_get(x_9, 4); +lean_inc(x_203); +x_204 = lean_ctor_get(x_9, 5); +lean_inc(x_204); +x_205 = lean_ctor_get(x_9, 6); +lean_inc(x_205); +x_206 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_207 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_208 = lean_ctor_get_uint8(x_198, 0); +x_209 = lean_ctor_get_uint8(x_198, 1); +x_210 = lean_ctor_get_uint8(x_198, 2); +x_211 = lean_ctor_get_uint8(x_198, 3); +x_212 = lean_ctor_get_uint8(x_198, 4); +x_213 = lean_ctor_get_uint8(x_198, 5); +x_214 = lean_ctor_get_uint8(x_198, 7); +x_215 = lean_ctor_get_uint8(x_198, 8); +x_216 = lean_ctor_get_uint8(x_198, 9); +x_217 = lean_ctor_get_uint8(x_198, 10); +x_218 = lean_ctor_get_uint8(x_198, 11); +x_219 = lean_ctor_get_uint8(x_198, 12); +x_220 = lean_ctor_get_uint8(x_198, 13); +x_221 = lean_ctor_get_uint8(x_198, 14); +x_222 = lean_ctor_get_uint8(x_198, 15); +x_223 = lean_ctor_get_uint8(x_198, 16); +if (lean_is_exclusive(x_198)) { + x_224 = x_198; +} else { + lean_dec_ref(x_198); + x_224 = lean_box(0); +} +x_225 = 0; +if (lean_is_scalar(x_224)) { + x_226 = lean_alloc_ctor(0, 0, 17); +} else { + x_226 = x_224; +} +lean_ctor_set_uint8(x_226, 0, x_208); +lean_ctor_set_uint8(x_226, 1, x_209); +lean_ctor_set_uint8(x_226, 2, x_210); +lean_ctor_set_uint8(x_226, 3, x_211); +lean_ctor_set_uint8(x_226, 4, x_212); +lean_ctor_set_uint8(x_226, 5, x_213); +lean_ctor_set_uint8(x_226, 6, x_225); +lean_ctor_set_uint8(x_226, 7, x_214); +lean_ctor_set_uint8(x_226, 8, x_215); +lean_ctor_set_uint8(x_226, 9, x_216); +lean_ctor_set_uint8(x_226, 10, x_217); +lean_ctor_set_uint8(x_226, 11, x_218); +lean_ctor_set_uint8(x_226, 12, x_219); +lean_ctor_set_uint8(x_226, 13, x_220); +lean_ctor_set_uint8(x_226, 14, x_221); +lean_ctor_set_uint8(x_226, 15, x_222); +lean_ctor_set_uint8(x_226, 16, x_223); +x_227 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_226); +lean_dec(x_226); +x_228 = 2; +x_229 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_229, 0, x_208); +lean_ctor_set_uint8(x_229, 1, x_209); +lean_ctor_set_uint8(x_229, 2, x_210); +lean_ctor_set_uint8(x_229, 3, x_211); +lean_ctor_set_uint8(x_229, 4, x_212); +lean_ctor_set_uint8(x_229, 5, x_213); +lean_ctor_set_uint8(x_229, 6, x_225); +lean_ctor_set_uint8(x_229, 7, x_214); +lean_ctor_set_uint8(x_229, 8, x_215); +lean_ctor_set_uint8(x_229, 9, x_228); +lean_ctor_set_uint8(x_229, 10, x_217); +lean_ctor_set_uint8(x_229, 11, x_218); +lean_ctor_set_uint8(x_229, 12, x_219); +lean_ctor_set_uint8(x_229, 13, x_220); +lean_ctor_set_uint8(x_229, 14, x_221); +lean_ctor_set_uint8(x_229, 15, x_222); +lean_ctor_set_uint8(x_229, 16, x_223); +x_230 = 2; +x_231 = lean_uint64_shift_right(x_227, x_230); +x_232 = lean_uint64_shift_left(x_231, x_230); +x_233 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1; +x_234 = lean_uint64_lor(x_232, x_233); +x_235 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_235, 0, x_229); +lean_ctor_set(x_235, 1, x_200); +lean_ctor_set(x_235, 2, x_201); +lean_ctor_set(x_235, 3, x_202); +lean_ctor_set(x_235, 4, x_203); +lean_ctor_set(x_235, 5, x_204); +lean_ctor_set(x_235, 6, x_205); +lean_ctor_set_uint64(x_235, sizeof(void*)*7, x_234); +lean_ctor_set_uint8(x_235, sizeof(void*)*7 + 8, x_199); +lean_ctor_set_uint8(x_235, sizeof(void*)*7 + 9, x_206); +lean_ctor_set_uint8(x_235, sizeof(void*)*7 + 10, x_207); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_236 = l_Lean_Meta_isExprDefEq(x_16, x_194, x_235, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_236) == 0) +{ +lean_object* x_237; uint8_t x_238; +x_237 = lean_ctor_get(x_236, 0); +lean_inc(x_237); +x_238 = lean_unbox(x_237); +lean_dec(x_237); +if (x_238 == 0) +{ +lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_239 = lean_ctor_get(x_236, 1); +lean_inc(x_239); +if (lean_is_exclusive(x_236)) { + lean_ctor_release(x_236, 0); + lean_ctor_release(x_236, 1); + x_240 = x_236; +} else { + lean_dec_ref(x_236); + x_240 = lean_box(0); +} +x_241 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2; +x_242 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_242, 0, x_241); +lean_ctor_set(x_242, 1, x_197); +if (lean_is_scalar(x_240)) { + x_243 = lean_alloc_ctor(0, 2, 0); +} else { + x_243 = x_240; +} +lean_ctor_set(x_243, 0, x_242); +lean_ctor_set(x_243, 1, x_239); +return x_243; +} +else +{ +lean_object* x_244; lean_object* x_245; size_t x_246; size_t x_247; +x_244 = lean_ctor_get(x_236, 1); +lean_inc(x_244); +lean_dec(x_236); +lean_inc(x_4); +x_245 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_245, 0, x_4); +lean_ctor_set(x_245, 1, x_197); +x_246 = 1; +x_247 = lean_usize_add(x_7, x_246); +x_7 = x_247; +x_8 = x_245; +x_13 = x_244; +goto _start; +} +} +else +{ +lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; +lean_dec(x_197); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_249 = lean_ctor_get(x_236, 0); +lean_inc(x_249); +x_250 = lean_ctor_get(x_236, 1); +lean_inc(x_250); +if (lean_is_exclusive(x_236)) { + lean_ctor_release(x_236, 0); + lean_ctor_release(x_236, 1); + x_251 = x_236; +} else { + lean_dec_ref(x_236); + x_251 = lean_box(0); +} +if (lean_is_scalar(x_251)) { + x_252 = lean_alloc_ctor(1, 2, 0); +} else { + x_252 = x_251; +} +lean_ctor_set(x_252, 0, x_249); +lean_ctor_set(x_252, 1, x_250); +return x_252; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; lean_object* x_8; lean_object* x_9; +x_7 = 0; +x_8 = lean_box(x_7); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_6); +return x_9; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_levelZero; +x_2 = l_Lean_Expr_sort___override(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1___boxed), 6, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_array_get_size(x_1); +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_nat_dec_lt(x_14, x_13); +if (x_15 == 0) +{ +uint8_t x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +x_16 = 1; +x_17 = lean_box(x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_12); +return x_18; +} +else +{ +size_t x_19; size_t x_20; uint8_t x_21; +x_19 = 0; +x_20 = lean_usize_of_nat(x_13); +lean_dec(x_13); +x_21 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1(x_7, x_1, x_19, x_20); +if (x_21 == 0) +{ +uint8_t x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +x_22 = 1; +x_23 = lean_box(x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_12); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_25 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_7, x_14); +x_26 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1; +lean_inc(x_25); +x_27 = lean_mk_array(x_25, x_26); +x_28 = lean_unsigned_to_nat(1u); +x_29 = lean_nat_sub(x_25, x_28); +lean_dec(x_25); +x_30 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_7, x_27, x_29); +x_54 = lean_st_ref_take(x_6, x_12); +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_54, 1); +lean_inc(x_56); +lean_dec(x_54); +x_57 = lean_array_get_size(x_30); +x_58 = lean_nat_dec_le(x_57, x_55); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +lean_dec(x_57); +x_59 = lean_st_ref_set(x_6, x_55, x_56); +x_60 = lean_ctor_get(x_59, 1); +lean_inc(x_60); +lean_dec(x_59); +x_31 = x_60; +goto block_53; +} +else +{ +lean_object* x_61; lean_object* x_62; +lean_dec(x_55); +x_61 = lean_st_ref_set(x_6, x_57, x_56); +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_31 = x_62; +goto block_53; +} +block_53: +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; size_t x_35; lean_object* x_36; +x_32 = l_Array_toSubarray___rarg(x_2, x_14, x_3); +x_33 = lean_box(0); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +x_35 = lean_array_size(x_30); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2(x_4, x_5, x_30, x_33, x_30, x_35, x_19, x_34, x_8, x_9, x_10, x_11, x_31); +lean_dec(x_30); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +lean_dec(x_36); +x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2; +x_41 = lean_box(0); +x_42 = lean_apply_6(x_40, x_41, x_8, x_9, x_10, x_11, x_39); +return x_42; +} +else +{ +uint8_t x_43; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +x_43 = !lean_is_exclusive(x_36); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_36, 0); +lean_dec(x_44); +x_45 = lean_ctor_get(x_38, 0); +lean_inc(x_45); +lean_dec(x_38); +lean_ctor_set(x_36, 0, x_45); +return x_36; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_36, 1); +lean_inc(x_46); +lean_dec(x_36); +x_47 = lean_ctor_get(x_38, 0); +lean_inc(x_47); +lean_dec(x_38); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +return x_48; +} +} +} +else +{ +uint8_t x_49; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +x_49 = !lean_is_exclusive(x_36); +if (x_49 == 0) +{ +return x_36; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_36, 0); +x_51 = lean_ctor_get(x_36, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_36); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Core_instMonadCoreM; +x_2 = l_ReaderT_instMonad___rarg(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1; +x_2 = l_ReaderT_instApplicativeOfMonad___rarg(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_instMonadControlTOfPure___rarg(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3; +x_15 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___boxed), 12, 6); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_2); +lean_closure_set(x_15, 2, x_3); +lean_closure_set(x_15, 3, x_4); +lean_closure_set(x_15, 4, x_14); +lean_closure_set(x_15, 5, x_5); +x_16 = l_Lean_Meta_forEachExpr_x27___at_Lean_Meta_setMVarUserNamesAt___spec__6(x_6, x_15, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_16, 0); +lean_dec(x_18); +x_19 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_19, 0, x_7); +lean_ctor_set(x_16, 0, x_19); +return x_16; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_dec(x_16); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, x_7); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_20); +return x_22; +} +} +else +{ +uint8_t x_23; +lean_dec(x_7); +x_23 = !lean_is_exclusive(x_16); +if (x_23 == 0) +{ +return x_16; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_16, 0); +x_25 = lean_ctor_get(x_16, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_16); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1; +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; +x_17 = lean_usize_dec_lt(x_10, x_9); +if (x_17 == 0) +{ +lean_object* x_18; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_11); +lean_ctor_set(x_18, 1, x_16); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_dec(x_11); +x_19 = lean_array_uget(x_8, x_10); +x_20 = lean_st_ref_get(x_5, x_16); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_22 = lean_ctor_get(x_20, 0); +x_23 = lean_ctor_get(x_20, 1); +x_24 = lean_unsigned_to_nat(0u); +x_25 = lean_nat_dec_eq(x_22, x_24); +lean_dec(x_22); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +lean_free_object(x_20); +x_26 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_7); +lean_inc(x_5); +lean_inc(x_6); +lean_inc(x_4); +lean_inc(x_2); +lean_inc(x_1); +x_27 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3(x_1, x_2, x_4, x_6, x_5, x_19, x_7, x_26, x_12, x_13, x_14, x_15, x_23); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_29 = !lean_is_exclusive(x_27); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_27, 0); +lean_dec(x_30); +x_31 = lean_ctor_get(x_28, 0); +lean_inc(x_31); +lean_dec(x_28); +lean_ctor_set(x_27, 0, x_31); +return x_27; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_27, 1); +lean_inc(x_32); +lean_dec(x_27); +x_33 = lean_ctor_get(x_28, 0); +lean_inc(x_33); +lean_dec(x_28); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; size_t x_37; size_t x_38; +x_35 = lean_ctor_get(x_27, 1); +lean_inc(x_35); +lean_dec(x_27); +x_36 = lean_ctor_get(x_28, 0); +lean_inc(x_36); +lean_dec(x_28); +x_37 = 1; +x_38 = lean_usize_add(x_10, x_37); +x_10 = x_38; +x_11 = x_36; +x_16 = x_35; +goto _start; +} +} +else +{ +uint8_t x_40; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_27); +if (x_40 == 0) +{ +return x_27; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_27, 0); +x_42 = lean_ctor_get(x_27, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_27); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +lean_object* x_44; +lean_dec(x_19); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2; +lean_ctor_set(x_20, 0, x_44); +return x_20; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_45 = lean_ctor_get(x_20, 0); +x_46 = lean_ctor_get(x_20, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_20); +x_47 = lean_unsigned_to_nat(0u); +x_48 = lean_nat_dec_eq(x_45, x_47); +lean_dec(x_45); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_7); +lean_inc(x_5); +lean_inc(x_6); +lean_inc(x_4); +lean_inc(x_2); +lean_inc(x_1); +x_50 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3(x_1, x_2, x_4, x_6, x_5, x_19, x_7, x_49, x_12, x_13, x_14, x_15, x_46); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +if (lean_is_exclusive(x_50)) { + lean_ctor_release(x_50, 0); + lean_ctor_release(x_50, 1); + x_53 = x_50; +} else { + lean_dec_ref(x_50); + x_53 = lean_box(0); +} +x_54 = lean_ctor_get(x_51, 0); +lean_inc(x_54); +lean_dec(x_51); +if (lean_is_scalar(x_53)) { + x_55 = lean_alloc_ctor(0, 2, 0); +} else { + x_55 = x_53; +} +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_52); +return x_55; +} +else +{ +lean_object* x_56; lean_object* x_57; size_t x_58; size_t x_59; +x_56 = lean_ctor_get(x_50, 1); +lean_inc(x_56); +lean_dec(x_50); +x_57 = lean_ctor_get(x_51, 0); +lean_inc(x_57); +lean_dec(x_51); +x_58 = 1; +x_59 = lean_usize_add(x_10, x_58); +x_10 = x_59; +x_11 = x_57; +x_16 = x_56; +goto _start; +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_61 = lean_ctor_get(x_50, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_50, 1); +lean_inc(x_62); +if (lean_is_exclusive(x_50)) { + lean_ctor_release(x_50, 0); + lean_ctor_release(x_50, 1); + x_63 = x_50; +} else { + lean_dec_ref(x_50); + x_63 = lean_box(0); +} +if (lean_is_scalar(x_63)) { + x_64 = lean_alloc_ctor(1, 2, 0); +} else { + x_64 = x_63; +} +lean_ctor_set(x_64, 0, x_61); +lean_ctor_set(x_64, 1, x_62); +return x_64; +} +} +else +{ +lean_object* x_65; lean_object* x_66; +lean_dec(x_19); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_65 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2; +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_46); +return x_66; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_st_ref_get(x_1, x_7); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +return x_8; +} +else +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_8, 1); +lean_inc(x_11); +lean_inc(x_10); +lean_dec(x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; +} +} +} +static lean_object* _init_l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; size_t x_14; size_t x_15; lean_object* x_16; lean_object* x_17; +x_9 = lean_array_get_size(x_2); +lean_inc(x_9); +x_10 = lean_st_mk_ref(x_9, x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_box(0); +x_14 = lean_array_size(x_3); +x_15 = 0; +x_16 = l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_11); +x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3(x_1, x_2, x_3, x_9, x_11, x_13, x_16, x_3, x_14, x_15, x_16, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_17, 1); +lean_inc(x_20); +lean_dec(x_17); +x_21 = lean_box(0); +x_22 = l_Lean_Elab_Mutual_getFixedPrefix___lambda__1(x_11, x_21, x_4, x_5, x_6, x_7, x_20); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_11); +return x_22; +} +else +{ +uint8_t x_23; +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_23 = !lean_is_exclusive(x_17); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_17, 0); +lean_dec(x_24); +x_25 = lean_ctor_get(x_19, 0); +lean_inc(x_25); +lean_dec(x_19); +lean_ctor_set(x_17, 0, x_25); +return x_17; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_dec(x_17); +x_27 = lean_ctor_get(x_19, 0); +lean_inc(x_27); +lean_dec(x_19); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +} +else +{ +uint8_t x_29; +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_29 = !lean_is_exclusive(x_17); +if (x_29 == 0) +{ +return x_17; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_17, 0); +x_31 = lean_ctor_get(x_17, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_17); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; +lean_inc(x_1); +x_7 = lean_alloc_closure((void*)(l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___boxed), 8, 1); +lean_closure_set(x_7, 0, x_1); +x_8 = l_Lean_Elab_Mutual_withCommonTelescope___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; uint8_t x_7; lean_object* x_8; +x_5 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_6 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_7 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_getFixedPrefix___spec__1(x_1, x_2, x_5, x_6); +lean_dec(x_2); +lean_dec(x_1); +x_8 = lean_box(x_7); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_15 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2(x_1, x_2, x_3, x_4, x_5, x_14, x_15, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +size_t x_17; size_t x_18; lean_object* x_19; +x_17 = lean_unbox_usize(x_9); +lean_dec(x_9); +x_18 = lean_unbox_usize(x_10); +lean_dec(x_10); +x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_17, x_18, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_8); +lean_dec(x_3); +return x_19; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Mutual_getFixedPrefix___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Mutual_getFixedPrefix___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_10 = lean_st_ref_get(x_8, x_9); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_ctor_get(x_11, 6); +lean_inc(x_13); +lean_dec(x_11); +x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*2); +lean_dec(x_13); +x_15 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_12); +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +lean_dec(x_15); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_17 = lean_apply_7(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_19); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_20, 0); +lean_dec(x_22); +lean_ctor_set(x_20, 0, x_18); +return x_20; +} +else +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_18); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_25 = lean_ctor_get(x_17, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_dec(x_17); +x_27 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_26); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_28 = !lean_is_exclusive(x_27); +if (x_28 == 0) +{ +lean_object* x_29; +x_29 = lean_ctor_get(x_27, 0); +lean_dec(x_29); +lean_ctor_set_tag(x_27, 1); +lean_ctor_set(x_27, 0, x_25); +return x_27; +} +else +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_27, 1); +lean_inc(x_30); +lean_dec(x_27); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_25); +lean_ctor_set(x_31, 1, x_30); +return x_31; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; +x_13 = lean_usize_dec_eq(x_3, x_4); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; +lean_dec(x_5); +x_14 = lean_array_uget(x_2, x_3); +x_15 = 0; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_16 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_14, x_15, x_1, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = 1; +x_20 = lean_usize_add(x_3, x_19); +x_3 = x_20; +x_5 = x_17; +x_12 = x_18; +goto _start; +} +else +{ +uint8_t x_22; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_22 = !lean_is_exclusive(x_16); +if (x_22 == 0) +{ +return x_16; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_16, 0); +x_24 = lean_ctor_get(x_16, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_16); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +else +{ +lean_object* x_26; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_5); +lean_ctor_set(x_26, 1, x_12); +return x_26; +} +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("implemented_by", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; uint8_t x_4; +x_2 = lean_ctor_get(x_1, 0); +x_3 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2; +x_4 = lean_name_eq(x_2, x_3); +if (x_4 == 0) +{ +uint8_t x_5; +x_5 = 1; +return x_5; +} +else +{ +uint8_t x_6; +x_6 = 0; +return x_6; +} +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_maxRecDepth; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(lean_object* x_1, uint8_t x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_14); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_14, 4); +lean_dec(x_18); +x_19 = lean_ctor_get(x_14, 2); +lean_dec(x_19); +x_20 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1; +x_21 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_20); +lean_ctor_set(x_14, 4, x_21); +lean_ctor_set(x_14, 2, x_1); +lean_ctor_set_uint8(x_14, sizeof(void*)*12, x_2); +if (x_3 == 0) +{ +lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_4); +lean_ctor_set(x_22, 1, x_5); +x_23 = 0; +x_24 = lean_box(x_23); +x_25 = lean_alloc_closure((void*)(l_Lean_Elab_addNonRec___boxed), 10, 3); +lean_closure_set(x_25, 0, x_6); +lean_closure_set(x_25, 1, x_24); +lean_closure_set(x_25, 2, x_22); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_26 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1(x_23, x_25, x_7, x_8, x_9, x_10, x_14, x_15, x_16); +if (lean_obj_tag(x_26) == 0) +{ +uint8_t x_27; +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_28 = lean_ctor_get(x_26, 1); +x_29 = lean_ctor_get(x_26, 0); +lean_dec(x_29); +x_30 = lean_array_get_size(x_11); +x_31 = lean_unsigned_to_nat(0u); +x_32 = lean_nat_dec_lt(x_31, x_30); +if (x_32 == 0) +{ +lean_object* x_33; +lean_dec(x_30); +lean_dec(x_14); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_33 = lean_box(0); +lean_ctor_set(x_26, 0, x_33); +return x_26; +} +else +{ +uint8_t x_34; +x_34 = lean_nat_dec_le(x_30, x_30); +if (x_34 == 0) +{ +lean_object* x_35; +lean_dec(x_30); +lean_dec(x_14); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_35 = lean_box(0); +lean_ctor_set(x_26, 0, x_35); +return x_26; +} +else +{ +size_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; +lean_free_object(x_26); +x_36 = 0; +x_37 = lean_usize_of_nat(x_30); +lean_dec(x_30); +x_38 = lean_box(0); +x_39 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(x_12, x_11, x_36, x_37, x_38, x_7, x_8, x_9, x_10, x_14, x_15, x_28); +return x_39; +} +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_40 = lean_ctor_get(x_26, 1); +lean_inc(x_40); +lean_dec(x_26); +x_41 = lean_array_get_size(x_11); +x_42 = lean_unsigned_to_nat(0u); +x_43 = lean_nat_dec_lt(x_42, x_41); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_41); +lean_dec(x_14); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_44 = lean_box(0); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_40); +return x_45; +} +else +{ +uint8_t x_46; +x_46 = lean_nat_dec_le(x_41, x_41); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; +lean_dec(x_41); +lean_dec(x_14); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_40); +return x_48; +} +else +{ +size_t x_49; size_t x_50; lean_object* x_51; lean_object* x_52; +x_49 = 0; +x_50 = lean_usize_of_nat(x_41); +lean_dec(x_41); +x_51 = lean_box(0); +x_52 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(x_12, x_11, x_49, x_50, x_51, x_7, x_8, x_9, x_10, x_14, x_15, x_40); +return x_52; +} +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_14); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_53 = !lean_is_exclusive(x_26); +if (x_53 == 0) +{ +return x_26; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_26, 0); +x_55 = lean_ctor_get(x_26, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_26); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +lean_object* x_57; uint8_t x_58; lean_object* x_59; +lean_dec(x_12); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_4); +lean_ctor_set(x_57, 1, x_5); +x_58 = 0; +x_59 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_6, x_58, x_57, x_58, x_7, x_8, x_9, x_10, x_14, x_15, x_16); +return x_59; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_60 = lean_ctor_get(x_14, 0); +x_61 = lean_ctor_get(x_14, 1); +x_62 = lean_ctor_get(x_14, 3); +x_63 = lean_ctor_get(x_14, 5); +x_64 = lean_ctor_get(x_14, 6); +x_65 = lean_ctor_get(x_14, 7); +x_66 = lean_ctor_get(x_14, 8); +x_67 = lean_ctor_get(x_14, 9); +x_68 = lean_ctor_get(x_14, 10); +x_69 = lean_ctor_get(x_14, 11); +x_70 = lean_ctor_get_uint8(x_14, sizeof(void*)*12 + 1); +lean_inc(x_69); +lean_inc(x_68); +lean_inc(x_67); +lean_inc(x_66); +lean_inc(x_65); +lean_inc(x_64); +lean_inc(x_63); +lean_inc(x_62); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_14); +x_71 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1; +x_72 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_71); +x_73 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_73, 0, x_60); +lean_ctor_set(x_73, 1, x_61); +lean_ctor_set(x_73, 2, x_1); +lean_ctor_set(x_73, 3, x_62); +lean_ctor_set(x_73, 4, x_72); +lean_ctor_set(x_73, 5, x_63); +lean_ctor_set(x_73, 6, x_64); +lean_ctor_set(x_73, 7, x_65); +lean_ctor_set(x_73, 8, x_66); +lean_ctor_set(x_73, 9, x_67); +lean_ctor_set(x_73, 10, x_68); +lean_ctor_set(x_73, 11, x_69); +lean_ctor_set_uint8(x_73, sizeof(void*)*12, x_2); +lean_ctor_set_uint8(x_73, sizeof(void*)*12 + 1, x_70); +if (x_3 == 0) +{ +lean_object* x_74; uint8_t x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_4); +lean_ctor_set(x_74, 1, x_5); +x_75 = 0; +x_76 = lean_box(x_75); +x_77 = lean_alloc_closure((void*)(l_Lean_Elab_addNonRec___boxed), 10, 3); +lean_closure_set(x_77, 0, x_6); +lean_closure_set(x_77, 1, x_76); +lean_closure_set(x_77, 2, x_74); +lean_inc(x_15); +lean_inc(x_73); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_78 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1(x_75, x_77, x_7, x_8, x_9, x_10, x_73, x_15, x_16); +if (lean_obj_tag(x_78) == 0) +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; +x_79 = lean_ctor_get(x_78, 1); +lean_inc(x_79); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_80 = x_78; +} else { + lean_dec_ref(x_78); + x_80 = lean_box(0); +} +x_81 = lean_array_get_size(x_11); +x_82 = lean_unsigned_to_nat(0u); +x_83 = lean_nat_dec_lt(x_82, x_81); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; +lean_dec(x_81); +lean_dec(x_73); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_84 = lean_box(0); +if (lean_is_scalar(x_80)) { + x_85 = lean_alloc_ctor(0, 2, 0); +} else { + x_85 = x_80; +} +lean_ctor_set(x_85, 0, x_84); +lean_ctor_set(x_85, 1, x_79); +return x_85; +} +else +{ +uint8_t x_86; +x_86 = lean_nat_dec_le(x_81, x_81); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; +lean_dec(x_81); +lean_dec(x_73); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_87 = lean_box(0); +if (lean_is_scalar(x_80)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_80; +} +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_79); +return x_88; +} +else +{ +size_t x_89; size_t x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_80); +x_89 = 0; +x_90 = lean_usize_of_nat(x_81); +lean_dec(x_81); +x_91 = lean_box(0); +x_92 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(x_12, x_11, x_89, x_90, x_91, x_7, x_8, x_9, x_10, x_73, x_15, x_79); +return x_92; +} +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_73); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_93 = lean_ctor_get(x_78, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_78, 1); +lean_inc(x_94); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_95 = x_78; +} else { + lean_dec_ref(x_78); + x_95 = lean_box(0); +} +if (lean_is_scalar(x_95)) { + x_96 = lean_alloc_ctor(1, 2, 0); +} else { + x_96 = x_95; +} +lean_ctor_set(x_96, 0, x_93); +lean_ctor_set(x_96, 1, x_94); +return x_96; +} +} +else +{ +lean_object* x_97; uint8_t x_98; lean_object* x_99; +lean_dec(x_12); +x_97 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_97, 0, x_4); +lean_ctor_set(x_97, 1, x_5); +x_98 = 0; +x_99 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_6, x_98, x_97, x_98, x_7, x_8, x_9, x_10, x_73, x_15, x_16); +return x_99; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_allowUnsafeReducibility; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_diagnostics; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5; +x_2 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; lean_object* x_27; +x_11 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1; +lean_inc(x_3); +x_12 = l_Lean_Elab_PreDefinition_filterAttrs(x_3, x_11); +lean_inc(x_1); +x_13 = lean_array_to_list(x_1); +x_14 = lean_box(0); +x_15 = l_List_mapTR_loop___at_Lean_Elab_addAndCompileUnsafe___spec__2(x_13, x_14); +x_16 = lean_ctor_get(x_3, 3); +lean_inc(x_16); +lean_dec(x_3); +x_17 = lean_array_get_size(x_1); +x_18 = lean_unsigned_to_nat(0u); +x_19 = lean_nat_dec_lt(x_18, x_17); +lean_dec(x_17); +x_20 = lean_ctor_get(x_8, 2); +lean_inc(x_20); +x_21 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2; +x_22 = 1; +x_23 = l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(x_20, x_21, x_22); +x_24 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3; +x_25 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_23, x_24); +x_26 = lean_st_ref_get(x_9, x_10); +if (x_19 == 0) +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_1); +x_67 = l_Lean_Elab_instInhabitedPreDefinition; +x_68 = l_outOfBounds___rarg(x_67); +x_27 = x_68; +goto block_66; +} +else +{ +lean_object* x_69; +x_69 = lean_array_fget(x_1, x_18); +lean_dec(x_1); +x_27 = x_69; +goto block_66; +} +block_66: +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; uint8_t x_33; uint8_t x_34; +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); +lean_dec(x_26); +x_30 = lean_ctor_get(x_27, 3); +lean_inc(x_30); +lean_dec(x_27); +x_31 = lean_name_eq(x_16, x_30); +lean_dec(x_30); +x_32 = lean_ctor_get(x_28, 0); +lean_inc(x_32); +lean_dec(x_28); +x_33 = l_Lean_Kernel_isDiagnosticsEnabled(x_32); +lean_dec(x_32); +if (x_33 == 0) +{ +if (x_25 == 0) +{ +x_34 = x_22; +goto block_63; +} +else +{ +uint8_t x_64; +x_64 = 0; +x_34 = x_64; +goto block_63; +} +} +else +{ +if (x_25 == 0) +{ +uint8_t x_65; +x_65 = 0; +x_34 = x_65; +goto block_63; +} +else +{ +x_34 = x_22; +goto block_63; +} +} +block_63: +{ +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_35 = lean_st_ref_take(x_9, x_29); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = !lean_is_exclusive(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_39 = lean_ctor_get(x_36, 0); +x_40 = lean_ctor_get(x_36, 4); +lean_dec(x_40); +x_41 = l_Lean_Kernel_enableDiag(x_39, x_25); +x_42 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6; +lean_ctor_set(x_36, 4, x_42); +lean_ctor_set(x_36, 0, x_41); +x_43 = lean_st_ref_set(x_9, x_36, x_37); +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = lean_box(0); +x_46 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(x_23, x_25, x_31, x_16, x_14, x_12, x_4, x_5, x_6, x_7, x_2, x_15, x_45, x_8, x_9, x_44); +return x_46; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_47 = lean_ctor_get(x_36, 0); +x_48 = lean_ctor_get(x_36, 1); +x_49 = lean_ctor_get(x_36, 2); +x_50 = lean_ctor_get(x_36, 3); +x_51 = lean_ctor_get(x_36, 5); +x_52 = lean_ctor_get(x_36, 6); +x_53 = lean_ctor_get(x_36, 7); +lean_inc(x_53); +lean_inc(x_52); +lean_inc(x_51); +lean_inc(x_50); +lean_inc(x_49); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_36); +x_54 = l_Lean_Kernel_enableDiag(x_47, x_25); +x_55 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6; +x_56 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_48); +lean_ctor_set(x_56, 2, x_49); +lean_ctor_set(x_56, 3, x_50); +lean_ctor_set(x_56, 4, x_55); +lean_ctor_set(x_56, 5, x_51); +lean_ctor_set(x_56, 6, x_52); +lean_ctor_set(x_56, 7, x_53); +x_57 = lean_st_ref_set(x_9, x_56, x_37); +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +lean_dec(x_57); +x_59 = lean_box(0); +x_60 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(x_23, x_25, x_31, x_16, x_14, x_12, x_4, x_5, x_6, x_7, x_2, x_15, x_59, x_8, x_9, x_58); +return x_60; +} +} +else +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_box(0); +x_62 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(x_23, x_25, x_31, x_16, x_14, x_12, x_4, x_5, x_6, x_7, x_2, x_15, x_61, x_8, x_9, x_29); +return x_62; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_1); +lean_dec(x_1); +x_11 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__1(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +size_t x_13; size_t x_14; lean_object* x_15; +x_13 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_14 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_15 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Mutual_addPreDefsFromUnary___spec__2(x_1, x_2, x_13, x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_2); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; uint8_t x_18; lean_object* x_19; +x_17 = lean_unbox(x_2); +lean_dec(x_2); +x_18 = lean_unbox(x_3); +lean_dec(x_3); +x_19 = l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2(x_1, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_13); +lean_dec(x_11); +return x_19; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Elab_Mutual_addPreDefsFromUnary(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; +x_11 = lean_usize_dec_lt(x_2, x_1); +if (x_11 == 0) +{ +lean_object* x_12; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_3); +lean_ctor_set(x_12, 1, x_10); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_array_uget(x_3, x_2); +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_array_uset(x_3, x_2, x_14); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_16 = l_Lean_Elab_abstractNestedProofs(x_13, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = 1; +x_20 = lean_usize_add(x_2, x_19); +x_21 = lean_array_uset(x_15, x_2, x_17); +x_2 = x_20; +x_3 = x_21; +x_10 = x_18; +goto _start; +} +else +{ +uint8_t x_23; +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_23 = !lean_is_exclusive(x_16); +if (x_23 == 0) +{ +return x_16; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_16, 0); +x_25 = lean_ctor_get(x_16, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_16); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_cleanPreDefs(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_9 = l_Lean_Elab_addAndCompilePartialRec(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_9, 1); +lean_inc(x_10); +lean_dec(x_9); +x_11 = lean_array_size(x_1); +x_12 = 0; +lean_inc(x_7); +lean_inc(x_6); +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_addAndCompileUnsafe___spec__1(x_11, x_12, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_10); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; size_t x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_array_size(x_14); +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1(x_16, x_12, x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_15); +lean_dec(x_3); +lean_dec(x_2); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +return x_17; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_17, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_17); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +else +{ +uint8_t x_22; +x_22 = !lean_is_exclusive(x_17); +if (x_22 == 0) +{ +return x_17; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_17, 0); +x_24 = lean_ctor_get(x_17, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_17); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +else +{ +uint8_t x_26; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_26 = !lean_is_exclusive(x_13); +if (x_26 == 0) +{ +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 0); +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_13); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +else +{ +uint8_t x_30; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_30 = !lean_is_exclusive(x_9); +if (x_30 == 0) +{ +return x_9; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_9, 0); +x_32 = lean_ctor_get(x_9, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_9); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_12 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_Mutual_cleanPreDefs___spec__1(x_11, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_5); +lean_dec(x_4); +return x_13; +} +} +static lean_object* _init_l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5; +x_2 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +lean_ctor_set(x_2, 4, x_1); +lean_ctor_set(x_2, 5, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_10 = lean_st_ref_take(x_8, x_9); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = !lean_is_exclusive(x_11); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_14 = lean_ctor_get(x_11, 0); +x_15 = lean_ctor_get(x_11, 4); +lean_dec(x_15); +x_16 = 0; +x_17 = lean_box(0); +x_18 = l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(x_14, x_1, x_2, x_16, x_17); +x_19 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6; +lean_ctor_set(x_11, 4, x_19); +lean_ctor_set(x_11, 0, x_18); +x_20 = lean_st_ref_set(x_8, x_11, x_12); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_st_ref_take(x_6, x_21); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); +x_25 = !lean_is_exclusive(x_23); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_26 = lean_ctor_get(x_23, 1); +lean_dec(x_26); +x_27 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1; +lean_ctor_set(x_23, 1, x_27); +x_28 = lean_st_ref_set(x_6, x_23, x_24); +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_dec(x_30); +x_31 = lean_box(0); +lean_ctor_set(x_28, 0, x_31); +return x_28; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_28, 1); +lean_inc(x_32); +lean_dec(x_28); +x_33 = lean_box(0); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_35 = lean_ctor_get(x_23, 0); +x_36 = lean_ctor_get(x_23, 2); +x_37 = lean_ctor_get(x_23, 3); +x_38 = lean_ctor_get(x_23, 4); +lean_inc(x_38); +lean_inc(x_37); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_23); +x_39 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1; +x_40 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_40, 0, x_35); +lean_ctor_set(x_40, 1, x_39); +lean_ctor_set(x_40, 2, x_36); +lean_ctor_set(x_40, 3, x_37); +lean_ctor_set(x_40, 4, x_38); +x_41 = lean_st_ref_set(x_6, x_40, x_24); +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_43 = x_41; +} else { + lean_dec_ref(x_41); + x_43 = lean_box(0); +} +x_44 = lean_box(0); +if (lean_is_scalar(x_43)) { + x_45 = lean_alloc_ctor(0, 2, 0); +} else { + x_45 = x_43; +} +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_42); +return x_45; +} +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_46 = lean_ctor_get(x_11, 0); +x_47 = lean_ctor_get(x_11, 1); +x_48 = lean_ctor_get(x_11, 2); +x_49 = lean_ctor_get(x_11, 3); +x_50 = lean_ctor_get(x_11, 5); +x_51 = lean_ctor_get(x_11, 6); +x_52 = lean_ctor_get(x_11, 7); +lean_inc(x_52); +lean_inc(x_51); +lean_inc(x_50); +lean_inc(x_49); +lean_inc(x_48); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_11); +x_53 = 0; +x_54 = lean_box(0); +x_55 = l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(x_46, x_1, x_2, x_53, x_54); +x_56 = l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6; +x_57 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_47); +lean_ctor_set(x_57, 2, x_48); +lean_ctor_set(x_57, 3, x_49); +lean_ctor_set(x_57, 4, x_56); +lean_ctor_set(x_57, 5, x_50); +lean_ctor_set(x_57, 6, x_51); +lean_ctor_set(x_57, 7, x_52); +x_58 = lean_st_ref_set(x_8, x_57, x_12); +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +x_60 = lean_st_ref_take(x_6, x_59); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +lean_dec(x_60); +x_63 = lean_ctor_get(x_61, 0); +lean_inc(x_63); +x_64 = lean_ctor_get(x_61, 2); +lean_inc(x_64); +x_65 = lean_ctor_get(x_61, 3); +lean_inc(x_65); +x_66 = lean_ctor_get(x_61, 4); +lean_inc(x_66); +if (lean_is_exclusive(x_61)) { + lean_ctor_release(x_61, 0); + lean_ctor_release(x_61, 1); + lean_ctor_release(x_61, 2); + lean_ctor_release(x_61, 3); + lean_ctor_release(x_61, 4); + x_67 = x_61; +} else { + lean_dec_ref(x_61); + x_67 = lean_box(0); +} +x_68 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1; +if (lean_is_scalar(x_67)) { + x_69 = lean_alloc_ctor(0, 5, 0); +} else { + x_69 = x_67; +} +lean_ctor_set(x_69, 0, x_63); +lean_ctor_set(x_69, 1, x_68); +lean_ctor_set(x_69, 2, x_64); +lean_ctor_set(x_69, 3, x_65); +lean_ctor_set(x_69, 4, x_66); +x_70 = lean_st_ref_set(x_6, x_69, x_62); +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +if (lean_is_exclusive(x_70)) { + lean_ctor_release(x_70, 0); + lean_ctor_release(x_70, 1); + x_72 = x_70; +} else { + lean_dec_ref(x_70); + x_72 = lean_box(0); +} +x_73 = lean_box(0); +if (lean_is_scalar(x_72)) { + x_74 = lean_alloc_ctor(0, 2, 0); +} else { + x_74 = x_72; +} +lean_ctor_set(x_74, 0, x_73); +lean_ctor_set(x_74, 1, x_71); +return x_74; +} +} +} +static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("reducible", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("semireducible", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2(lean_object* x_1, size_t x_2, size_t x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_eq(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_5 = lean_array_uget(x_1, x_2); +x_6 = lean_ctor_get(x_5, 0); +lean_inc(x_6); +lean_dec(x_5); +x_7 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2; +x_8 = lean_name_eq(x_6, x_7); +if (x_8 == 0) +{ +lean_object* x_9; uint8_t x_10; +x_9 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4; +x_10 = lean_name_eq(x_6, x_9); +lean_dec(x_6); +if (x_10 == 0) +{ +size_t x_11; size_t x_12; +x_11 = 1; +x_12 = lean_usize_add(x_2, x_11); +x_2 = x_12; +goto _start; +} +else +{ +uint8_t x_14; +x_14 = 1; +return x_14; +} +} +else +{ +uint8_t x_15; +lean_dec(x_6); +x_15 = 1; +return x_15; +} +} +else +{ +uint8_t x_16; +x_16 = 0; +return x_16; +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_5, x_4); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_6); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_24; lean_object* x_25; uint8_t x_26; +lean_dec(x_6); +x_16 = lean_array_uget(x_3, x_5); +x_24 = lean_ctor_get(x_16, 3); +lean_inc(x_24); +lean_inc(x_24); +x_25 = l_Lean_Meta_markAsRecursive(x_24, x_11, x_12, x_13); +x_26 = !lean_is_exclusive(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_25, 1); +x_28 = lean_ctor_get(x_25, 0); +lean_dec(x_28); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_24); +x_29 = l_Lean_Meta_generateEagerEqns(x_24, x_9, x_10, x_11, x_12, x_27); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = lean_box(0); +lean_inc(x_16); +lean_ctor_set_tag(x_25, 1); +lean_ctor_set(x_25, 1, x_31); +lean_ctor_set(x_25, 0, x_16); +x_32 = lean_array_mk(x_25); +x_33 = 1; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_34 = l_Lean_Elab_applyAttributesOf(x_32, x_33, x_7, x_8, x_9, x_10, x_11, x_12, x_30); +lean_dec(x_32); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_42 = lean_ctor_get(x_16, 2); +lean_inc(x_42); +lean_dec(x_16); +x_43 = lean_ctor_get(x_42, 2); +lean_inc(x_43); +lean_dec(x_42); +x_44 = lean_array_get_size(x_43); +x_45 = lean_unsigned_to_nat(0u); +x_46 = lean_nat_dec_lt(x_45, x_44); +if (x_46 == 0) +{ +lean_object* x_47; +lean_dec(x_44); +lean_dec(x_43); +x_47 = lean_box(0); +x_36 = x_47; +goto block_41; +} +else +{ +size_t x_48; size_t x_49; uint8_t x_50; +x_48 = 0; +x_49 = lean_usize_of_nat(x_44); +lean_dec(x_44); +x_50 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2(x_43, x_48, x_49); +lean_dec(x_43); +if (x_50 == 0) +{ +lean_object* x_51; +x_51 = lean_box(0); +x_36 = x_51; +goto block_41; +} +else +{ +lean_object* x_52; +lean_dec(x_24); +x_52 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1; +x_17 = x_52; +x_18 = x_35; +goto block_23; +} +} +block_41: +{ +uint8_t x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_dec(x_36); +x_37 = 2; +x_38 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1(x_24, x_37, x_7, x_8, x_9, x_10, x_11, x_12, x_35); +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1; +x_17 = x_40; +x_18 = x_39; +goto block_23; +} +} +else +{ +uint8_t x_53; +lean_dec(x_24); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_53 = !lean_is_exclusive(x_34); +if (x_53 == 0) +{ +return x_34; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_34, 0); +x_55 = lean_ctor_get(x_34, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_34); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_free_object(x_25); +lean_dec(x_24); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_57 = !lean_is_exclusive(x_29); +if (x_57 == 0) +{ +return x_29; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_29, 0); +x_59 = lean_ctor_get(x_29, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_29); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_ctor_get(x_25, 1); +lean_inc(x_61); +lean_dec(x_25); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_24); +x_62 = l_Lean_Meta_generateEagerEqns(x_24, x_9, x_10, x_11, x_12, x_61); +if (lean_obj_tag(x_62) == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; lean_object* x_68; +x_63 = lean_ctor_get(x_62, 1); +lean_inc(x_63); +lean_dec(x_62); +x_64 = lean_box(0); +lean_inc(x_16); +x_65 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_65, 0, x_16); +lean_ctor_set(x_65, 1, x_64); +x_66 = lean_array_mk(x_65); +x_67 = 1; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_68 = l_Lean_Elab_applyAttributesOf(x_66, x_67, x_7, x_8, x_9, x_10, x_11, x_12, x_63); +lean_dec(x_66); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; +x_69 = lean_ctor_get(x_68, 1); +lean_inc(x_69); +lean_dec(x_68); +x_76 = lean_ctor_get(x_16, 2); +lean_inc(x_76); +lean_dec(x_16); +x_77 = lean_ctor_get(x_76, 2); +lean_inc(x_77); +lean_dec(x_76); +x_78 = lean_array_get_size(x_77); +x_79 = lean_unsigned_to_nat(0u); +x_80 = lean_nat_dec_lt(x_79, x_78); +if (x_80 == 0) +{ +lean_object* x_81; +lean_dec(x_78); +lean_dec(x_77); +x_81 = lean_box(0); +x_70 = x_81; +goto block_75; +} +else +{ +size_t x_82; size_t x_83; uint8_t x_84; +x_82 = 0; +x_83 = lean_usize_of_nat(x_78); +lean_dec(x_78); +x_84 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2(x_77, x_82, x_83); +lean_dec(x_77); +if (x_84 == 0) +{ +lean_object* x_85; +x_85 = lean_box(0); +x_70 = x_85; +goto block_75; +} +else +{ +lean_object* x_86; +lean_dec(x_24); +x_86 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1; +x_17 = x_86; +x_18 = x_69; +goto block_23; +} +} +block_75: +{ +uint8_t x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_dec(x_70); +x_71 = 2; +x_72 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1(x_24, x_71, x_7, x_8, x_9, x_10, x_11, x_12, x_69); +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +lean_dec(x_72); +x_74 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1; +x_17 = x_74; +x_18 = x_73; +goto block_23; +} +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +lean_dec(x_24); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_87 = lean_ctor_get(x_68, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_68, 1); +lean_inc(x_88); +if (lean_is_exclusive(x_68)) { + lean_ctor_release(x_68, 0); + lean_ctor_release(x_68, 1); + x_89 = x_68; +} else { + lean_dec_ref(x_68); + x_89 = lean_box(0); +} +if (lean_is_scalar(x_89)) { + x_90 = lean_alloc_ctor(1, 2, 0); +} else { + x_90 = x_89; +} +lean_ctor_set(x_90, 0, x_87); +lean_ctor_set(x_90, 1, x_88); +return x_90; +} +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +lean_dec(x_24); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_91 = lean_ctor_get(x_62, 0); +lean_inc(x_91); +x_92 = lean_ctor_get(x_62, 1); +lean_inc(x_92); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + x_93 = x_62; +} else { + lean_dec_ref(x_62); + x_93 = lean_box(0); +} +if (lean_is_scalar(x_93)) { + x_94 = lean_alloc_ctor(1, 2, 0); +} else { + x_94 = x_93; +} +lean_ctor_set(x_94, 0, x_91); +lean_ctor_set(x_94, 1, x_92); +return x_94; +} +} +block_23: +{ +lean_object* x_19; size_t x_20; size_t x_21; +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +lean_dec(x_17); +x_20 = 1; +x_21 = lean_usize_add(x_5, x_20); +x_5 = x_21; +x_6 = x_19; +x_13 = x_18; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefAttributes(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; +x_9 = lean_box(0); +x_10 = lean_array_size(x_1); +x_11 = 0; +x_12 = lean_box(0); +x_13 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3(x_1, x_9, x_1, x_10, x_11, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_13, 0); +lean_dec(x_15); +lean_ctor_set(x_13, 0, x_12); +return x_13; +} +else +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_dec(x_13); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_12); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +else +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_13); +if (x_18 == 0) +{ +return x_13; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_13, 0); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_13); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2(x_1, x_4, x_5); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_15 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Mutual_addPreDefAttributes___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Mutual_addPreDefAttributes(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_1); +return x_9; +} +} +lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_Mutual(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Elab_PreDefinition_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1 = _init_l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1(); +lean_mark_persistent(l_Lean_Elab_Mutual_withCommonTelescope___rarg___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__1(); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___lambda__3___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_getFixedPrefix___spec__3___closed__2); +l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1 = _init_l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Mutual_getFixedPrefix___lambda__2___closed__1); +l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__1); +l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__1___closed__2); +l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___lambda__2___closed__1); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__1); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__2); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__3); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__4); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__5); +l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6 = _init_l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6(); +lean_mark_persistent(l_Lean_Elab_Mutual_addPreDefsFromUnary___closed__6); +l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1 = _init_l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1(); +lean_mark_persistent(l_Lean_setReducibilityStatus___at_Lean_Elab_Mutual_addPreDefAttributes___spec__1___closed__1); +l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1(); +lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__1); +l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2(); +lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__2); +l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3(); +lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__3); +l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4(); +lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_Mutual_addPreDefAttributes___spec__2___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Mutual_addPreDefAttributes___spec__3___closed__1); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint.c b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint.c new file mode 100644 index 0000000000..63721ae6f2 --- /dev/null +++ b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint.c @@ -0,0 +1,37 @@ +// Lean compiler output +// Module: Lean.Elab.PreDefinition.PartialFixpoint +// Imports: Lean.Elab.PreDefinition.PartialFixpoint.Eqns Lean.Elab.PreDefinition.PartialFixpoint.Main Lean.Elab.PreDefinition.PartialFixpoint.Induction +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Main(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Induction(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint_Main(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint_Induction(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.c b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.c new file mode 100644 index 0000000000..c789f93ee3 --- /dev/null +++ b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Eqns.c @@ -0,0 +1,5003 @@ +// Lean compiler output +// Module: Lean.Elab.PreDefinition.PartialFixpoint.Eqns +// Imports: Lean.Elab.Tactic.Conv Lean.Meta.Tactic.Rewrite Lean.Meta.Tactic.Split Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Eqns Lean.Meta.ArgsPacker.Basic Init.Data.Array.Basic Init.Internal.Order.Basic +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_eqnInfoExt; +lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +lean_object* l_Lean_MVarId_replaceTargetDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MapDeclarationExtension_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5; +lean_object* l_Lean_Meta_throwTacticEx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4; +lean_object* lean_mk_empty_array_with_capacity(lean_object*); +lean_object* l_Lean_mkAppN(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4; +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_projExpr_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1(lean_object*, lean_object*, lean_object*); +uint64_t lean_uint64_lor(uint64_t, uint64_t); +uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isApp(lean_object*); +lean_object* l_Lean_Expr_sort___override(lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2; +lean_object* lean_mk_array(lean_object*, lean_object*); +uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2; +lean_object* l_Lean_MVarId_getType_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_bvar___override(lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static size_t l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__17; +extern lean_object* l_Lean_Meta_tactic_hygienic; +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___closed__5; +lean_object* l_Lean_Meta_registerGetUnfoldEqnFn(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1(lean_object*, size_t, size_t); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14; +lean_object* l_Lean_stringToMessageData(lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9; +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___closed__4; +extern lean_object* l_Lean_maxRecDepth; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___closed__3; +static lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_appArg_x21(lean_object*); +lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Kernel_isDiagnosticsEnabled(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15; +lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_ptr_addr(lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296_(lean_object*); +size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10; +lean_object* lean_st_ref_take(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569_(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +uint64_t lean_uint64_shift_right(uint64_t, uint64_t); +uint8_t l_Lean_Elab_DefKind_isTheorem(uint8_t); +lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2; +lean_object* l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofFormat(lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_Eqns_getUnfoldFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1; +extern lean_object* l_Lean_levelZero; +lean_object* l_Lean_Option_set___at_Lean_Meta_getEqnsFor_x3f___spec__1(lean_object*, lean_object*, uint8_t); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Expr_appFn_x21___spec__1(lean_object*); +uint8_t lean_name_eq(lean_object*, lean_object*); +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +lean_object* l_Lean_MapDeclarationExtension_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); +lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2; +extern lean_object* l_Lean_diagnostics; +lean_object* l_Lean_Expr_appFn_x21(lean_object*); +lean_object* l_Lean_Elab_Eqns_mkEqnTypes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5; +lean_object* l_Lean_MessageData_ofExpr(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Meta_eqnThmSuffixBase; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_name_append_index_after(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20; +lean_object* l_Lean_Expr_constLevels_x21(lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3; +lean_object* l_Lean_Meta_registerGetEqnsFn(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2; +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11; +uint8_t l_Lean_Expr_isProj(lean_object*); +lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static uint64_t l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12; +lean_object* lean_nat_sub(lean_object*, lean_object*); +lean_object* l_Lean_Expr_getAppFn(lean_object*); +lean_object* l_Lean_mkMapDeclarationExtension___rarg(lean_object*, lean_object*); +uint64_t lean_uint64_shift_left(uint64_t, uint64_t); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7; +lean_object* l_Lean_Meta_ensureEqnReservedNamesAvailable(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_mk(lean_object*); +uint8_t l_Lean_Meta_TransparencyMode_lt(uint8_t, uint8_t); +size_t lean_usize_add(size_t, size_t); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3; +static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1; +LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2; +lean_object* lean_array_uget(lean_object*, size_t); +size_t lean_array_size(lean_object*); +lean_object* l_Lean_Elab_Eqns_removeUnusedEqnHypotheses(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2; +lean_object* l_Lean_Elab_Eqns_tryURefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static uint64_t l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_get_size(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1; +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getEqnsFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6; +lean_object* l_Lean_MVarId_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_add(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16; +lean_object* l_Lean_Expr_lam___override(lean_object*, lean_object*, lean_object*, uint8_t); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3; +lean_object* l_Lean_Expr_mvarId_x21(lean_object*); +lean_object* l_Lean_Meta_deltaExpand(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +lean_object* l_Lean_MessageData_ofName(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Meta_subst_substEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19; +static lean_object* _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Expr_bvar___override(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1; +x_4 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_4, 0, x_2); +lean_ctor_set(x_4, 1, x_1); +lean_ctor_set(x_4, 2, x_3); +lean_ctor_set(x_4, 3, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2; +x_2 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3; +x_3 = lean_box(0); +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_2); +lean_ctor_set(x_5, 2, x_3); +lean_ctor_set(x_5, 3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4; +return x_1; +} +} +LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_name_eq(x_3, x_1); +if (x_4 == 0) +{ +uint8_t x_5; +x_5 = lean_name_eq(x_3, x_2); +return x_5; +} +else +{ +uint8_t x_6; +x_6 = 1; +return x_6; +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Eq", 2, 2); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("deltaLHSUntilFix", 16, 16); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("equality expected", 17, 17); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_9 = l_Lean_MVarId_getType_x27(x_1, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2; +x_13 = lean_unsigned_to_nat(3u); +x_14 = l_Lean_Expr_isAppOfArity(x_10, x_12, x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_10); +lean_dec(x_3); +lean_dec(x_2); +x_15 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4; +x_16 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8; +x_17 = l_Lean_Meta_throwTacticEx___rarg(x_15, x_1, x_16, x_4, x_5, x_6, x_7, x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = l_Lean_Expr_appFn_x21(x_10); +x_19 = l_Lean_Expr_appArg_x21(x_18); +lean_dec(x_18); +x_20 = l_Lean_Expr_appArg_x21(x_10); +lean_dec(x_10); +x_21 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1___boxed), 3, 2); +lean_closure_set(x_21, 0, x_2); +lean_closure_set(x_21, 1, x_3); +lean_inc(x_7); +lean_inc(x_6); +x_22 = l_Lean_Meta_deltaExpand(x_19, x_21, x_6, x_7, x_11); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_25 = l_Lean_Meta_mkEq(x_23, x_20, x_4, x_5, x_6, x_7, x_24); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_MVarId_replaceTargetDefEq(x_1, x_26, x_4, x_5, x_6, x_7, x_27); +return x_28; +} +else +{ +uint8_t x_29; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_29 = !lean_is_exclusive(x_25); +if (x_29 == 0) +{ +return x_25; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_25, 0); +x_31 = lean_ctor_get(x_25, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_25); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +} +else +{ +uint8_t x_33; +lean_dec(x_20); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_33 = !lean_is_exclusive(x_22); +if (x_33 == 0) +{ +return x_22; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_22, 0); +x_35 = lean_ctor_get(x_22, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_22); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +} +else +{ +uint8_t x_37; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_37 = !lean_is_exclusive(x_9); +if (x_37 == 0) +{ +return x_9; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_9, 0); +x_39 = lean_ctor_get(x_9, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_9); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +lean_inc(x_3); +x_9 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2), 8, 3); +lean_closure_set(x_9, 0, x_3); +lean_closure_set(x_9, 1, x_1); +lean_closure_set(x_9, 2, x_2); +x_10 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(x_3, x_9, x_4, x_5, x_6, x_7, x_8); +return x_10; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_5 = lean_box(x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Order", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix", 3, 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("rwFixUnder: unexpected expression ", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("p", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("congrArg", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Expr", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_private.Lean.Expr.0.Lean.Expr.updateProj!Impl", 46, 46); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("proj expected", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13; +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14; +x_3 = lean_unsigned_to_nat(1769u); +x_4 = lean_unsigned_to_nat(18u); +x_5 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static size_t _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__17() { +_start: +{ +lean_object* x_1; size_t x_2; +x_1 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1; +x_2 = lean_ptr_addr(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("congrFun", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix_eq", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_levelZero; +x_2 = l_Lean_Expr_sort___override(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_rwFixUnder(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4; +x_8 = lean_unsigned_to_nat(4u); +x_9 = l_Lean_Expr_isAppOfArity(x_1, x_7, x_8); +if (x_9 == 0) +{ +uint8_t x_10; +x_10 = l_Lean_Expr_isApp(x_1); +if (x_10 == 0) +{ +uint8_t x_11; +x_11 = l_Lean_Expr_isProj(x_1); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = l_Lean_MessageData_ofExpr(x_1); +x_13 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6; +x_14 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_12); +x_15 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +x_17 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_16, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +x_18 = l_Lean_Expr_projExpr_x21(x_1); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_18); +x_19 = lean_infer_type(x_18, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_22 = l_Lean_Elab_PartialFixpoint_rwFixUnder(x_18, x_2, x_3, x_4, x_5, x_21); +if (lean_obj_tag(x_1) == 11) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; size_t x_43; size_t x_44; uint8_t x_45; +x_40 = lean_ctor_get(x_1, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_1, 1); +lean_inc(x_41); +x_42 = lean_ctor_get(x_1, 2); +lean_inc(x_42); +x_43 = lean_ptr_addr(x_42); +lean_dec(x_42); +x_44 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__17; +x_45 = lean_usize_dec_eq(x_43, x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_1); +x_46 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1; +x_47 = l_Lean_Expr_proj___override(x_40, x_41, x_46); +x_23 = x_47; +goto block_39; +} +else +{ +lean_dec(x_41); +lean_dec(x_40); +x_23 = x_1; +goto block_39; +} +} +else +{ +lean_object* x_48; lean_object* x_49; +lean_dec(x_1); +x_48 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16; +x_49 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_48); +x_23 = x_49; +goto block_39; +} +block_39: +{ +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_22, 1); +lean_inc(x_25); +lean_dec(x_22); +x_26 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10; +x_27 = 0; +x_28 = l_Lean_Expr_lam___override(x_26, x_20, x_23, x_27); +x_29 = lean_box(0); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_24); +lean_ctor_set(x_30, 1, x_29); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +x_32 = lean_array_mk(x_31); +x_33 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12; +x_34 = l_Lean_Meta_mkAppM(x_33, x_32, x_2, x_3, x_4, x_5, x_25); +return x_34; +} +else +{ +uint8_t x_35; +lean_dec(x_23); +lean_dec(x_20); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_35 = !lean_is_exclusive(x_22); +if (x_35 == 0) +{ +return x_22; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_22, 0); +x_37 = lean_ctor_get(x_22, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_22); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +} +else +{ +uint8_t x_50; +lean_dec(x_18); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_50 = !lean_is_exclusive(x_19); +if (x_50 == 0) +{ +return x_19; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_19, 0); +x_52 = lean_ctor_get(x_19, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_19); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; +x_54 = l_Lean_Expr_appFn_x21(x_1); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_55 = l_Lean_Elab_PartialFixpoint_rwFixUnder(x_54, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +x_58 = l_Lean_Expr_appArg_x21(x_1); +lean_dec(x_1); +x_59 = lean_box(0); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_56); +lean_ctor_set(x_61, 1, x_60); +x_62 = lean_array_mk(x_61); +x_63 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19; +x_64 = l_Lean_Meta_mkAppM(x_63, x_62, x_2, x_3, x_4, x_5, x_57); +return x_64; +} +else +{ +uint8_t x_65; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_65 = !lean_is_exclusive(x_55); +if (x_65 == 0) +{ +return x_55; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_66 = lean_ctor_get(x_55, 0); +x_67 = lean_ctor_get(x_55, 1); +lean_inc(x_67); +lean_inc(x_66); +lean_dec(x_55); +x_68 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +return x_68; +} +} +} +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_69 = l_Lean_Expr_getAppFn(x_1); +x_70 = l_Lean_Expr_constLevels_x21(x_69); +lean_dec(x_69); +x_71 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21; +x_72 = l_Lean_Expr_const___override(x_71, x_70); +x_73 = lean_unsigned_to_nat(0u); +x_74 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_1, x_73); +x_75 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22; +lean_inc(x_74); +x_76 = lean_mk_array(x_74, x_75); +x_77 = lean_unsigned_to_nat(1u); +x_78 = lean_nat_sub(x_74, x_77); +lean_dec(x_74); +x_79 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_1, x_76, x_78); +x_80 = l_Lean_mkAppN(x_72, x_79); +lean_dec(x_79); +x_81 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_81, 0, x_80); +lean_ctor_set(x_81, 1, x_6); +return x_81; +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PreDefinition.PartialFixpoint.Eqns", 44, 44); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_private.Lean.Elab.PreDefinition.PartialFixpoint.Eqns.0.Lean.Elab.PartialFixpoint.rwFixEq", 89, 89); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unreachable code has been reached", 33, 33); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2; +x_3 = lean_unsigned_to_nat(48u); +x_4 = lean_unsigned_to_nat(41u); +x_5 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2; +x_3 = lean_unsigned_to_nat(50u); +x_4 = lean_unsigned_to_nat(51u); +x_5 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_7 = l_Lean_MVarId_getType_x27(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2; +x_11 = lean_unsigned_to_nat(3u); +x_12 = l_Lean_Expr_isAppOfArity(x_8, x_10, x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_8); +lean_dec(x_1); +x_13 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4; +x_14 = l_panic___at_Lean_Meta_subst_substEq___spec__1(x_13, x_2, x_3, x_4, x_5, x_9); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = l_Lean_Expr_appFn_x21(x_8); +x_16 = l_Lean_Expr_appArg_x21(x_15); +lean_dec(x_15); +x_17 = l_Lean_Expr_appArg_x21(x_8); +lean_dec(x_8); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_18 = l_Lean_Elab_PartialFixpoint_rwFixUnder(x_16, x_2, x_3, x_4, x_5, x_9); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_19); +x_21 = lean_infer_type(x_19, x_2, x_3, x_4, x_5, x_20); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_Expr_isAppOfArity(x_22, x_10, x_11); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_22); +lean_dec(x_19); +lean_dec(x_17); +lean_dec(x_1); +x_25 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5; +x_26 = l_panic___at_Lean_Meta_subst_substEq___spec__1(x_25, x_2, x_3, x_4, x_5, x_23); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; +x_27 = l_Lean_Expr_appArg_x21(x_22); +lean_dec(x_22); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_28 = l_Lean_Meta_mkEq(x_27, x_17, x_2, x_3, x_4, x_5, x_23); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = lean_box(0); +lean_inc(x_2); +x_32 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_29, x_31, x_2, x_3, x_4, x_5, x_30); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_33); +x_35 = l_Lean_Meta_mkEqTrans(x_19, x_33, x_2, x_3, x_4, x_5, x_34); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_1, x_36, x_2, x_3, x_4, x_5, x_37); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_39 = !lean_is_exclusive(x_38); +if (x_39 == 0) +{ +lean_object* x_40; lean_object* x_41; +x_40 = lean_ctor_get(x_38, 0); +lean_dec(x_40); +x_41 = l_Lean_Expr_mvarId_x21(x_33); +lean_dec(x_33); +lean_ctor_set(x_38, 0, x_41); +return x_38; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_38, 1); +lean_inc(x_42); +lean_dec(x_38); +x_43 = l_Lean_Expr_mvarId_x21(x_33); +lean_dec(x_33); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_43); +lean_ctor_set(x_44, 1, x_42); +return x_44; +} +} +else +{ +uint8_t x_45; +lean_dec(x_33); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_45 = !lean_is_exclusive(x_35); +if (x_45 == 0) +{ +return x_35; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_35, 0); +x_47 = lean_ctor_get(x_35, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_35); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +uint8_t x_49; +lean_dec(x_19); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_49 = !lean_is_exclusive(x_28); +if (x_49 == 0) +{ +return x_28; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_28, 0); +x_51 = lean_ctor_get(x_28, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_28); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_19); +lean_dec(x_17); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_21); +if (x_53 == 0) +{ +return x_21; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_21, 0); +x_55 = lean_ctor_get(x_21, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_21); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_dec(x_17); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_57 = !lean_is_exclusive(x_18); +if (x_57 == 0) +{ +return x_18; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_18, 0); +x_59 = lean_ctor_get(x_18, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_18); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_61 = !lean_is_exclusive(x_7); +if (x_61 == 0) +{ +return x_7; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_7, 0); +x_63 = lean_ctor_get(x_7, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_7); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +return x_64; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; +lean_inc(x_1); +x_7 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1), 6, 1); +lean_closure_set(x_7, 0, x_1); +x_8 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6); +return x_8; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("failed to generate equational theorem for '", 43, 43); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("'\n", 2, 2); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static uint64_t _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5() { +_start: +{ +uint8_t x_1; uint64_t x_2; +x_1 = 0; +x_2 = l_Lean_Meta_TransparencyMode_toUInt64(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_box(0); +lean_inc(x_4); +x_10 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_1, x_9, x_4, x_5, x_6, x_7, x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +if (lean_is_exclusive(x_10)) { + lean_ctor_release(x_10, 0); + lean_ctor_release(x_10, 1); + x_13 = x_10; +} else { + lean_dec_ref(x_10); + x_13 = lean_box(0); +} +x_14 = l_Lean_Expr_mvarId_x21(x_11); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_15 = l_Lean_MVarId_intros(x_14, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + lean_ctor_release(x_16, 1); + x_19 = x_16; +} else { + lean_dec_ref(x_16); + x_19 = lean_box(0); +} +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_2); +x_20 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix(x_2, x_3, x_18, x_4, x_5, x_6, x_7, x_17); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_23 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq(x_21, x_4, x_5, x_6, x_7, x_22); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_40; uint64_t x_41; uint8_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_40 = lean_ctor_get(x_4, 0); +lean_inc(x_40); +x_41 = lean_ctor_get_uint64(x_4, sizeof(void*)*7); +x_42 = lean_ctor_get_uint8(x_4, sizeof(void*)*7 + 8); +x_43 = lean_ctor_get(x_4, 1); +lean_inc(x_43); +x_44 = lean_ctor_get(x_4, 2); +lean_inc(x_44); +x_45 = lean_ctor_get(x_4, 3); +lean_inc(x_45); +x_46 = lean_ctor_get(x_4, 4); +lean_inc(x_46); +x_47 = lean_ctor_get(x_4, 5); +lean_inc(x_47); +x_48 = lean_ctor_get(x_4, 6); +lean_inc(x_48); +x_49 = !lean_is_exclusive(x_40); +if (x_49 == 0) +{ +uint8_t x_50; uint8_t x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; uint64_t x_55; uint64_t x_56; uint64_t x_57; +x_50 = lean_ctor_get_uint8(x_4, sizeof(void*)*7 + 9); +x_51 = lean_ctor_get_uint8(x_4, sizeof(void*)*7 + 10); +x_52 = lean_ctor_get_uint8(x_40, 9); +x_53 = 0; +x_54 = l_Lean_Meta_TransparencyMode_lt(x_52, x_53); +x_55 = 2; +x_56 = lean_uint64_shift_right(x_41, x_55); +x_57 = lean_uint64_shift_left(x_56, x_55); +if (x_54 == 0) +{ +uint64_t x_58; uint64_t x_59; lean_object* x_60; lean_object* x_61; +x_58 = l_Lean_Meta_TransparencyMode_toUInt64(x_52); +x_59 = lean_uint64_lor(x_57, x_58); +x_60 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_60, 0, x_40); +lean_ctor_set(x_60, 1, x_43); +lean_ctor_set(x_60, 2, x_44); +lean_ctor_set(x_60, 3, x_45); +lean_ctor_set(x_60, 4, x_46); +lean_ctor_set(x_60, 5, x_47); +lean_ctor_set(x_60, 6, x_48); +lean_ctor_set_uint64(x_60, sizeof(void*)*7, x_59); +lean_ctor_set_uint8(x_60, sizeof(void*)*7 + 8, x_42); +lean_ctor_set_uint8(x_60, sizeof(void*)*7 + 9, x_50); +lean_ctor_set_uint8(x_60, sizeof(void*)*7 + 10, x_51); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_24); +x_61 = l_Lean_Elab_Eqns_tryURefl(x_24, x_60, x_5, x_6, x_7, x_25); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +lean_dec(x_61); +x_64 = lean_unbox(x_62); +lean_dec(x_62); +x_26 = x_64; +x_27 = x_63; +goto block_39; +} +else +{ +uint8_t x_65; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_65 = !lean_is_exclusive(x_61); +if (x_65 == 0) +{ +return x_61; +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_66 = lean_ctor_get(x_61, 0); +x_67 = lean_ctor_get(x_61, 1); +lean_inc(x_67); +lean_inc(x_66); +lean_dec(x_61); +x_68 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +return x_68; +} +} +} +else +{ +uint64_t x_69; uint64_t x_70; lean_object* x_71; lean_object* x_72; +lean_ctor_set_uint8(x_40, 9, x_53); +x_69 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5; +x_70 = lean_uint64_lor(x_57, x_69); +x_71 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_71, 0, x_40); +lean_ctor_set(x_71, 1, x_43); +lean_ctor_set(x_71, 2, x_44); +lean_ctor_set(x_71, 3, x_45); +lean_ctor_set(x_71, 4, x_46); +lean_ctor_set(x_71, 5, x_47); +lean_ctor_set(x_71, 6, x_48); +lean_ctor_set_uint64(x_71, sizeof(void*)*7, x_70); +lean_ctor_set_uint8(x_71, sizeof(void*)*7 + 8, x_42); +lean_ctor_set_uint8(x_71, sizeof(void*)*7 + 9, x_50); +lean_ctor_set_uint8(x_71, sizeof(void*)*7 + 10, x_51); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_24); +x_72 = l_Lean_Elab_Eqns_tryURefl(x_24, x_71, x_5, x_6, x_7, x_25); +if (lean_obj_tag(x_72) == 0) +{ +lean_object* x_73; lean_object* x_74; uint8_t x_75; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +lean_dec(x_72); +x_75 = lean_unbox(x_73); +lean_dec(x_73); +x_26 = x_75; +x_27 = x_74; +goto block_39; +} +else +{ +uint8_t x_76; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_76 = !lean_is_exclusive(x_72); +if (x_76 == 0) +{ +return x_72; +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_72, 0); +x_78 = lean_ctor_get(x_72, 1); +lean_inc(x_78); +lean_inc(x_77); +lean_dec(x_72); +x_79 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +return x_79; +} +} +} +} +else +{ +uint8_t x_80; uint8_t x_81; uint8_t x_82; uint8_t x_83; uint8_t x_84; uint8_t x_85; uint8_t x_86; uint8_t x_87; uint8_t x_88; uint8_t x_89; uint8_t x_90; uint8_t x_91; uint8_t x_92; uint8_t x_93; uint8_t x_94; uint8_t x_95; uint8_t x_96; uint8_t x_97; uint8_t x_98; uint8_t x_99; uint8_t x_100; uint64_t x_101; uint64_t x_102; uint64_t x_103; +x_80 = lean_ctor_get_uint8(x_4, sizeof(void*)*7 + 9); +x_81 = lean_ctor_get_uint8(x_4, sizeof(void*)*7 + 10); +x_82 = lean_ctor_get_uint8(x_40, 0); +x_83 = lean_ctor_get_uint8(x_40, 1); +x_84 = lean_ctor_get_uint8(x_40, 2); +x_85 = lean_ctor_get_uint8(x_40, 3); +x_86 = lean_ctor_get_uint8(x_40, 4); +x_87 = lean_ctor_get_uint8(x_40, 5); +x_88 = lean_ctor_get_uint8(x_40, 6); +x_89 = lean_ctor_get_uint8(x_40, 7); +x_90 = lean_ctor_get_uint8(x_40, 8); +x_91 = lean_ctor_get_uint8(x_40, 9); +x_92 = lean_ctor_get_uint8(x_40, 10); +x_93 = lean_ctor_get_uint8(x_40, 11); +x_94 = lean_ctor_get_uint8(x_40, 12); +x_95 = lean_ctor_get_uint8(x_40, 13); +x_96 = lean_ctor_get_uint8(x_40, 14); +x_97 = lean_ctor_get_uint8(x_40, 15); +x_98 = lean_ctor_get_uint8(x_40, 16); +lean_dec(x_40); +x_99 = 0; +x_100 = l_Lean_Meta_TransparencyMode_lt(x_91, x_99); +x_101 = 2; +x_102 = lean_uint64_shift_right(x_41, x_101); +x_103 = lean_uint64_shift_left(x_102, x_101); +if (x_100 == 0) +{ +lean_object* x_104; uint64_t x_105; uint64_t x_106; lean_object* x_107; lean_object* x_108; +x_104 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_104, 0, x_82); +lean_ctor_set_uint8(x_104, 1, x_83); +lean_ctor_set_uint8(x_104, 2, x_84); +lean_ctor_set_uint8(x_104, 3, x_85); +lean_ctor_set_uint8(x_104, 4, x_86); +lean_ctor_set_uint8(x_104, 5, x_87); +lean_ctor_set_uint8(x_104, 6, x_88); +lean_ctor_set_uint8(x_104, 7, x_89); +lean_ctor_set_uint8(x_104, 8, x_90); +lean_ctor_set_uint8(x_104, 9, x_91); +lean_ctor_set_uint8(x_104, 10, x_92); +lean_ctor_set_uint8(x_104, 11, x_93); +lean_ctor_set_uint8(x_104, 12, x_94); +lean_ctor_set_uint8(x_104, 13, x_95); +lean_ctor_set_uint8(x_104, 14, x_96); +lean_ctor_set_uint8(x_104, 15, x_97); +lean_ctor_set_uint8(x_104, 16, x_98); +x_105 = l_Lean_Meta_TransparencyMode_toUInt64(x_91); +x_106 = lean_uint64_lor(x_103, x_105); +x_107 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_107, 0, x_104); +lean_ctor_set(x_107, 1, x_43); +lean_ctor_set(x_107, 2, x_44); +lean_ctor_set(x_107, 3, x_45); +lean_ctor_set(x_107, 4, x_46); +lean_ctor_set(x_107, 5, x_47); +lean_ctor_set(x_107, 6, x_48); +lean_ctor_set_uint64(x_107, sizeof(void*)*7, x_106); +lean_ctor_set_uint8(x_107, sizeof(void*)*7 + 8, x_42); +lean_ctor_set_uint8(x_107, sizeof(void*)*7 + 9, x_80); +lean_ctor_set_uint8(x_107, sizeof(void*)*7 + 10, x_81); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_24); +x_108 = l_Lean_Elab_Eqns_tryURefl(x_24, x_107, x_5, x_6, x_7, x_25); +if (lean_obj_tag(x_108) == 0) +{ +lean_object* x_109; lean_object* x_110; uint8_t x_111; +x_109 = lean_ctor_get(x_108, 0); +lean_inc(x_109); +x_110 = lean_ctor_get(x_108, 1); +lean_inc(x_110); +lean_dec(x_108); +x_111 = lean_unbox(x_109); +lean_dec(x_109); +x_26 = x_111; +x_27 = x_110; +goto block_39; +} +else +{ +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_112 = lean_ctor_get(x_108, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_108, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_108)) { + lean_ctor_release(x_108, 0); + lean_ctor_release(x_108, 1); + x_114 = x_108; +} else { + lean_dec_ref(x_108); + x_114 = lean_box(0); +} +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(1, 2, 0); +} else { + x_115 = x_114; +} +lean_ctor_set(x_115, 0, x_112); +lean_ctor_set(x_115, 1, x_113); +return x_115; +} +} +else +{ +lean_object* x_116; uint64_t x_117; uint64_t x_118; lean_object* x_119; lean_object* x_120; +x_116 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_116, 0, x_82); +lean_ctor_set_uint8(x_116, 1, x_83); +lean_ctor_set_uint8(x_116, 2, x_84); +lean_ctor_set_uint8(x_116, 3, x_85); +lean_ctor_set_uint8(x_116, 4, x_86); +lean_ctor_set_uint8(x_116, 5, x_87); +lean_ctor_set_uint8(x_116, 6, x_88); +lean_ctor_set_uint8(x_116, 7, x_89); +lean_ctor_set_uint8(x_116, 8, x_90); +lean_ctor_set_uint8(x_116, 9, x_99); +lean_ctor_set_uint8(x_116, 10, x_92); +lean_ctor_set_uint8(x_116, 11, x_93); +lean_ctor_set_uint8(x_116, 12, x_94); +lean_ctor_set_uint8(x_116, 13, x_95); +lean_ctor_set_uint8(x_116, 14, x_96); +lean_ctor_set_uint8(x_116, 15, x_97); +lean_ctor_set_uint8(x_116, 16, x_98); +x_117 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5; +x_118 = lean_uint64_lor(x_103, x_117); +x_119 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_119, 0, x_116); +lean_ctor_set(x_119, 1, x_43); +lean_ctor_set(x_119, 2, x_44); +lean_ctor_set(x_119, 3, x_45); +lean_ctor_set(x_119, 4, x_46); +lean_ctor_set(x_119, 5, x_47); +lean_ctor_set(x_119, 6, x_48); +lean_ctor_set_uint64(x_119, sizeof(void*)*7, x_118); +lean_ctor_set_uint8(x_119, sizeof(void*)*7 + 8, x_42); +lean_ctor_set_uint8(x_119, sizeof(void*)*7 + 9, x_80); +lean_ctor_set_uint8(x_119, sizeof(void*)*7 + 10, x_81); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_24); +x_120 = l_Lean_Elab_Eqns_tryURefl(x_24, x_119, x_5, x_6, x_7, x_25); +if (lean_obj_tag(x_120) == 0) +{ +lean_object* x_121; lean_object* x_122; uint8_t x_123; +x_121 = lean_ctor_get(x_120, 0); +lean_inc(x_121); +x_122 = lean_ctor_get(x_120, 1); +lean_inc(x_122); +lean_dec(x_120); +x_123 = lean_unbox(x_121); +lean_dec(x_121); +x_26 = x_123; +x_27 = x_122; +goto block_39; +} +else +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_124 = lean_ctor_get(x_120, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_120, 1); +lean_inc(x_125); +if (lean_is_exclusive(x_120)) { + lean_ctor_release(x_120, 0); + lean_ctor_release(x_120, 1); + x_126 = x_120; +} else { + lean_dec_ref(x_120); + x_126 = lean_box(0); +} +if (lean_is_scalar(x_126)) { + x_127 = lean_alloc_ctor(1, 2, 0); +} else { + x_127 = x_126; +} +lean_ctor_set(x_127, 0, x_124); +lean_ctor_set(x_127, 1, x_125); +return x_127; +} +} +} +block_39: +{ +if (x_26 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_dec(x_11); +x_28 = l_Lean_MessageData_ofName(x_2); +x_29 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2; +if (lean_is_scalar(x_19)) { + x_30 = lean_alloc_ctor(7, 2, 0); +} else { + x_30 = x_19; + lean_ctor_set_tag(x_30, 7); +} +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +x_31 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4; +if (lean_is_scalar(x_13)) { + x_32 = lean_alloc_ctor(7, 2, 0); +} else { + x_32 = x_13; + lean_ctor_set_tag(x_32, 7); +} +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_24); +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +x_35 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +x_37 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_36, x_4, x_5, x_6, x_7, x_27); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_37; +} +else +{ +lean_object* x_38; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_2); +x_38 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_11, x_4, x_5, x_6, x_7, x_27); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_38; +} +} +} +else +{ +uint8_t x_128; +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_128 = !lean_is_exclusive(x_23); +if (x_128 == 0) +{ +return x_23; +} +else +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; +x_129 = lean_ctor_get(x_23, 0); +x_130 = lean_ctor_get(x_23, 1); +lean_inc(x_130); +lean_inc(x_129); +lean_dec(x_23); +x_131 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_131, 0, x_129); +lean_ctor_set(x_131, 1, x_130); +return x_131; +} +} +} +else +{ +uint8_t x_132; +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_132 = !lean_is_exclusive(x_20); +if (x_132 == 0) +{ +return x_20; +} +else +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; +x_133 = lean_ctor_get(x_20, 0); +x_134 = lean_ctor_get(x_20, 1); +lean_inc(x_134); +lean_inc(x_133); +lean_dec(x_20); +x_135 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_135, 0, x_133); +lean_ctor_set(x_135, 1, x_134); +return x_135; +} +} +} +else +{ +uint8_t x_136; +lean_dec(x_13); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_136 = !lean_is_exclusive(x_15); +if (x_136 == 0) +{ +return x_15; +} +else +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; +x_137 = lean_ctor_get(x_15, 0); +x_138 = lean_ctor_get(x_15, 1); +lean_inc(x_138); +lean_inc(x_137); +lean_dec(x_15); +x_139 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_139, 0, x_137); +lean_ctor_set(x_139, 1, x_138); +return x_139; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; lean_object* x_12; +x_10 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1), 8, 3); +lean_closure_set(x_10, 0, x_1); +lean_closure_set(x_10, 1, x_2); +lean_closure_set(x_10, 2, x_3); +x_11 = 0; +x_12 = l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(x_10, x_11, x_5, x_6, x_7, x_8, x_9); +return x_12; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Elab", 4, 4); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("definition", 10, 10); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2; +x_3 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("proving: ", 9, 9); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_9 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4; +x_10 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_9, x_4, x_5, x_6, x_7, x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_10, 1); +lean_inc(x_13); +lean_dec(x_10); +x_14 = lean_box(0); +x_15 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(x_3, x_1, x_2, x_14, x_4, x_5, x_6, x_7, x_13); +return x_15; +} +else +{ +uint8_t x_16; +x_16 = !lean_is_exclusive(x_10); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_17 = lean_ctor_get(x_10, 1); +x_18 = lean_ctor_get(x_10, 0); +lean_dec(x_18); +lean_inc(x_3); +x_19 = l_Lean_MessageData_ofExpr(x_3); +x_20 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6; +lean_ctor_set_tag(x_10, 7); +lean_ctor_set(x_10, 1, x_19); +lean_ctor_set(x_10, 0, x_20); +x_21 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +x_22 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_22, 0, x_10); +lean_ctor_set(x_22, 1, x_21); +x_23 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_9, x_22, x_4, x_5, x_6, x_7, x_17); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(x_3, x_1, x_2, x_24, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_24); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_27 = lean_ctor_get(x_10, 1); +lean_inc(x_27); +lean_dec(x_10); +lean_inc(x_3); +x_28 = l_Lean_MessageData_ofExpr(x_3); +x_29 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6; +x_30 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +x_31 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +x_32 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +x_33 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_9, x_32, x_4, x_5, x_6, x_7, x_27); +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); +x_36 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(x_3, x_1, x_2, x_34, x_4, x_5, x_6, x_7, x_35); +lean_dec(x_34); +return x_36; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_14 = l_Lean_Meta_eqnThmSuffixBase; +lean_inc(x_1); +x_15 = l_Lean_Name_str___override(x_1, x_14); +x_16 = lean_unsigned_to_nat(1u); +x_17 = lean_nat_add(x_2, x_16); +x_18 = lean_name_append_index_after(x_15, x_17); +lean_inc(x_18); +x_19 = lean_array_push(x_7, x_18); +x_20 = lean_ctor_get(x_3, 2); +lean_inc(x_20); +lean_dec(x_3); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_4); +x_21 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof(x_1, x_20, x_4, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_Elab_Eqns_removeUnusedEqnHypotheses(x_4, x_22, x_11, x_12, x_23); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = !lean_is_exclusive(x_25); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_28 = lean_ctor_get(x_25, 0); +x_29 = lean_ctor_get(x_25, 1); +x_30 = lean_ctor_get(x_5, 1); +lean_inc(x_30); +lean_inc(x_18); +x_31 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_31, 0, x_18); +lean_ctor_set(x_31, 1, x_30); +lean_ctor_set(x_31, 2, x_28); +lean_ctor_set_tag(x_25, 1); +lean_ctor_set(x_25, 1, x_6); +lean_ctor_set(x_25, 0, x_18); +x_32 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_29); +lean_ctor_set(x_32, 2, x_25); +x_33 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_33, 0, x_32); +x_34 = l_Lean_addDecl(x_33, x_11, x_12, x_26); +if (lean_obj_tag(x_34) == 0) +{ +uint8_t x_35; +x_35 = !lean_is_exclusive(x_34); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; +x_36 = lean_ctor_get(x_34, 0); +lean_dec(x_36); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_19); +lean_ctor_set(x_34, 0, x_37); +return x_34; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_34, 1); +lean_inc(x_38); +lean_dec(x_34); +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_19); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_38); +return x_40; +} +} +else +{ +uint8_t x_41; +lean_dec(x_19); +x_41 = !lean_is_exclusive(x_34); +if (x_41 == 0) +{ +return x_34; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_34, 0); +x_43 = lean_ctor_get(x_34, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_34); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_45 = lean_ctor_get(x_25, 0); +x_46 = lean_ctor_get(x_25, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_25); +x_47 = lean_ctor_get(x_5, 1); +lean_inc(x_47); +lean_inc(x_18); +x_48 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_48, 0, x_18); +lean_ctor_set(x_48, 1, x_47); +lean_ctor_set(x_48, 2, x_45); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_18); +lean_ctor_set(x_49, 1, x_6); +x_50 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_46); +lean_ctor_set(x_50, 2, x_49); +x_51 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_51, 0, x_50); +x_52 = l_Lean_addDecl(x_51, x_11, x_12, x_26); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_53 = lean_ctor_get(x_52, 1); +lean_inc(x_53); +if (lean_is_exclusive(x_52)) { + lean_ctor_release(x_52, 0); + lean_ctor_release(x_52, 1); + x_54 = x_52; +} else { + lean_dec_ref(x_52); + x_54 = lean_box(0); +} +x_55 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_55, 0, x_19); +if (lean_is_scalar(x_54)) { + x_56 = lean_alloc_ctor(0, 2, 0); +} else { + x_56 = x_54; +} +lean_ctor_set(x_56, 0, x_55); +lean_ctor_set(x_56, 1, x_53); +return x_56; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +lean_dec(x_19); +x_57 = lean_ctor_get(x_52, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_52, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_52)) { + lean_ctor_release(x_52, 0); + lean_ctor_release(x_52, 1); + x_59 = x_52; +} else { + lean_dec_ref(x_52); + x_59 = lean_box(0); +} +if (lean_is_scalar(x_59)) { + x_60 = lean_alloc_ctor(1, 2, 0); +} else { + x_60 = x_59; +} +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_58); +return x_60; +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_4); +x_61 = !lean_is_exclusive(x_21); +if (x_61 == 0) +{ +return x_21; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_21, 0); +x_63 = lean_ctor_get(x_21, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_21); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +return x_64; +} +} +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_ctor_get(x_7, 1); +x_18 = lean_nat_dec_lt(x_9, x_17); +if (x_18 == 0) +{ +lean_object* x_19; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_8); +lean_ctor_set(x_19, 1, x_16); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_20 = lean_array_fget(x_4, x_9); +x_21 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4; +x_22 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_21, x_12, x_13, x_14, x_15, x_16); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_unbox(x_23); +lean_dec(x_23); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_22, 1); +lean_inc(x_25); +lean_dec(x_22); +x_26 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_5); +lean_inc(x_2); +lean_inc(x_1); +x_27 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(x_1, x_9, x_2, x_20, x_3, x_5, x_8, x_26, x_12, x_13, x_14, x_15, x_25); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_29 = !lean_is_exclusive(x_27); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_27, 0); +lean_dec(x_30); +x_31 = lean_ctor_get(x_28, 0); +lean_inc(x_31); +lean_dec(x_28); +lean_ctor_set(x_27, 0, x_31); +return x_27; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_27, 1); +lean_inc(x_32); +lean_dec(x_27); +x_33 = lean_ctor_get(x_28, 0); +lean_inc(x_33); +lean_dec(x_28); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +return x_34; +} +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_35 = lean_ctor_get(x_27, 1); +lean_inc(x_35); +lean_dec(x_27); +x_36 = lean_ctor_get(x_28, 0); +lean_inc(x_36); +lean_dec(x_28); +x_37 = lean_ctor_get(x_7, 2); +x_38 = lean_nat_add(x_9, x_37); +lean_dec(x_9); +x_8 = x_36; +x_9 = x_38; +x_10 = lean_box(0); +x_11 = lean_box(0); +x_16 = x_35; +goto _start; +} +} +else +{ +uint8_t x_40; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_27); +if (x_40 == 0) +{ +return x_27; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_27, 0); +x_42 = lean_ctor_get(x_27, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_27); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +uint8_t x_44; +x_44 = !lean_is_exclusive(x_22); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_45 = lean_ctor_get(x_22, 1); +x_46 = lean_ctor_get(x_22, 0); +lean_dec(x_46); +lean_inc(x_20); +x_47 = l_Lean_MessageData_ofExpr(x_20); +x_48 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_47); +lean_ctor_set(x_22, 0, x_48); +x_49 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_49, 0, x_22); +lean_ctor_set(x_49, 1, x_48); +x_50 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_21, x_49, x_12, x_13, x_14, x_15, x_45); +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_5); +lean_inc(x_2); +lean_inc(x_1); +x_53 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(x_1, x_9, x_2, x_20, x_3, x_5, x_8, x_51, x_12, x_13, x_14, x_15, x_52); +lean_dec(x_51); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +if (lean_obj_tag(x_54) == 0) +{ +uint8_t x_55; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_55 = !lean_is_exclusive(x_53); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; +x_56 = lean_ctor_get(x_53, 0); +lean_dec(x_56); +x_57 = lean_ctor_get(x_54, 0); +lean_inc(x_57); +lean_dec(x_54); +lean_ctor_set(x_53, 0, x_57); +return x_53; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_53, 1); +lean_inc(x_58); +lean_dec(x_53); +x_59 = lean_ctor_get(x_54, 0); +lean_inc(x_59); +lean_dec(x_54); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_59); +lean_ctor_set(x_60, 1, x_58); +return x_60; +} +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_61 = lean_ctor_get(x_53, 1); +lean_inc(x_61); +lean_dec(x_53); +x_62 = lean_ctor_get(x_54, 0); +lean_inc(x_62); +lean_dec(x_54); +x_63 = lean_ctor_get(x_7, 2); +x_64 = lean_nat_add(x_9, x_63); +lean_dec(x_9); +x_8 = x_62; +x_9 = x_64; +x_10 = lean_box(0); +x_11 = lean_box(0); +x_16 = x_61; +goto _start; +} +} +else +{ +uint8_t x_66; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_66 = !lean_is_exclusive(x_53); +if (x_66 == 0) +{ +return x_53; +} +else +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_53, 0); +x_68 = lean_ctor_get(x_53, 1); +lean_inc(x_68); +lean_inc(x_67); +lean_dec(x_53); +x_69 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_69, 0, x_67); +lean_ctor_set(x_69, 1, x_68); +return x_69; +} +} +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_70 = lean_ctor_get(x_22, 1); +lean_inc(x_70); +lean_dec(x_22); +lean_inc(x_20); +x_71 = l_Lean_MessageData_ofExpr(x_20); +x_72 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8; +x_73 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_71); +x_74 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_74, 0, x_73); +lean_ctor_set(x_74, 1, x_72); +x_75 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_21, x_74, x_12, x_13, x_14, x_15, x_70); +x_76 = lean_ctor_get(x_75, 0); +lean_inc(x_76); +x_77 = lean_ctor_get(x_75, 1); +lean_inc(x_77); +lean_dec(x_75); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_5); +lean_inc(x_2); +lean_inc(x_1); +x_78 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(x_1, x_9, x_2, x_20, x_3, x_5, x_8, x_76, x_12, x_13, x_14, x_15, x_77); +lean_dec(x_76); +if (lean_obj_tag(x_78) == 0) +{ +lean_object* x_79; +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +if (lean_obj_tag(x_79) == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_80 = lean_ctor_get(x_78, 1); +lean_inc(x_80); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_81 = x_78; +} else { + lean_dec_ref(x_78); + x_81 = lean_box(0); +} +x_82 = lean_ctor_get(x_79, 0); +lean_inc(x_82); +lean_dec(x_79); +if (lean_is_scalar(x_81)) { + x_83 = lean_alloc_ctor(0, 2, 0); +} else { + x_83 = x_81; +} +lean_ctor_set(x_83, 0, x_82); +lean_ctor_set(x_83, 1, x_80); +return x_83; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_84 = lean_ctor_get(x_78, 1); +lean_inc(x_84); +lean_dec(x_78); +x_85 = lean_ctor_get(x_79, 0); +lean_inc(x_85); +lean_dec(x_79); +x_86 = lean_ctor_get(x_7, 2); +x_87 = lean_nat_add(x_9, x_86); +lean_dec(x_9); +x_8 = x_85; +x_9 = x_87; +x_10 = lean_box(0); +x_11 = lean_box(0); +x_16 = x_84; +goto _start; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_89 = lean_ctor_get(x_78, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_78, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_91 = x_78; +} else { + lean_dec_ref(x_78); + x_91 = lean_box(0); +} +if (lean_is_scalar(x_91)) { + x_92 = lean_alloc_ctor(1, 2, 0); +} else { + x_92 = x_91; +} +lean_ctor_set(x_92, 0, x_89); +lean_ctor_set(x_92, 1, x_90); +return x_92; +} +} +} +} +} +} +static uint64_t _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1() { +_start: +{ +uint8_t x_1; uint64_t x_2; +x_1 = 2; +x_2 = l_Lean_Meta_TransparencyMode_toUInt64(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_11 = lean_ctor_get(x_1, 1); +lean_inc(x_11); +lean_dec(x_1); +x_12 = lean_box(0); +x_13 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_11, x_12); +x_14 = l_Lean_Expr_const___override(x_2, x_13); +x_15 = l_Lean_mkAppN(x_14, x_4); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_16 = l_Lean_Meta_mkEq(x_15, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_box(0); +lean_inc(x_6); +x_20 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_17, x_19, x_6, x_7, x_8, x_9, x_18); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_ctor_get(x_3, 1); +lean_inc(x_23); +lean_dec(x_3); +x_24 = l_Lean_Expr_mvarId_x21(x_21); +lean_dec(x_21); +x_25 = !lean_is_exclusive(x_6); +if (x_25 == 0) +{ +lean_object* x_26; uint8_t x_27; +x_26 = lean_ctor_get(x_6, 0); +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) +{ +uint64_t x_28; uint8_t x_29; uint64_t x_30; uint64_t x_31; uint64_t x_32; uint64_t x_33; uint64_t x_34; lean_object* x_35; +x_28 = lean_ctor_get_uint64(x_6, sizeof(void*)*7); +x_29 = 2; +lean_ctor_set_uint8(x_26, 9, x_29); +x_30 = 2; +x_31 = lean_uint64_shift_right(x_28, x_30); +x_32 = lean_uint64_shift_left(x_31, x_30); +x_33 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1; +x_34 = lean_uint64_lor(x_32, x_33); +lean_ctor_set_uint64(x_6, sizeof(void*)*7, x_34); +x_35 = l_Lean_Elab_Eqns_mkEqnTypes(x_23, x_24, x_6, x_7, x_8, x_9, x_22); +if (lean_obj_tag(x_35) == 0) +{ +uint8_t x_36; +x_36 = !lean_is_exclusive(x_35); +if (x_36 == 0) +{ +return x_35; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_35, 0); +x_38 = lean_ctor_get(x_35, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_35); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +else +{ +uint8_t x_40; +x_40 = !lean_is_exclusive(x_35); +if (x_40 == 0) +{ +return x_35; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_35, 0); +x_42 = lean_ctor_get(x_35, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_35); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +uint64_t x_44; uint8_t x_45; uint8_t x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; uint8_t x_55; uint8_t x_56; uint8_t x_57; uint8_t x_58; uint8_t x_59; uint8_t x_60; uint8_t x_61; lean_object* x_62; uint64_t x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; lean_object* x_68; +x_44 = lean_ctor_get_uint64(x_6, sizeof(void*)*7); +x_45 = lean_ctor_get_uint8(x_26, 0); +x_46 = lean_ctor_get_uint8(x_26, 1); +x_47 = lean_ctor_get_uint8(x_26, 2); +x_48 = lean_ctor_get_uint8(x_26, 3); +x_49 = lean_ctor_get_uint8(x_26, 4); +x_50 = lean_ctor_get_uint8(x_26, 5); +x_51 = lean_ctor_get_uint8(x_26, 6); +x_52 = lean_ctor_get_uint8(x_26, 7); +x_53 = lean_ctor_get_uint8(x_26, 8); +x_54 = lean_ctor_get_uint8(x_26, 10); +x_55 = lean_ctor_get_uint8(x_26, 11); +x_56 = lean_ctor_get_uint8(x_26, 12); +x_57 = lean_ctor_get_uint8(x_26, 13); +x_58 = lean_ctor_get_uint8(x_26, 14); +x_59 = lean_ctor_get_uint8(x_26, 15); +x_60 = lean_ctor_get_uint8(x_26, 16); +lean_dec(x_26); +x_61 = 2; +x_62 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_62, 0, x_45); +lean_ctor_set_uint8(x_62, 1, x_46); +lean_ctor_set_uint8(x_62, 2, x_47); +lean_ctor_set_uint8(x_62, 3, x_48); +lean_ctor_set_uint8(x_62, 4, x_49); +lean_ctor_set_uint8(x_62, 5, x_50); +lean_ctor_set_uint8(x_62, 6, x_51); +lean_ctor_set_uint8(x_62, 7, x_52); +lean_ctor_set_uint8(x_62, 8, x_53); +lean_ctor_set_uint8(x_62, 9, x_61); +lean_ctor_set_uint8(x_62, 10, x_54); +lean_ctor_set_uint8(x_62, 11, x_55); +lean_ctor_set_uint8(x_62, 12, x_56); +lean_ctor_set_uint8(x_62, 13, x_57); +lean_ctor_set_uint8(x_62, 14, x_58); +lean_ctor_set_uint8(x_62, 15, x_59); +lean_ctor_set_uint8(x_62, 16, x_60); +x_63 = 2; +x_64 = lean_uint64_shift_right(x_44, x_63); +x_65 = lean_uint64_shift_left(x_64, x_63); +x_66 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1; +x_67 = lean_uint64_lor(x_65, x_66); +lean_ctor_set(x_6, 0, x_62); +lean_ctor_set_uint64(x_6, sizeof(void*)*7, x_67); +x_68 = l_Lean_Elab_Eqns_mkEqnTypes(x_23, x_24, x_6, x_7, x_8, x_9, x_22); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_ctor_get(x_68, 1); +lean_inc(x_70); +if (lean_is_exclusive(x_68)) { + lean_ctor_release(x_68, 0); + lean_ctor_release(x_68, 1); + x_71 = x_68; +} else { + lean_dec_ref(x_68); + x_71 = lean_box(0); +} +if (lean_is_scalar(x_71)) { + x_72 = lean_alloc_ctor(0, 2, 0); +} else { + x_72 = x_71; +} +lean_ctor_set(x_72, 0, x_69); +lean_ctor_set(x_72, 1, x_70); +return x_72; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_73 = lean_ctor_get(x_68, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_68, 1); +lean_inc(x_74); +if (lean_is_exclusive(x_68)) { + lean_ctor_release(x_68, 0); + lean_ctor_release(x_68, 1); + x_75 = x_68; +} else { + lean_dec_ref(x_68); + x_75 = lean_box(0); +} +if (lean_is_scalar(x_75)) { + x_76 = lean_alloc_ctor(1, 2, 0); +} else { + x_76 = x_75; +} +lean_ctor_set(x_76, 0, x_73); +lean_ctor_set(x_76, 1, x_74); +return x_76; +} +} +} +else +{ +lean_object* x_77; uint64_t x_78; uint8_t x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_86; uint8_t x_87; uint8_t x_88; uint8_t x_89; uint8_t x_90; uint8_t x_91; uint8_t x_92; uint8_t x_93; uint8_t x_94; uint8_t x_95; uint8_t x_96; uint8_t x_97; uint8_t x_98; uint8_t x_99; uint8_t x_100; uint8_t x_101; uint8_t x_102; uint8_t x_103; lean_object* x_104; uint8_t x_105; lean_object* x_106; uint64_t x_107; uint64_t x_108; uint64_t x_109; uint64_t x_110; uint64_t x_111; lean_object* x_112; lean_object* x_113; +x_77 = lean_ctor_get(x_6, 0); +x_78 = lean_ctor_get_uint64(x_6, sizeof(void*)*7); +x_79 = lean_ctor_get_uint8(x_6, sizeof(void*)*7 + 8); +x_80 = lean_ctor_get(x_6, 1); +x_81 = lean_ctor_get(x_6, 2); +x_82 = lean_ctor_get(x_6, 3); +x_83 = lean_ctor_get(x_6, 4); +x_84 = lean_ctor_get(x_6, 5); +x_85 = lean_ctor_get(x_6, 6); +x_86 = lean_ctor_get_uint8(x_6, sizeof(void*)*7 + 9); +x_87 = lean_ctor_get_uint8(x_6, sizeof(void*)*7 + 10); +lean_inc(x_85); +lean_inc(x_84); +lean_inc(x_83); +lean_inc(x_82); +lean_inc(x_81); +lean_inc(x_80); +lean_inc(x_77); +lean_dec(x_6); +x_88 = lean_ctor_get_uint8(x_77, 0); +x_89 = lean_ctor_get_uint8(x_77, 1); +x_90 = lean_ctor_get_uint8(x_77, 2); +x_91 = lean_ctor_get_uint8(x_77, 3); +x_92 = lean_ctor_get_uint8(x_77, 4); +x_93 = lean_ctor_get_uint8(x_77, 5); +x_94 = lean_ctor_get_uint8(x_77, 6); +x_95 = lean_ctor_get_uint8(x_77, 7); +x_96 = lean_ctor_get_uint8(x_77, 8); +x_97 = lean_ctor_get_uint8(x_77, 10); +x_98 = lean_ctor_get_uint8(x_77, 11); +x_99 = lean_ctor_get_uint8(x_77, 12); +x_100 = lean_ctor_get_uint8(x_77, 13); +x_101 = lean_ctor_get_uint8(x_77, 14); +x_102 = lean_ctor_get_uint8(x_77, 15); +x_103 = lean_ctor_get_uint8(x_77, 16); +if (lean_is_exclusive(x_77)) { + x_104 = x_77; +} else { + lean_dec_ref(x_77); + x_104 = lean_box(0); +} +x_105 = 2; +if (lean_is_scalar(x_104)) { + x_106 = lean_alloc_ctor(0, 0, 17); +} else { + x_106 = x_104; +} +lean_ctor_set_uint8(x_106, 0, x_88); +lean_ctor_set_uint8(x_106, 1, x_89); +lean_ctor_set_uint8(x_106, 2, x_90); +lean_ctor_set_uint8(x_106, 3, x_91); +lean_ctor_set_uint8(x_106, 4, x_92); +lean_ctor_set_uint8(x_106, 5, x_93); +lean_ctor_set_uint8(x_106, 6, x_94); +lean_ctor_set_uint8(x_106, 7, x_95); +lean_ctor_set_uint8(x_106, 8, x_96); +lean_ctor_set_uint8(x_106, 9, x_105); +lean_ctor_set_uint8(x_106, 10, x_97); +lean_ctor_set_uint8(x_106, 11, x_98); +lean_ctor_set_uint8(x_106, 12, x_99); +lean_ctor_set_uint8(x_106, 13, x_100); +lean_ctor_set_uint8(x_106, 14, x_101); +lean_ctor_set_uint8(x_106, 15, x_102); +lean_ctor_set_uint8(x_106, 16, x_103); +x_107 = 2; +x_108 = lean_uint64_shift_right(x_78, x_107); +x_109 = lean_uint64_shift_left(x_108, x_107); +x_110 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1; +x_111 = lean_uint64_lor(x_109, x_110); +x_112 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_112, 0, x_106); +lean_ctor_set(x_112, 1, x_80); +lean_ctor_set(x_112, 2, x_81); +lean_ctor_set(x_112, 3, x_82); +lean_ctor_set(x_112, 4, x_83); +lean_ctor_set(x_112, 5, x_84); +lean_ctor_set(x_112, 6, x_85); +lean_ctor_set_uint64(x_112, sizeof(void*)*7, x_111); +lean_ctor_set_uint8(x_112, sizeof(void*)*7 + 8, x_79); +lean_ctor_set_uint8(x_112, sizeof(void*)*7 + 9, x_86); +lean_ctor_set_uint8(x_112, sizeof(void*)*7 + 10, x_87); +x_113 = l_Lean_Elab_Eqns_mkEqnTypes(x_23, x_24, x_112, x_7, x_8, x_9, x_22); +if (lean_obj_tag(x_113) == 0) +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_114 = lean_ctor_get(x_113, 0); +lean_inc(x_114); +x_115 = lean_ctor_get(x_113, 1); +lean_inc(x_115); +if (lean_is_exclusive(x_113)) { + lean_ctor_release(x_113, 0); + lean_ctor_release(x_113, 1); + x_116 = x_113; +} else { + lean_dec_ref(x_113); + x_116 = lean_box(0); +} +if (lean_is_scalar(x_116)) { + x_117 = lean_alloc_ctor(0, 2, 0); +} else { + x_117 = x_116; +} +lean_ctor_set(x_117, 0, x_114); +lean_ctor_set(x_117, 1, x_115); +return x_117; +} +else +{ +lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_118 = lean_ctor_get(x_113, 0); +lean_inc(x_118); +x_119 = lean_ctor_get(x_113, 1); +lean_inc(x_119); +if (lean_is_exclusive(x_113)) { + lean_ctor_release(x_113, 0); + lean_ctor_release(x_113, 1); + x_120 = x_113; +} else { + lean_dec_ref(x_113); + x_120 = lean_box(0); +} +if (lean_is_scalar(x_120)) { + x_121 = lean_alloc_ctor(1, 2, 0); +} else { + x_121 = x_120; +} +lean_ctor_set(x_121, 0, x_118); +lean_ctor_set(x_121, 1, x_119); +return x_121; +} +} +} +else +{ +uint8_t x_122; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +x_122 = !lean_is_exclusive(x_16); +if (x_122 == 0) +{ +return x_16; +} +else +{ +lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_123 = lean_ctor_get(x_16, 0); +x_124 = lean_ctor_get(x_16, 1); +lean_inc(x_124); +lean_inc(x_123); +lean_dec(x_16); +x_125 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_125, 0, x_123); +lean_ctor_set(x_125, 1, x_124); +return x_125; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_maxRecDepth; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; +x_13 = !lean_is_exclusive(x_10); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_10, 4); +lean_dec(x_14); +x_15 = lean_ctor_get(x_10, 2); +lean_dec(x_15); +x_16 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1; +x_17 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_16); +lean_ctor_set(x_10, 4, x_17); +lean_ctor_set(x_10, 2, x_1); +lean_ctor_set_uint8(x_10, sizeof(void*)*12, x_2); +x_18 = 0; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_5); +lean_inc(x_4); +x_19 = l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(x_3, x_18, x_4, x_5, x_10, x_11, x_12); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = lean_box(0); +x_23 = lean_array_get_size(x_20); +x_24 = lean_unsigned_to_nat(0u); +x_25 = lean_unsigned_to_nat(1u); +x_26 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_23); +lean_ctor_set(x_26, 2, x_25); +x_27 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2; +x_28 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1(x_6, x_7, x_8, x_20, x_22, x_26, x_26, x_27, x_24, lean_box(0), lean_box(0), x_4, x_5, x_10, x_11, x_21); +lean_dec(x_26); +lean_dec(x_20); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +return x_28; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_28, 0); +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_28); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +else +{ +uint8_t x_33; +x_33 = !lean_is_exclusive(x_28); +if (x_33 == 0) +{ +return x_28; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_28, 0); +x_35 = lean_ctor_get(x_28, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_28); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +else +{ +uint8_t x_37; +lean_dec(x_10); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_37 = !lean_is_exclusive(x_19); +if (x_37 == 0) +{ +return x_19; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_19, 0); +x_39 = lean_ctor_get(x_19, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_19); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; lean_object* x_56; +x_41 = lean_ctor_get(x_10, 0); +x_42 = lean_ctor_get(x_10, 1); +x_43 = lean_ctor_get(x_10, 3); +x_44 = lean_ctor_get(x_10, 5); +x_45 = lean_ctor_get(x_10, 6); +x_46 = lean_ctor_get(x_10, 7); +x_47 = lean_ctor_get(x_10, 8); +x_48 = lean_ctor_get(x_10, 9); +x_49 = lean_ctor_get(x_10, 10); +x_50 = lean_ctor_get(x_10, 11); +x_51 = lean_ctor_get_uint8(x_10, sizeof(void*)*12 + 1); +lean_inc(x_50); +lean_inc(x_49); +lean_inc(x_48); +lean_inc(x_47); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_43); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_10); +x_52 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1; +x_53 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_52); +x_54 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_54, 0, x_41); +lean_ctor_set(x_54, 1, x_42); +lean_ctor_set(x_54, 2, x_1); +lean_ctor_set(x_54, 3, x_43); +lean_ctor_set(x_54, 4, x_53); +lean_ctor_set(x_54, 5, x_44); +lean_ctor_set(x_54, 6, x_45); +lean_ctor_set(x_54, 7, x_46); +lean_ctor_set(x_54, 8, x_47); +lean_ctor_set(x_54, 9, x_48); +lean_ctor_set(x_54, 10, x_49); +lean_ctor_set(x_54, 11, x_50); +lean_ctor_set_uint8(x_54, sizeof(void*)*12, x_2); +lean_ctor_set_uint8(x_54, sizeof(void*)*12 + 1, x_51); +x_55 = 0; +lean_inc(x_11); +lean_inc(x_54); +lean_inc(x_5); +lean_inc(x_4); +x_56 = l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(x_3, x_55, x_4, x_5, x_54, x_11, x_12); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +x_59 = lean_box(0); +x_60 = lean_array_get_size(x_57); +x_61 = lean_unsigned_to_nat(0u); +x_62 = lean_unsigned_to_nat(1u); +x_63 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_60); +lean_ctor_set(x_63, 2, x_62); +x_64 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2; +x_65 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1(x_6, x_7, x_8, x_57, x_59, x_63, x_63, x_64, x_61, lean_box(0), lean_box(0), x_4, x_5, x_54, x_11, x_58); +lean_dec(x_63); +lean_dec(x_57); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_66 = lean_ctor_get(x_65, 0); +lean_inc(x_66); +x_67 = lean_ctor_get(x_65, 1); +lean_inc(x_67); +if (lean_is_exclusive(x_65)) { + lean_ctor_release(x_65, 0); + lean_ctor_release(x_65, 1); + x_68 = x_65; +} else { + lean_dec_ref(x_65); + x_68 = lean_box(0); +} +if (lean_is_scalar(x_68)) { + x_69 = lean_alloc_ctor(0, 2, 0); +} else { + x_69 = x_68; +} +lean_ctor_set(x_69, 0, x_66); +lean_ctor_set(x_69, 1, x_67); +return x_69; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_70 = lean_ctor_get(x_65, 0); +lean_inc(x_70); +x_71 = lean_ctor_get(x_65, 1); +lean_inc(x_71); +if (lean_is_exclusive(x_65)) { + lean_ctor_release(x_65, 0); + lean_ctor_release(x_65, 1); + x_72 = x_65; +} else { + lean_dec_ref(x_65); + x_72 = lean_box(0); +} +if (lean_is_scalar(x_72)) { + x_73 = lean_alloc_ctor(1, 2, 0); +} else { + x_73 = x_72; +} +lean_ctor_set(x_73, 0, x_70); +lean_ctor_set(x_73, 1, x_71); +return x_73; +} +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_54); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_74 = lean_ctor_get(x_56, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_56, 1); +lean_inc(x_75); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_76 = x_56; +} else { + lean_dec_ref(x_56); + x_76 = lean_box(0); +} +if (lean_is_scalar(x_76)) { + x_77 = lean_alloc_ctor(1, 2, 0); +} else { + x_77 = x_76; +} +lean_ctor_set(x_77, 0, x_74); +lean_ctor_set(x_77, 1, x_75); +return x_77; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Meta_tactic_hygienic; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_diagnostics; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__3; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__4; +x_2 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; uint8_t x_25; +x_8 = lean_ctor_get(x_2, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_8, 3); +lean_inc(x_9); +lean_inc(x_2); +lean_inc(x_1); +lean_inc(x_8); +x_10 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___boxed), 10, 3); +lean_closure_set(x_10, 0, x_8); +lean_closure_set(x_10, 1, x_1); +lean_closure_set(x_10, 2, x_2); +x_11 = 1; +x_12 = lean_box(x_11); +x_13 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg___boxed), 8, 3); +lean_closure_set(x_13, 0, x_9); +lean_closure_set(x_13, 1, x_10); +lean_closure_set(x_13, 2, x_12); +x_14 = lean_ctor_get(x_5, 2); +lean_inc(x_14); +x_15 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__1; +x_16 = 0; +x_17 = l_Lean_Option_set___at_Lean_Meta_getEqnsFor_x3f___spec__1(x_14, x_15, x_16); +x_18 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__2; +x_19 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_17, x_18); +x_20 = lean_st_ref_get(x_6, x_7); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_ctor_get(x_21, 0); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_Kernel_isDiagnosticsEnabled(x_23); +lean_dec(x_23); +if (x_24 == 0) +{ +if (x_19 == 0) +{ +x_25 = x_11; +goto block_54; +} +else +{ +x_25 = x_16; +goto block_54; +} +} +else +{ +if (x_19 == 0) +{ +x_25 = x_16; +goto block_54; +} +else +{ +x_25 = x_11; +goto block_54; +} +} +block_54: +{ +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_26 = lean_st_ref_take(x_6, x_22); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = !lean_is_exclusive(x_27); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_30 = lean_ctor_get(x_27, 0); +x_31 = lean_ctor_get(x_27, 4); +lean_dec(x_31); +x_32 = l_Lean_Kernel_enableDiag(x_30, x_19); +x_33 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__5; +lean_ctor_set(x_27, 4, x_33); +lean_ctor_set(x_27, 0, x_32); +x_34 = lean_st_ref_set(x_6, x_27, x_28); +x_35 = lean_ctor_get(x_34, 1); +lean_inc(x_35); +lean_dec(x_34); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(x_17, x_19, x_13, x_3, x_4, x_1, x_2, x_8, x_36, x_5, x_6, x_35); +lean_dec(x_8); +return x_37; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_38 = lean_ctor_get(x_27, 0); +x_39 = lean_ctor_get(x_27, 1); +x_40 = lean_ctor_get(x_27, 2); +x_41 = lean_ctor_get(x_27, 3); +x_42 = lean_ctor_get(x_27, 5); +x_43 = lean_ctor_get(x_27, 6); +x_44 = lean_ctor_get(x_27, 7); +lean_inc(x_44); +lean_inc(x_43); +lean_inc(x_42); +lean_inc(x_41); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_27); +x_45 = l_Lean_Kernel_enableDiag(x_38, x_19); +x_46 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__5; +x_47 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_39); +lean_ctor_set(x_47, 2, x_40); +lean_ctor_set(x_47, 3, x_41); +lean_ctor_set(x_47, 4, x_46); +lean_ctor_set(x_47, 5, x_42); +lean_ctor_set(x_47, 6, x_43); +lean_ctor_set(x_47, 7, x_44); +x_48 = lean_st_ref_set(x_6, x_47, x_28); +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +lean_dec(x_48); +x_50 = lean_box(0); +x_51 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(x_17, x_19, x_13, x_3, x_4, x_1, x_2, x_8, x_50, x_5, x_6, x_49); +lean_dec(x_8); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; +x_52 = lean_box(0); +x_53 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(x_17, x_19, x_13, x_3, x_4, x_1, x_2, x_8, x_52, x_5, x_6, x_22); +lean_dec(x_8); +return x_53; +} +} +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_2); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; +x_17 = l_Std_Range_forIn_x27_loop___at_Lean_Elab_PartialFixpoint_mkEqns___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_4); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; lean_object* x_14; +x_13 = lean_unbox(x_2); +lean_dec(x_2); +x_14 = l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2(x_1, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_9); +lean_dec(x_8); +return x_14; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PartialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("eqnInfoExt", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1; +x_3 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1; +x_4 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3; +x_3 = l_Lean_mkMapDeclarationExtension___rarg(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1(lean_object* x_1, size_t x_2, size_t x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_eq(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; uint8_t x_6; uint8_t x_7; +x_5 = lean_array_uget(x_1, x_2); +x_6 = lean_ctor_get_uint8(x_5, sizeof(void*)*7); +lean_dec(x_5); +x_7 = l_Lean_Elab_DefKind_isTheorem(x_6); +if (x_7 == 0) +{ +uint8_t x_8; +x_8 = 1; +return x_8; +} +else +{ +size_t x_9; size_t x_10; +x_9 = 1; +x_10 = lean_usize_add(x_2, x_9); +x_2 = x_10; +goto _start; +} +} +else +{ +uint8_t x_12; +x_12 = 0; +return x_12; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = lean_ctor_get(x_5, 3); +lean_inc(x_8); +lean_dec(x_5); +x_9 = 1; +x_10 = lean_usize_add(x_2, x_9); +x_11 = lean_array_uset(x_7, x_2, x_8); +x_2 = x_10; +x_3 = x_11; +goto _start; +} +} +} +static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_PartialFixpoint_eqnInfoExt; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; +x_8 = lean_usize_dec_eq(x_5, x_6); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; size_t x_18; size_t x_19; +x_9 = lean_array_uget(x_4, x_5); +x_10 = lean_ctor_get(x_9, 3); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +x_12 = lean_ctor_get(x_9, 4); +lean_inc(x_12); +x_13 = lean_ctor_get(x_9, 5); +lean_inc(x_13); +lean_dec(x_9); +lean_inc(x_10); +x_14 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_14, 0, x_10); +lean_ctor_set(x_14, 1, x_11); +lean_ctor_set(x_14, 2, x_12); +lean_ctor_set(x_14, 3, x_13); +lean_inc(x_2); +lean_inc(x_1); +lean_inc(x_3); +x_15 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_3); +lean_ctor_set(x_15, 2, x_1); +lean_ctor_set(x_15, 3, x_2); +x_16 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1; +x_17 = l_Lean_MapDeclarationExtension_insert___rarg(x_16, x_7, x_10, x_15); +x_18 = 1; +x_19 = lean_usize_add(x_5, x_18); +x_5 = x_19; +x_7 = x_17; +goto _start; +} +else +{ +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_eq(x_2, x_3); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_array_uget(x_1, x_2); +x_11 = lean_ctor_get(x_10, 4); +lean_inc(x_11); +lean_dec(x_10); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_12 = l_Lean_Meta_isProp(x_11, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; uint8_t x_14; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_unbox(x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +uint8_t x_15; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_15 = !lean_is_exclusive(x_12); +if (x_15 == 0) +{ +lean_object* x_16; uint8_t x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_12, 0); +lean_dec(x_16); +x_17 = 1; +x_18 = lean_box(x_17); +lean_ctor_set(x_12, 0, x_18); +return x_12; +} +else +{ +lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_dec(x_12); +x_20 = 1; +x_21 = lean_box(x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_19); +return x_22; +} +} +else +{ +lean_object* x_23; size_t x_24; size_t x_25; +x_23 = lean_ctor_get(x_12, 1); +lean_inc(x_23); +lean_dec(x_12); +x_24 = 1; +x_25 = lean_usize_add(x_2, x_24); +x_2 = x_25; +x_8 = x_23; +goto _start; +} +} +else +{ +uint8_t x_27; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_27 = !lean_is_exclusive(x_12); +if (x_27 == 0) +{ +return x_12; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_12, 0); +x_29 = lean_ctor_get(x_12, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_12); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +else +{ +uint8_t x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_31 = 0; +x_32 = lean_box(x_31); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_8); +return x_33; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_eq(x_2, x_3); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_dec(x_4); +x_11 = lean_array_uget(x_1, x_2); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +lean_dec(x_11); +x_13 = l_Lean_Meta_ensureEqnReservedNamesAvailable(x_12, x_7, x_8, x_9); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; size_t x_16; size_t x_17; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = 1; +x_17 = lean_usize_add(x_2, x_16); +x_2 = x_17; +x_4 = x_14; +x_9 = x_15; +goto _start; +} +else +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_13); +if (x_19 == 0) +{ +return x_13; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_13, 0); +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_13); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +} +else +{ +lean_object* x_23; +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_4); +lean_ctor_set(x_23, 1, x_9); +return x_23; +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__4; +x_2 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +lean_ctor_set(x_2, 4, x_1); +lean_ctor_set(x_2, 5, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_registerEqnsInfo(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_82; uint8_t x_83; +x_9 = lean_array_get_size(x_1); +x_82 = lean_unsigned_to_nat(0u); +x_83 = lean_nat_dec_lt(x_82, x_9); +if (x_83 == 0) +{ +x_10 = x_8; +goto block_81; +} +else +{ +uint8_t x_84; +x_84 = lean_nat_dec_le(x_9, x_9); +if (x_84 == 0) +{ +x_10 = x_8; +goto block_81; +} +else +{ +size_t x_85; size_t x_86; lean_object* x_87; lean_object* x_88; +x_85 = 0; +x_86 = lean_usize_of_nat(x_9); +x_87 = lean_box(0); +x_88 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5(x_1, x_85, x_86, x_87, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_88) == 0) +{ +lean_object* x_89; +x_89 = lean_ctor_get(x_88, 1); +lean_inc(x_89); +lean_dec(x_88); +x_10 = x_89; +goto block_81; +} +else +{ +uint8_t x_90; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_90 = !lean_is_exclusive(x_88); +if (x_90 == 0) +{ +return x_88; +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_88, 0); +x_92 = lean_ctor_get(x_88, 1); +lean_inc(x_92); +lean_inc(x_91); +lean_dec(x_88); +x_93 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_93, 0, x_91); +lean_ctor_set(x_93, 1, x_92); +return x_93; +} +} +} +} +block_81: +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_unsigned_to_nat(0u); +x_12 = lean_nat_dec_lt(x_11, x_9); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_13 = lean_box(0); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_10); +return x_14; +} +else +{ +size_t x_15; size_t x_16; uint8_t x_17; +x_15 = 0; +x_16 = lean_usize_of_nat(x_9); +x_17 = l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1(x_1, x_15, x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_18 = lean_box(0); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_10); +return x_19; +} +else +{ +uint8_t x_20; lean_object* x_21; lean_object* x_70; +lean_inc(x_7); +lean_inc(x_5); +x_70 = l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4(x_1, x_15, x_16, x_4, x_5, x_6, x_7, x_10); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; uint8_t x_72; +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_unbox(x_71); +lean_dec(x_71); +if (x_72 == 0) +{ +lean_object* x_73; uint8_t x_74; +x_73 = lean_ctor_get(x_70, 1); +lean_inc(x_73); +lean_dec(x_70); +x_74 = 1; +x_20 = x_74; +x_21 = x_73; +goto block_69; +} +else +{ +lean_object* x_75; uint8_t x_76; +x_75 = lean_ctor_get(x_70, 1); +lean_inc(x_75); +lean_dec(x_70); +x_76 = 0; +x_20 = x_76; +x_21 = x_75; +goto block_69; +} +} +else +{ +uint8_t x_77; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_77 = !lean_is_exclusive(x_70); +if (x_77 == 0) +{ +return x_70; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_70, 0); +x_79 = lean_ctor_get(x_70, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_70); +x_80 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_80, 0, x_78); +lean_ctor_set(x_80, 1, x_79); +return x_80; +} +} +block_69: +{ +if (x_20 == 0) +{ +size_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_65; +x_22 = lean_array_size(x_1); +lean_inc(x_1); +x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(x_22, x_15, x_1); +x_24 = lean_st_ref_take(x_7, x_21); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +x_29 = lean_ctor_get(x_25, 2); +lean_inc(x_29); +x_30 = lean_ctor_get(x_25, 3); +lean_inc(x_30); +x_31 = lean_ctor_get(x_25, 5); +lean_inc(x_31); +x_32 = lean_ctor_get(x_25, 6); +lean_inc(x_32); +x_33 = lean_ctor_get(x_25, 7); +lean_inc(x_33); +if (lean_is_exclusive(x_25)) { + lean_ctor_release(x_25, 0); + lean_ctor_release(x_25, 1); + lean_ctor_release(x_25, 2); + lean_ctor_release(x_25, 3); + lean_ctor_release(x_25, 4); + lean_ctor_release(x_25, 5); + lean_ctor_release(x_25, 6); + lean_ctor_release(x_25, 7); + x_34 = x_25; +} else { + lean_dec_ref(x_25); + x_34 = lean_box(0); +} +x_65 = lean_nat_dec_le(x_9, x_9); +lean_dec(x_9); +if (x_65 == 0) +{ +lean_dec(x_23); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_35 = x_27; +goto block_64; +} +else +{ +lean_object* x_66; +x_66 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3(x_2, x_3, x_23, x_1, x_15, x_16, x_27); +lean_dec(x_1); +x_35 = x_66; +goto block_64; +} +block_64: +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_36 = l_Lean_Elab_PartialFixpoint_mkEqns___closed__5; +if (lean_is_scalar(x_34)) { + x_37 = lean_alloc_ctor(0, 8, 0); +} else { + x_37 = x_34; +} +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_28); +lean_ctor_set(x_37, 2, x_29); +lean_ctor_set(x_37, 3, x_30); +lean_ctor_set(x_37, 4, x_36); +lean_ctor_set(x_37, 5, x_31); +lean_ctor_set(x_37, 6, x_32); +lean_ctor_set(x_37, 7, x_33); +x_38 = lean_st_ref_set(x_7, x_37, x_26); +lean_dec(x_7); +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = lean_st_ref_take(x_5, x_39); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = !lean_is_exclusive(x_41); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_44 = lean_ctor_get(x_41, 1); +lean_dec(x_44); +x_45 = l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1; +lean_ctor_set(x_41, 1, x_45); +x_46 = lean_st_ref_set(x_5, x_41, x_42); +lean_dec(x_5); +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_46, 0); +lean_dec(x_48); +x_49 = lean_box(0); +lean_ctor_set(x_46, 0, x_49); +return x_46; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_46, 1); +lean_inc(x_50); +lean_dec(x_46); +x_51 = lean_box(0); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_50); +return x_52; +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_53 = lean_ctor_get(x_41, 0); +x_54 = lean_ctor_get(x_41, 2); +x_55 = lean_ctor_get(x_41, 3); +x_56 = lean_ctor_get(x_41, 4); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_41); +x_57 = l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1; +x_58 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_58, 0, x_53); +lean_ctor_set(x_58, 1, x_57); +lean_ctor_set(x_58, 2, x_54); +lean_ctor_set(x_58, 3, x_55); +lean_ctor_set(x_58, 4, x_56); +x_59 = lean_st_ref_set(x_5, x_58, x_42); +lean_dec(x_5); +x_60 = lean_ctor_get(x_59, 1); +lean_inc(x_60); +if (lean_is_exclusive(x_59)) { + lean_ctor_release(x_59, 0); + lean_ctor_release(x_59, 1); + x_61 = x_59; +} else { + lean_dec_ref(x_59); + x_61 = lean_box(0); +} +x_62 = lean_box(0); +if (lean_is_scalar(x_61)) { + x_63 = lean_alloc_ctor(0, 2, 0); +} else { + x_63 = x_61; +} +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_60); +return x_63; +} +} +} +else +{ +lean_object* x_67; lean_object* x_68; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_67 = lean_box(0); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_21); +return x_68; +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__1(x_1, x_4, x_5); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +size_t x_8; size_t x_9; lean_object* x_10; +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3(x_1, x_2, x_3, x_4, x_8, x_9, x_7); +lean_dec(x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_10 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_11 = l_Array_anyMUnsafe_any___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__4(x_1, x_9, x_10, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__5(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getEqnsFor_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; uint8_t x_8; +x_7 = lean_st_ref_get(x_5, x_6); +x_8 = !lean_is_exclusive(x_7); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_7, 0); +x_10 = lean_ctor_get(x_7, 1); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +lean_dec(x_9); +x_12 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_13 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1; +lean_inc(x_1); +x_14 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_12, x_13, x_11, x_1); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_15 = lean_box(0); +lean_ctor_set(x_7, 0, x_15); +return x_7; +} +else +{ +uint8_t x_16; +lean_free_object(x_7); +x_16 = !lean_is_exclusive(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_14, 0); +x_18 = l_Lean_Elab_PartialFixpoint_mkEqns(x_1, x_17, x_2, x_3, x_4, x_5, x_10); +if (lean_obj_tag(x_18) == 0) +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_18, 0); +lean_ctor_set(x_14, 0, x_20); +lean_ctor_set(x_18, 0, x_14); +return x_18; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_18, 0); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_18); +lean_ctor_set(x_14, 0, x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_14); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +else +{ +uint8_t x_24; +lean_free_object(x_14); +x_24 = !lean_is_exclusive(x_18); +if (x_24 == 0) +{ +return x_18; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_18, 0); +x_26 = lean_ctor_get(x_18, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_18); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +else +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_14, 0); +lean_inc(x_28); +lean_dec(x_14); +x_29 = l_Lean_Elab_PartialFixpoint_mkEqns(x_1, x_28, x_2, x_3, x_4, x_5, x_10); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +if (lean_is_exclusive(x_29)) { + lean_ctor_release(x_29, 0); + lean_ctor_release(x_29, 1); + x_32 = x_29; +} else { + lean_dec_ref(x_29); + x_32 = lean_box(0); +} +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_30); +if (lean_is_scalar(x_32)) { + x_34 = lean_alloc_ctor(0, 2, 0); +} else { + x_34 = x_32; +} +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_31); +return x_34; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_35 = lean_ctor_get(x_29, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_29, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_29)) { + lean_ctor_release(x_29, 0); + lean_ctor_release(x_29, 1); + x_37 = x_29; +} else { + lean_dec_ref(x_29); + x_37 = lean_box(0); +} +if (lean_is_scalar(x_37)) { + x_38 = lean_alloc_ctor(1, 2, 0); +} else { + x_38 = x_37; +} +lean_ctor_set(x_38, 0, x_35); +lean_ctor_set(x_38, 1, x_36); +return x_38; +} +} +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_39 = lean_ctor_get(x_7, 0); +x_40 = lean_ctor_get(x_7, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_7); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +lean_dec(x_39); +x_42 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_43 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1; +lean_inc(x_1); +x_44 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_42, x_43, x_41, x_1); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_45 = lean_box(0); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_40); +return x_46; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_44, 0); +lean_inc(x_47); +if (lean_is_exclusive(x_44)) { + lean_ctor_release(x_44, 0); + x_48 = x_44; +} else { + lean_dec_ref(x_44); + x_48 = lean_box(0); +} +x_49 = l_Lean_Elab_PartialFixpoint_mkEqns(x_1, x_47, x_2, x_3, x_4, x_5, x_40); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_49, 1); +lean_inc(x_51); +if (lean_is_exclusive(x_49)) { + lean_ctor_release(x_49, 0); + lean_ctor_release(x_49, 1); + x_52 = x_49; +} else { + lean_dec_ref(x_49); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_48)) { + x_53 = lean_alloc_ctor(1, 1, 0); +} else { + x_53 = x_48; +} +lean_ctor_set(x_53, 0, x_50); +if (lean_is_scalar(x_52)) { + x_54 = lean_alloc_ctor(0, 2, 0); +} else { + x_54 = x_52; +} +lean_ctor_set(x_54, 0, x_53); +lean_ctor_set(x_54, 1, x_51); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +lean_dec(x_48); +x_55 = lean_ctor_get(x_49, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_49, 1); +lean_inc(x_56); +if (lean_is_exclusive(x_49)) { + lean_ctor_release(x_49, 0); + lean_ctor_release(x_49, 1); + x_57 = x_49; +} else { + lean_dec_ref(x_49); + x_57 = lean_box(0); +} +if (lean_is_scalar(x_57)) { + x_58 = lean_alloc_ctor(1, 2, 0); +} else { + x_58 = x_57; +} +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_56); +return x_58; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_5 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1; +x_6 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_4, x_5, x_1, x_2); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; +x_7 = lean_box(0); +return x_7; +} +else +{ +uint8_t x_8; +x_8 = !lean_is_exclusive(x_6); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_ctor_get(x_6, 0); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +lean_dec(x_9); +lean_ctor_set(x_6, 0, x_10); +return x_6; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_6, 0); +lean_inc(x_11); +lean_dec(x_6); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +lean_dec(x_11); +x_13 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_13, 0, x_12); +return x_13; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_7 = lean_st_ref_get(x_5, x_6); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +lean_dec(x_8); +lean_inc(x_1); +x_11 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1___boxed), 3, 2); +lean_closure_set(x_11, 0, x_10); +lean_closure_set(x_11, 1, x_1); +x_12 = l_Lean_Elab_Eqns_getUnfoldFor_x3f(x_1, x_11, x_2, x_3, x_4, x_5, x_9); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_getEqnsFor_x3f), 6, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_getUnfoldFor_x3f), 6, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1; +x_3 = l_Lean_Meta_registerGetEqnsFn(x_2, x_1); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_3, 1); +lean_inc(x_4); +lean_dec(x_3); +x_5 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2; +x_6 = l_Lean_Meta_registerGetUnfoldEqnFn(x_5, x_4); +return x_6; +} +else +{ +uint8_t x_7; +x_7 = !lean_is_exclusive(x_3); +if (x_7 == 0) +{ +return x_3; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 0); +x_9 = lean_ctor_get(x_3, 1); +lean_inc(x_9); +lean_inc(x_8); +lean_dec(x_3); +x_10 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +return x_10; +} +} +} +} +lean_object* initialize_Lean_Elab_Tactic_Conv(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Rewrite(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Split(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_Eqns(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_ArgsPacker_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Data_Array_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Internal_Order_Basic(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Elab_Tactic_Conv(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Rewrite(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Split(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_Eqns(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_ArgsPacker_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Data_Array_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Internal_Order_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1 = _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__1); +l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2 = _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__2); +l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3 = _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__3); +l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4 = _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo___closed__4); +l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo = _init_l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__3); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__4); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__5); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__6); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__7); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_deltaLHSUntilFix___lambda__2___closed__8); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__1); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__2); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__3); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__4); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__5); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__6); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__7); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__8); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__9); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__10); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__11); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__12); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__13); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__14); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__15); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__16); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__17 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__17(); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__18); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__19); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__20); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__21); +l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22 = _init_l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_rwFixUnder___closed__22); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__3); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__4); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_rwFixEq___lambda__1___closed__5); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__3); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__4); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___lambda__1___closed__5(); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__3); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__4); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__5); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Eqns_0__Lean_Elab_PartialFixpoint_mkProof___closed__6); +l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__1___closed__1(); +l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__1); +l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___lambda__2___closed__2); +l_Lean_Elab_PartialFixpoint_mkEqns___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___closed__1); +l_Lean_Elab_PartialFixpoint_mkEqns___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___closed__2); +l_Lean_Elab_PartialFixpoint_mkEqns___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___closed__3); +l_Lean_Elab_PartialFixpoint_mkEqns___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___closed__4); +l_Lean_Elab_PartialFixpoint_mkEqns___closed__5 = _init_l_Lean_Elab_PartialFixpoint_mkEqns___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkEqns___closed__5); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__2); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296____closed__3); +if (builtin) {res = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1296_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +l_Lean_Elab_PartialFixpoint_eqnInfoExt = lean_io_result_get_value(res); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_eqnInfoExt); +lean_dec_ref(res); +}l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1(); +lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__3___closed__1); +l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1 = _init_l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_registerEqnsInfo___closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569____closed__2); +if (builtin) {res = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Eqns___hyg_1569_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Induction.c b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Induction.c new file mode 100644 index 0000000000..a4d7147e26 --- /dev/null +++ b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Induction.c @@ -0,0 +1,11115 @@ +// Lean compiler output +// Module: Lean.Elab.PreDefinition.PartialFixpoint.Induction +// Imports: Lean.Meta.Basic Lean.Meta.Match.MatcherApp.Transform Lean.Meta.Check Lean.Meta.Tactic.Subst Lean.Meta.Injective Lean.Meta.ArgsPacker Lean.Meta.PProdN Lean.Meta.Tactic.Apply Lean.Elab.PreDefinition.PartialFixpoint.Eqns Lean.Elab.Command Lean.Meta.Tactic.ElimInfo +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1; +extern lean_object* l_Lean_Elab_PartialFixpoint_eqnInfoExt; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3; +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7; +lean_object* l_Lean_registerReservedNameAction(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19(lean_object*); +lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkAppOptM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_mk_empty_array_with_capacity(lean_object*); +lean_object* l_Lean_mkAppN(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___boxed(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___boxed(lean_object**); +lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7; +lean_object* l_Lean_indentD(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1; +static uint64_t l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__3; +uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isApp(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4(lean_object*, size_t, size_t, lean_object*); +lean_object* l_Lean_Expr_sort___override(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1; +lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +lean_object* lean_mk_array(lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___boxed(lean_object**); +uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1(lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_pack(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2; +lean_object* l_Lean_Meta_mkExpectedTypeHint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12; +lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10; +lean_object* l_Lean_Expr_fvarId_x21(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1; +lean_object* l_Lean_Environment_find_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2(lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_ConstantInfo_hasValue(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_elimOptParam___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8; +lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_stringToMessageData(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isInductName___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4; +uint8_t lean_string_dec_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5; +lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844_(lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12(lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9; +lean_object* l_Lean_ConstantInfo_value_x21(lean_object*, uint8_t); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1; +lean_object* l_Lean_CollectLevelParams_main(lean_object*, lean_object*); +lean_object* l_Lean_Level_ofNat(lean_object*); +lean_object* l_Lean_Expr_appArg_x21(lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1(lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isLambda(lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isOptionFixpoint(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +size_t lean_usize_of_nat(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_CCPOProdProjs___boxed(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__2___boxed(lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_reverse___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2; +static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_zip___rarg(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8; +lean_object* l_Array_unzip___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9; +lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1; +lean_object* l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_genMk___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1; +lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +lean_object* l_outOfBounds___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +lean_object* lean_array_pop(lean_object*); +lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2; +lean_object* lean_st_mk_ref(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1; +lean_object* l_Lean_Meta_PProdN_projs(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); +lean_object* l_Lean_Name_append(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__2(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11(lean_object*); +extern lean_object* l_Lean_instInhabitedExpr; +lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_name_eq(lean_object*, lean_object*); +lean_object* l_Lean_Core_betaReduce___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11; +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1; +lean_object* l_Lean_MapDeclarationExtension_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1; +lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9(size_t, size_t, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_CCPOProdProjs(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2; +lean_object* l_Lean_registerReservedNamePredicate(lean_object*, lean_object*); +extern lean_object* l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5; +lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16(size_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_append___rarg(lean_object*, lean_object*); +uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___boxed(lean_object**); +lean_object* l_Lean_MessageData_ofExpr(lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3; +static lean_object* l_Lean_Elab_PartialFixpoint_isInductName___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2; +lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isInductName(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2; +uint8_t l_Lean_Expr_hasAnyFVar_visit___at_Lean_Expr_containsFVar___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7; +static lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2; +lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1; +lean_object* l_Lean_Meta_mapErrorImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1; +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5; +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4; +lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__2(lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3; +static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1; +lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_indentExpr(lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1; +uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5; +uint8_t l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2; +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isInductName___lambda__1(lean_object*); +lean_object* lean_panic_fn(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1; +lean_object* lean_nat_sub(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1; +lean_object* l_Lean_Meta_PProdN_mk(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2; +lean_object* l_Lean_mkArrow(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1; +lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658_(lean_object*); +lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray(lean_object*); +lean_object* l_List_reverse___rarg(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14; +lean_object* lean_array_mk(lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3; +lean_object* l_Lean_Meta_PProdN_stripProjs(lean_object*); +lean_object* l_Lean_Meta_elimOptParam___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_add(size_t, size_t); +static lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___boxed(lean_object**); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6; +extern lean_object* l_Lean_instInhabitedName; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15(size_t, size_t, lean_object*); +lean_object* lean_array_uget(lean_object*, size_t); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_array_size(lean_object*); +extern lean_object* l_Lean_instInhabitedDefinitionVal; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1; +lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_bindingBody_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13; +lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_string_append(lean_object*, lean_object*); +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1; +lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isInductName___lambda__1___boxed(lean_object*); +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5(size_t, size_t, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1; +lean_object* lean_expr_dbg_to_string(lean_object*); +lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_add(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_whnfUntil(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(lean_object*, lean_object*); +lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14; +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1; +static lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1; +lean_object* l_Lean_MessageData_ofName(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName(lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Core_betaReduce___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__1(lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7; +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Order", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_and", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmAnd(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_1); +x_11 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_11, 0, x_2); +x_12 = lean_box(0); +x_13 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_13, 0, x_3); +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_4); +x_15 = lean_box(0); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_13); +lean_ctor_set(x_17, 1, x_16); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_12); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_12); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_11); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_10); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_array_mk(x_21); +x_23 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4; +x_24 = l_Lean_Meta_mkAppOptM(x_23, x_22, x_5, x_6, x_7, x_8, x_9); +return x_24; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_pprod_snd", 20, 20); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_pprod_fst", 20, 20); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; uint8_t x_13; +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_eq(x_1, x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_unsigned_to_nat(1u); +x_15 = lean_nat_sub(x_1, x_14); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_16 = l_Lean_Elab_PartialFixpoint_mkAdmProj(x_6, x_15, x_2, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_15); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_19, 0, x_3); +x_20 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_20, 0, x_4); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, x_5); +x_22 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_22, 0, x_6); +x_23 = lean_box(0); +x_24 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_24, 0, x_17); +x_25 = lean_box(0); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_23); +lean_ctor_set(x_27, 1, x_26); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_22); +lean_ctor_set(x_28, 1, x_27); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_21); +lean_ctor_set(x_29, 1, x_28); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_20); +lean_ctor_set(x_30, 1, x_29); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_19); +lean_ctor_set(x_31, 1, x_30); +x_32 = lean_array_mk(x_31); +x_33 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2; +x_34 = l_Lean_Meta_mkAppOptM(x_33, x_32, x_7, x_8, x_9, x_10, x_18); +return x_34; +} +else +{ +uint8_t x_35; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_35 = !lean_is_exclusive(x_16); +if (x_35 == 0) +{ +return x_16; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_16, 0); +x_37 = lean_ctor_get(x_16, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_16); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_3); +x_40 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_40, 0, x_4); +x_41 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_41, 0, x_5); +x_42 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_42, 0, x_6); +x_43 = lean_box(0); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_2); +x_45 = lean_box(0); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_43); +lean_ctor_set(x_47, 1, x_46); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_42); +lean_ctor_set(x_48, 1, x_47); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_41); +lean_ctor_set(x_49, 1, x_48); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_40); +lean_ctor_set(x_50, 1, x_49); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_39); +lean_ctor_set(x_51, 1, x_50); +x_52 = lean_array_mk(x_51); +x_53 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4; +x_54 = l_Lean_Meta_mkAppOptM(x_53, x_52, x_7, x_8, x_9, x_10, x_11); +return x_54; +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("mkAdmProj: unexpected instance ", 31, 31); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = l_Lean_MessageData_ofExpr(x_1); +x_9 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2; +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +x_11 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_12 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_12, x_3, x_4, x_5, x_6, x_7); +return x_13; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPOPProd", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("i == 0\n ", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PreDefinition.PartialFixpoint.Induction", 49, 49); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PartialFixpoint.mkAdmProj", 35, 35); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7; +x_3 = lean_unsigned_to_nat(38u); +x_4 = lean_unsigned_to_nat(4u); +x_5 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_10 = l_Lean_Meta_whnfUntil(x_1, x_9, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +x_12 = !lean_is_exclusive(x_10); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_13 = lean_ctor_get(x_10, 1); +x_14 = lean_ctor_get(x_10, 0); +lean_dec(x_14); +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_nat_dec_eq(x_2, x_15); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +lean_free_object(x_10); +lean_dec(x_3); +x_17 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8; +x_18 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_17, x_4, x_5, x_6, x_7, x_13); +return x_18; +} +else +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_ctor_set(x_10, 0, x_3); +return x_10; +} +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_10, 1); +lean_inc(x_19); +lean_dec(x_10); +x_20 = lean_unsigned_to_nat(0u); +x_21 = lean_nat_dec_eq(x_2, x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_3); +x_22 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8; +x_23 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_22, x_4, x_5, x_6, x_7, x_19); +return x_23; +} +else +{ +lean_object* x_24; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_3); +lean_ctor_set(x_24, 1, x_19); +return x_24; +} +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_25 = lean_ctor_get(x_10, 1); +lean_inc(x_25); +lean_dec(x_10); +x_26 = lean_ctor_get(x_11, 0); +lean_inc(x_26); +lean_dec(x_11); +lean_inc(x_26); +x_27 = l_Lean_Expr_cleanupAnnotations(x_26); +x_28 = l_Lean_Expr_isApp(x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_27); +lean_dec(x_3); +x_29 = lean_box(0); +x_30 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_26, x_29, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = l_Lean_Expr_appArg(x_27, lean_box(0)); +x_32 = l_Lean_Expr_appFnCleanup(x_27, lean_box(0)); +x_33 = l_Lean_Expr_isApp(x_32); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_3); +x_34 = lean_box(0); +x_35 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_26, x_34, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_36 = l_Lean_Expr_appArg(x_32, lean_box(0)); +x_37 = l_Lean_Expr_appFnCleanup(x_32, lean_box(0)); +x_38 = l_Lean_Expr_isApp(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_37); +lean_dec(x_36); +lean_dec(x_31); +lean_dec(x_3); +x_39 = lean_box(0); +x_40 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_26, x_39, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_40; +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Lean_Expr_appArg(x_37, lean_box(0)); +x_42 = l_Lean_Expr_appFnCleanup(x_37, lean_box(0)); +x_43 = l_Lean_Expr_isApp(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_42); +lean_dec(x_41); +lean_dec(x_36); +lean_dec(x_31); +lean_dec(x_3); +x_44 = lean_box(0); +x_45 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_26, x_44, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = l_Lean_Expr_appArg(x_42, lean_box(0)); +x_47 = l_Lean_Expr_appFnCleanup(x_42, lean_box(0)); +x_48 = l_Lean_Expr_isConstOf(x_47, x_9); +lean_dec(x_47); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; +lean_dec(x_46); +lean_dec(x_41); +lean_dec(x_36); +lean_dec(x_31); +lean_dec(x_3); +x_49 = lean_box(0); +x_50 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_26, x_49, x_4, x_5, x_6, x_7, x_25); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_50; +} +else +{ +lean_object* x_51; +lean_dec(x_26); +x_51 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1(x_2, x_3, x_46, x_41, x_36, x_31, x_4, x_5, x_6, x_7, x_25); +return x_51; +} +} +} +} +} +} +} +else +{ +uint8_t x_52; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_52 = !lean_is_exclusive(x_10); +if (x_52 == 0) +{ +return x_10; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_10, 0); +x_54 = lean_ctor_get(x_10, 1); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_10); +x_55 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +return x_55; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkAdmProj___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_PartialFixpoint_mkAdmProj(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_4 = lean_array_pop(x_1); +x_5 = lean_array_push(x_4, x_2); +x_6 = lean_array_push(x_5, x_3); +x_7 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_7, 0, x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__2(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_array_get_size(x_2); +x_4 = lean_nat_dec_lt(x_3, x_1); +lean_dec(x_3); +if (x_4 == 0) +{ +return x_2; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_5 = l_Lean_instInhabitedExpr; +x_6 = l_Array_back_x21___rarg(x_5, x_2); +x_7 = l_Lean_Expr_cleanupAnnotations(x_6); +x_8 = l_Lean_Expr_isApp(x_7); +if (x_8 == 0) +{ +lean_dec(x_7); +goto _start; +} +else +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_10 = l_Lean_Expr_appArg(x_7, lean_box(0)); +x_11 = l_Lean_Expr_appFnCleanup(x_7, lean_box(0)); +x_12 = l_Lean_Expr_isApp(x_11); +if (x_12 == 0) +{ +lean_dec(x_11); +lean_dec(x_10); +goto _start; +} +else +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = l_Lean_Expr_appArg(x_11, lean_box(0)); +x_15 = l_Lean_Expr_appFnCleanup(x_11, lean_box(0)); +x_16 = l_Lean_Expr_isApp(x_15); +if (x_16 == 0) +{ +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_10); +goto _start; +} +else +{ +lean_object* x_18; uint8_t x_19; +x_18 = l_Lean_Expr_appFnCleanup(x_15, lean_box(0)); +x_19 = l_Lean_Expr_isApp(x_18); +if (x_19 == 0) +{ +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_10); +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = l_Lean_Expr_appFnCleanup(x_18, lean_box(0)); +x_22 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2; +x_23 = l_Lean_Expr_isConstOf(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_dec(x_14); +lean_dec(x_10); +goto _start; +} +else +{ +lean_object* x_25; lean_object* x_26; +x_25 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__1(x_2, x_14, x_10); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +lean_dec(x_25); +x_2 = x_26; +goto _start; +} +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_CCPOProdProjs(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_3 = lean_box(0); +x_4 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_4, 0, x_2); +lean_ctor_set(x_4, 1, x_3); +x_5 = lean_array_mk(x_4); +x_6 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1(x_1, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___lambda__2(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_CCPOProdProjs___spec__1(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_CCPOProdProjs___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Elab_PartialFixpoint_CCPOProdProjs(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = lean_usize_dec_lt(x_5, x_4); +if (x_7 == 0) +{ +return x_6; +} +else +{ +lean_object* x_8; uint8_t x_9; uint8_t x_10; +x_8 = lean_array_uget(x_3, x_5); +x_9 = lean_unbox(x_8); +lean_dec(x_8); +x_10 = !lean_is_exclusive(x_6); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_11 = lean_ctor_get(x_6, 0); +x_12 = lean_ctor_get(x_6, 1); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +x_15 = lean_ctor_get(x_11, 2); +lean_inc(x_15); +x_16 = lean_nat_dec_lt(x_14, x_15); +if (x_16 == 0) +{ +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +return x_6; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_11); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_18 = lean_ctor_get(x_11, 2); +lean_dec(x_18); +x_19 = lean_ctor_get(x_11, 1); +lean_dec(x_19); +x_20 = lean_ctor_get(x_11, 0); +lean_dec(x_20); +x_21 = lean_array_fget(x_13, x_14); +x_22 = lean_unsigned_to_nat(1u); +x_23 = lean_nat_add(x_14, x_22); +lean_dec(x_14); +lean_ctor_set(x_11, 1, x_23); +if (x_9 == 0) +{ +size_t x_24; size_t x_25; +lean_dec(x_21); +x_24 = 1; +x_25 = lean_usize_add(x_5, x_24); +x_5 = x_25; +goto _start; +} +else +{ +lean_object* x_27; size_t x_28; size_t x_29; +x_27 = lean_array_push(x_12, x_21); +lean_ctor_set(x_6, 1, x_27); +x_28 = 1; +x_29 = lean_usize_add(x_5, x_28); +x_5 = x_29; +goto _start; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_11); +x_31 = lean_array_fget(x_13, x_14); +x_32 = lean_unsigned_to_nat(1u); +x_33 = lean_nat_add(x_14, x_32); +lean_dec(x_14); +x_34 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_34, 0, x_13); +lean_ctor_set(x_34, 1, x_33); +lean_ctor_set(x_34, 2, x_15); +if (x_9 == 0) +{ +size_t x_35; size_t x_36; +lean_dec(x_31); +lean_ctor_set(x_6, 0, x_34); +x_35 = 1; +x_36 = lean_usize_add(x_5, x_35); +x_5 = x_36; +goto _start; +} +else +{ +lean_object* x_38; size_t x_39; size_t x_40; +x_38 = lean_array_push(x_12, x_31); +lean_ctor_set(x_6, 1, x_38); +lean_ctor_set(x_6, 0, x_34); +x_39 = 1; +x_40 = lean_usize_add(x_5, x_39); +x_5 = x_40; +goto _start; +} +} +} +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_42 = lean_ctor_get(x_6, 0); +x_43 = lean_ctor_get(x_6, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_6); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_ctor_get(x_42, 1); +lean_inc(x_45); +x_46 = lean_ctor_get(x_42, 2); +lean_inc(x_46); +x_47 = lean_nat_dec_lt(x_45, x_46); +if (x_47 == 0) +{ +lean_object* x_48; +lean_dec(x_46); +lean_dec(x_45); +lean_dec(x_44); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_42); +lean_ctor_set(x_48, 1, x_43); +return x_48; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +if (lean_is_exclusive(x_42)) { + lean_ctor_release(x_42, 0); + lean_ctor_release(x_42, 1); + lean_ctor_release(x_42, 2); + x_49 = x_42; +} else { + lean_dec_ref(x_42); + x_49 = lean_box(0); +} +x_50 = lean_array_fget(x_44, x_45); +x_51 = lean_unsigned_to_nat(1u); +x_52 = lean_nat_add(x_45, x_51); +lean_dec(x_45); +if (lean_is_scalar(x_49)) { + x_53 = lean_alloc_ctor(0, 3, 0); +} else { + x_53 = x_49; +} +lean_ctor_set(x_53, 0, x_44); +lean_ctor_set(x_53, 1, x_52); +lean_ctor_set(x_53, 2, x_46); +if (x_9 == 0) +{ +lean_object* x_54; size_t x_55; size_t x_56; +lean_dec(x_50); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_53); +lean_ctor_set(x_54, 1, x_43); +x_55 = 1; +x_56 = lean_usize_add(x_5, x_55); +x_5 = x_56; +x_6 = x_54; +goto _start; +} +else +{ +lean_object* x_58; lean_object* x_59; size_t x_60; size_t x_61; +x_58 = lean_array_push(x_43, x_50); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_53); +lean_ctor_set(x_59, 1, x_58); +x_60 = 1; +x_61 = lean_usize_add(x_5, x_60); +x_5 = x_61; +x_6 = x_59; +goto _start; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg___boxed), 6, 0); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_3 = lean_array_get_size(x_2); +x_4 = lean_unsigned_to_nat(0u); +x_5 = l_Array_toSubarray___rarg(x_2, x_4, x_3); +x_6 = lean_box(0); +x_7 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_5); +lean_ctor_set(x_8, 1, x_7); +x_9 = lean_array_size(x_1); +x_10 = 0; +x_11 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg(x_1, x_6, x_1, x_9, x_10, x_8); +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___boxed), 2, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_9 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___spec__1___rarg(x_1, x_2, x_3, x_7, x_8, x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_", 1, 1); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_unsigned_to_nat(1u); +x_5 = lean_nat_dec_eq(x_1, x_4); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_6 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3; +x_7 = lean_string_append(x_6, x_2); +lean_dec(x_2); +x_8 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1; +x_9 = lean_string_append(x_7, x_8); +x_10 = lean_nat_add(x_3, x_4); +x_11 = l___private_Init_Data_Repr_0__Nat_reprFast(x_10); +x_12 = lean_string_append(x_9, x_11); +lean_dec(x_11); +x_13 = lean_string_append(x_12, x_6); +x_14 = lean_box(0); +x_15 = l_Lean_Name_str___override(x_14, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_box(0); +x_17 = l_Lean_Name_str___override(x_16, x_2); +return x_17; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; +lean_inc(x_1); +x_3 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___boxed), 3, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +x_4 = l_Array_ofFn___rarg(x_1, x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_ctor_get(x_4, 5); +x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_7); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set_tag(x_8, 1); +lean_ctor_set(x_8, 0, x_11); +return x_8; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_8, 0); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_8); +lean_inc(x_7); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_12); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +static lean_object* _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("'", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' is not a definition", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_1); +x_7 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +if (lean_obj_tag(x_8) == 1) +{ +uint8_t x_9; +lean_dec(x_1); +x_9 = !lean_is_exclusive(x_7); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_7, 0); +lean_dec(x_10); +x_11 = lean_ctor_get(x_8, 0); +lean_inc(x_11); +lean_dec(x_8); +lean_ctor_set(x_7, 0, x_11); +return x_7; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_7, 1); +lean_inc(x_12); +lean_dec(x_7); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_12); +return x_14; +} +} +else +{ +lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_dec(x_8); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = 0; +x_17 = l_Lean_MessageData_ofConstName(x_1, x_16); +x_18 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +x_20 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +x_22 = l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2(x_21, x_2, x_3, x_4, x_5, x_15); +return x_22; +} +} +else +{ +uint8_t x_23; +lean_dec(x_1); +x_23 = !lean_is_exclusive(x_7); +if (x_23 == 0) +{ +return x_7; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_7, 0); +x_25 = lean_ctor_get(x_7, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_7); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_2, x_1); +if (x_9 == 0) +{ +lean_object* x_10; +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_3); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_array_uget(x_3, x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_array_uset(x_3, x_2, x_12); +x_14 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1(x_11, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = 1; +x_18 = lean_usize_add(x_2, x_17); +x_19 = lean_array_uset(x_13, x_2, x_15); +x_2 = x_18; +x_3 = x_19; +x_8 = x_16; +goto _start; +} +else +{ +uint8_t x_21; +lean_dec(x_13); +x_21 = !lean_is_exclusive(x_14); +if (x_21 == 0) +{ +return x_14; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_14, 0); +x_23 = lean_ctor_get(x_14, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_14); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_3, x_2); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_4); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_array_uget(x_4, x_3); +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_array_uset(x_4, x_3, x_13); +x_15 = lean_ctor_get(x_12, 0); +lean_inc(x_15); +lean_dec(x_12); +x_16 = lean_ctor_get(x_15, 2); +lean_inc(x_16); +lean_dec(x_15); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_17 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(x_1, x_13, x_16, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; size_t x_20; size_t x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = 1; +x_21 = lean_usize_add(x_3, x_20); +x_22 = lean_array_uset(x_14, x_3, x_18); +x_3 = x_21; +x_4 = x_22; +x_9 = x_19; +goto _start; +} +else +{ +uint8_t x_24; +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_24 = !lean_is_exclusive(x_17); +if (x_24 == 0) +{ +return x_17; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_17, 0); +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_17); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_3, x_2); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_1); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_4); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; +x_12 = lean_array_uget(x_4, x_3); +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_array_uset(x_4, x_3, x_13); +lean_inc(x_1); +x_15 = l_Lean_Expr_sort___override(x_1); +x_16 = l_Lean_mkArrow(x_12, x_15, x_7, x_8, x_9); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = 1; +x_20 = lean_usize_add(x_3, x_19); +x_21 = lean_array_uset(x_14, x_3, x_17); +x_3 = x_20; +x_4 = x_21; +x_9 = x_18; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_eq(x_5, x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_11 = lean_unsigned_to_nat(1u); +x_12 = lean_nat_sub(x_5, x_11); +lean_dec(x_5); +x_13 = lean_array_fget(x_4, x_6); +x_14 = lean_array_get_size(x_2); +lean_inc(x_3); +lean_inc(x_1); +lean_inc(x_6); +x_15 = l_Lean_Meta_PProdN_proj(x_14, x_6, x_1, x_3); +x_16 = l_Lean_Expr_app___override(x_13, x_15); +x_17 = lean_nat_add(x_6, x_11); +lean_dec(x_6); +x_18 = lean_array_push(x_8, x_16); +x_5 = x_12; +x_6 = x_17; +x_7 = lean_box(0); +x_8 = x_18; +goto _start; +} +else +{ +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +return x_8; +} +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_nat_dec_eq(x_5, x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_16 = lean_unsigned_to_nat(1u); +x_17 = lean_nat_sub(x_5, x_16); +lean_dec(x_5); +x_18 = lean_array_fget(x_4, x_6); +x_19 = lean_array_get_size(x_2); +x_20 = lean_nat_dec_lt(x_6, x_19); +lean_dec(x_19); +x_21 = lean_array_get_size(x_1); +x_22 = lean_nat_dec_lt(x_6, x_21); +lean_dec(x_21); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_18); +x_24 = lean_box(0); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +if (x_20 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = l_Lean_instInhabitedExpr; +x_27 = l_outOfBounds___rarg(x_26); +x_28 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_28, 0, x_27); +if (x_22 == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_29 = l_outOfBounds___rarg(x_26); +x_30 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_30, 0, x_29); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_25); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_28); +lean_ctor_set(x_32, 1, x_31); +x_33 = lean_array_mk(x_32); +x_34 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_35 = l_Lean_Meta_mkAppOptM(x_34, x_33, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +x_39 = lean_array_push(x_8, x_36); +x_5 = x_17; +x_6 = x_38; +x_7 = lean_box(0); +x_8 = x_39; +x_13 = x_37; +goto _start; +} +else +{ +uint8_t x_41; +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_41 = !lean_is_exclusive(x_35); +if (x_41 == 0) +{ +return x_35; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_35, 0); +x_43 = lean_ctor_get(x_35, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_35); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_45 = lean_array_fget(x_1, x_6); +x_46 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_46, 0, x_45); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set(x_47, 1, x_25); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_28); +lean_ctor_set(x_48, 1, x_47); +x_49 = lean_array_mk(x_48); +x_50 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_51 = l_Lean_Meta_mkAppOptM(x_50, x_49, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +x_55 = lean_array_push(x_8, x_52); +x_5 = x_17; +x_6 = x_54; +x_7 = lean_box(0); +x_8 = x_55; +x_13 = x_53; +goto _start; +} +else +{ +uint8_t x_57; +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_57 = !lean_is_exclusive(x_51); +if (x_57 == 0) +{ +return x_51; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_51, 0); +x_59 = lean_ctor_get(x_51, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_51); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_array_fget(x_2, x_6); +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_61); +if (x_22 == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_63 = l_Lean_instInhabitedExpr; +x_64 = l_outOfBounds___rarg(x_63); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_64); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_25); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_62); +lean_ctor_set(x_67, 1, x_66); +x_68 = lean_array_mk(x_67); +x_69 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_70 = l_Lean_Meta_mkAppOptM(x_69, x_68, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +lean_dec(x_70); +x_73 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +x_74 = lean_array_push(x_8, x_71); +x_5 = x_17; +x_6 = x_73; +x_7 = lean_box(0); +x_8 = x_74; +x_13 = x_72; +goto _start; +} +else +{ +uint8_t x_76; +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_76 = !lean_is_exclusive(x_70); +if (x_76 == 0) +{ +return x_70; +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_70, 0); +x_78 = lean_ctor_get(x_70, 1); +lean_inc(x_78); +lean_inc(x_77); +lean_dec(x_70); +x_79 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +return x_79; +} +} +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_80 = lean_array_fget(x_1, x_6); +x_81 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_81, 0, x_80); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_81); +lean_ctor_set(x_82, 1, x_25); +x_83 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_83, 0, x_62); +lean_ctor_set(x_83, 1, x_82); +x_84 = lean_array_mk(x_83); +x_85 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_86 = l_Lean_Meta_mkAppOptM(x_85, x_84, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_86) == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); +lean_dec(x_86); +x_89 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +x_90 = lean_array_push(x_8, x_87); +x_5 = x_17; +x_6 = x_89; +x_7 = lean_box(0); +x_8 = x_90; +x_13 = x_88; +goto _start; +} +else +{ +uint8_t x_92; +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_92 = !lean_is_exclusive(x_86); +if (x_92 == 0) +{ +return x_86; +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_93 = lean_ctor_get(x_86, 0); +x_94 = lean_ctor_get(x_86, 1); +lean_inc(x_94); +lean_inc(x_93); +lean_dec(x_86); +x_95 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_95, 0, x_93); +lean_ctor_set(x_95, 1, x_94); +return x_95; +} +} +} +} +} +else +{ +lean_object* x_96; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_8); +lean_ctor_set(x_96, 1, x_13); +return x_96; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; uint8_t x_14; +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_nat_dec_eq(x_4, x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_unsigned_to_nat(1u); +x_16 = lean_nat_sub(x_4, x_15); +lean_dec(x_4); +x_17 = lean_array_fget(x_3, x_5); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_1); +x_18 = l_Lean_Elab_PartialFixpoint_mkAdmProj(x_1, x_5, x_17, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_nat_add(x_5, x_15); +lean_dec(x_5); +x_22 = lean_array_push(x_7, x_19); +x_4 = x_16; +x_5 = x_21; +x_6 = lean_box(0); +x_7 = x_22; +x_12 = x_20; +goto _start; +} +else +{ +uint8_t x_24; +lean_dec(x_16); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_18); +if (x_24 == 0) +{ +return x_18; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_18, 0); +x_26 = lean_ctor_get(x_18, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_18); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +else +{ +lean_object* x_28; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_7); +lean_ctor_set(x_28, 1, x_12); +return x_28; +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("f", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = lean_ctor_get(x_5, 0); +lean_inc(x_8); +lean_dec(x_5); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +lean_dec(x_8); +x_10 = 1; +x_11 = lean_usize_add(x_2, x_10); +if (lean_obj_tag(x_9) == 1) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_dec(x_9); +x_13 = lean_box(0); +x_14 = l_Lean_Name_str___override(x_13, x_12); +x_15 = lean_array_uset(x_7, x_2, x_14); +x_2 = x_11; +x_3 = x_15; +goto _start; +} +else +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_9); +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2; +x_18 = lean_array_uset(x_7, x_2, x_17); +x_2 = x_11; +x_3 = x_18; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_eq(x_5, x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; +x_11 = lean_unsigned_to_nat(1u); +x_12 = lean_nat_sub(x_5, x_11); +lean_dec(x_5); +x_13 = lean_array_fget(x_4, x_6); +x_14 = lean_nat_dec_lt(x_6, x_2); +x_15 = lean_nat_add(x_6, x_11); +if (x_14 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_dec(x_6); +x_16 = l_Lean_instInhabitedExpr; +x_17 = l_outOfBounds___rarg(x_16); +x_18 = l_Lean_Expr_app___override(x_17, x_13); +x_19 = lean_array_push(x_8, x_18); +x_5 = x_12; +x_6 = x_15; +x_7 = lean_box(0); +x_8 = x_19; +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_array_fget(x_1, x_6); +lean_dec(x_6); +x_22 = l_Lean_Expr_app___override(x_21, x_13); +x_23 = lean_array_push(x_8, x_22); +x_5 = x_12; +x_6 = x_15; +x_7 = lean_box(0); +x_8 = x_23; +goto _start; +} +} +else +{ +lean_dec(x_6); +lean_dec(x_5); +return x_8; +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("ih", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_5); +x_10 = 1; +x_11 = lean_usize_add(x_2, x_10); +x_12 = lean_array_uset(x_7, x_2, x_9); +x_2 = x_11; +x_3 = x_12; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = l_Lean_Expr_fvarId_x21(x_6); +lean_dec(x_6); +x_10 = l_Lean_Expr_hasAnyFVar_visit___at_Lean_Expr_containsFVar___spec__1(x_9, x_1); +lean_dec(x_9); +x_11 = 1; +x_12 = lean_usize_add(x_3, x_11); +x_13 = lean_box(x_10); +x_14 = lean_array_uset(x_8, x_3, x_13); +x_3 = x_12; +x_4 = x_14; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = l_Lean_Expr_fvarId_x21(x_6); +lean_dec(x_6); +x_10 = l_Lean_Expr_hasAnyFVar_visit___at_Lean_Expr_containsFVar___spec__1(x_9, x_1); +lean_dec(x_9); +x_11 = 1; +x_12 = lean_usize_add(x_3, x_11); +x_13 = lean_box(x_10); +x_14 = lean_array_uset(x_8, x_3, x_13); +x_3 = x_12; +x_4 = x_14; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_1); +lean_ctor_set(x_8, 1, x_7); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; size_t x_8; size_t x_9; uint8_t x_10; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = 1; +x_9 = lean_usize_add(x_2, x_8); +x_10 = !lean_is_exclusive(x_5); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_5, 1); +x_12 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1___boxed), 7, 1); +lean_closure_set(x_12, 0, x_11); +lean_ctor_set(x_5, 1, x_12); +x_13 = lean_array_uset(x_7, x_2, x_5); +x_2 = x_9; +x_3 = x_13; +goto _start; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_5, 0); +x_16 = lean_ctor_get(x_5, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_5); +x_17 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1___boxed), 7, 1); +lean_closure_set(x_17, 0, x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_15); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_array_uset(x_7, x_2, x_18); +x_2 = x_9; +x_3 = x_19; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_array_size(x_2); +x_10 = 0; +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15(x_9, x_10, x_2); +x_12 = l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(x_1, x_11, x_3, x_4, x_5, x_6, x_7, x_8); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg), 8, 0); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_2); +x_15 = l_Lean_Meta_PProdN_mk(x_1, x_2, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_box(0); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_16); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_array_mk(x_19); +x_21 = l_Lean_Expr_beta(x_3, x_20); +lean_inc(x_5); +lean_inc(x_4); +x_22 = l_Lean_Meta_PProdN_proj(x_4, x_5, x_6, x_21); +x_23 = lean_nat_dec_lt(x_5, x_4); +lean_dec(x_4); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_5); +x_24 = l_Lean_instInhabitedExpr; +x_25 = l_outOfBounds___rarg(x_24); +x_26 = l_Lean_Expr_app___override(x_25, x_22); +x_27 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1; +x_28 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2; +lean_inc(x_13); +lean_inc(x_12); +x_29 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_26, x_27, x_28, x_12, x_13, x_17); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; size_t x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; uint8_t x_38; uint8_t x_39; lean_object* x_40; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_array_size(x_2); +lean_inc(x_2); +x_33 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12(x_30, x_32, x_7, x_2); +x_34 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_33, x_2); +x_35 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_33, x_9); +x_36 = l_Array_append___rarg(x_34, x_35); +lean_dec(x_35); +x_37 = 0; +x_38 = 1; +x_39 = 1; +x_40 = l_Lean_Meta_mkForallFVars(x_36, x_30, x_37, x_38, x_39, x_10, x_11, x_12, x_13, x_31); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_36); +if (lean_obj_tag(x_40) == 0) +{ +uint8_t x_41; +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_40, 0); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_33); +lean_ctor_set(x_40, 0, x_43); +return x_40; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = lean_ctor_get(x_40, 0); +x_45 = lean_ctor_get(x_40, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_40); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_33); +x_47 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set(x_47, 1, x_45); +return x_47; +} +} +else +{ +uint8_t x_48; +lean_dec(x_33); +x_48 = !lean_is_exclusive(x_40); +if (x_48 == 0) +{ +return x_40; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_40, 0); +x_50 = lean_ctor_get(x_40, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_40); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +else +{ +uint8_t x_52; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_2); +x_52 = !lean_is_exclusive(x_29); +if (x_52 == 0) +{ +return x_29; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_29, 0); +x_54 = lean_ctor_get(x_29, 1); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_29); +x_55 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +return x_55; +} +} +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_56 = lean_array_fget(x_8, x_5); +lean_dec(x_5); +x_57 = l_Lean_Expr_app___override(x_56, x_22); +x_58 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1; +x_59 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2; +lean_inc(x_13); +lean_inc(x_12); +x_60 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_57, x_58, x_59, x_12, x_13, x_17); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; lean_object* x_62; size_t x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; uint8_t x_69; uint8_t x_70; lean_object* x_71; +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +lean_dec(x_60); +x_63 = lean_array_size(x_2); +lean_inc(x_2); +x_64 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13(x_61, x_63, x_7, x_2); +x_65 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_64, x_2); +x_66 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_64, x_9); +x_67 = l_Array_append___rarg(x_65, x_66); +lean_dec(x_66); +x_68 = 0; +x_69 = 1; +x_70 = 1; +x_71 = l_Lean_Meta_mkForallFVars(x_67, x_61, x_68, x_69, x_70, x_10, x_11, x_12, x_13, x_62); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_67); +if (lean_obj_tag(x_71) == 0) +{ +uint8_t x_72; +x_72 = !lean_is_exclusive(x_71); +if (x_72 == 0) +{ +lean_object* x_73; lean_object* x_74; +x_73 = lean_ctor_get(x_71, 0); +x_74 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_74, 0, x_73); +lean_ctor_set(x_74, 1, x_64); +lean_ctor_set(x_71, 0, x_74); +return x_71; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_75 = lean_ctor_get(x_71, 0); +x_76 = lean_ctor_get(x_71, 1); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_71); +x_77 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_64); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_76); +return x_78; +} +} +else +{ +uint8_t x_79; +lean_dec(x_64); +x_79 = !lean_is_exclusive(x_71); +if (x_79 == 0) +{ +return x_71; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_71, 0); +x_81 = lean_ctor_get(x_71, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_71); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; +} +} +} +else +{ +uint8_t x_83; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_2); +x_83 = !lean_is_exclusive(x_60); +if (x_83 == 0) +{ +return x_60; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_60, 0); +x_85 = lean_ctor_get(x_60, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_60); +x_86 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_86, 0, x_84); +lean_ctor_set(x_86, 1, x_85); +return x_86; +} +} +} +} +else +{ +uint8_t x_87; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_87 = !lean_is_exclusive(x_15); +if (x_87 == 0) +{ +return x_15; +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_15, 0); +x_89 = lean_ctor_get(x_15, 1); +lean_inc(x_89); +lean_inc(x_88); +lean_dec(x_15); +x_90 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_90, 0, x_88); +lean_ctor_set(x_90, 1, x_89); +return x_90; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2(lean_object* x_1, lean_object* x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_15 = lean_array_get_size(x_9); +x_16 = lean_mk_empty_array_with_capacity(x_15); +x_17 = lean_unsigned_to_nat(0u); +x_18 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10(x_1, x_2, x_9, x_9, x_15, x_17, lean_box(0), x_16); +x_19 = lean_array_size(x_18); +x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11(x_19, x_3, x_18); +x_21 = lean_box_usize(x_3); +x_22 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___boxed), 14, 8); +lean_closure_set(x_22, 0, x_4); +lean_closure_set(x_22, 1, x_9); +lean_closure_set(x_22, 2, x_5); +lean_closure_set(x_22, 3, x_2); +lean_closure_set(x_22, 4, x_6); +lean_closure_set(x_22, 5, x_7); +lean_closure_set(x_22, 6, x_21); +lean_closure_set(x_22, 7, x_1); +x_23 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(x_8, x_20, x_22, x_10, x_11, x_12, x_13, x_14); +return x_23; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_instInhabitedExpr; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16(size_t x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { +_start: +{ +lean_object* x_20; uint8_t x_21; +x_20 = lean_unsigned_to_nat(0u); +x_21 = lean_nat_dec_eq(x_11, x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_22 = lean_unsigned_to_nat(1u); +x_23 = lean_nat_sub(x_11, x_22); +lean_dec(x_11); +lean_inc(x_2); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9(x_4, x_1, x_2); +x_25 = l_Array_zip___rarg(x_24, x_5); +lean_dec(x_24); +x_26 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2; +x_27 = lean_box_usize(x_1); +lean_inc(x_7); +lean_inc(x_12); +lean_inc(x_3); +lean_inc(x_6); +lean_inc(x_9); +lean_inc(x_8); +x_28 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2___boxed), 14, 8); +lean_closure_set(x_28, 0, x_8); +lean_closure_set(x_28, 1, x_9); +lean_closure_set(x_28, 2, x_27); +lean_closure_set(x_28, 3, x_6); +lean_closure_set(x_28, 4, x_3); +lean_closure_set(x_28, 5, x_12); +lean_closure_set(x_28, 6, x_7); +lean_closure_set(x_28, 7, x_26); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +x_29 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(x_26, x_25, x_28, x_15, x_16, x_17, x_18, x_19); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_nat_add(x_12, x_22); +lean_dec(x_12); +x_33 = lean_array_push(x_14, x_30); +x_11 = x_23; +x_12 = x_32; +x_13 = lean_box(0); +x_14 = x_33; +x_19 = x_31; +goto _start; +} +else +{ +uint8_t x_35; +lean_dec(x_23); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +x_35 = !lean_is_exclusive(x_29); +if (x_35 == 0) +{ +return x_29; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_29, 0); +x_37 = lean_ctor_get(x_29, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_29); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_14); +lean_ctor_set(x_39, 1, x_19); +return x_39; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_eq(x_6, x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; +x_12 = lean_unsigned_to_nat(1u); +x_13 = lean_nat_sub(x_6, x_12); +lean_dec(x_6); +x_14 = lean_array_fget(x_5, x_7); +x_15 = lean_array_get_size(x_1); +x_16 = lean_nat_dec_lt(x_7, x_15); +lean_dec(x_15); +x_17 = lean_nat_add(x_7, x_12); +if (x_16 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_7); +x_18 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1; +x_19 = l_outOfBounds___rarg(x_18); +lean_inc(x_3); +x_20 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_19, x_3); +lean_inc(x_4); +x_21 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_19, x_4); +lean_dec(x_19); +x_22 = l_Array_append___rarg(x_20, x_21); +lean_dec(x_21); +x_23 = l_Lean_mkAppN(x_14, x_22); +lean_dec(x_22); +x_24 = lean_array_push(x_9, x_23); +x_6 = x_13; +x_7 = x_17; +x_8 = lean_box(0); +x_9 = x_24; +goto _start; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_array_fget(x_1, x_7); +lean_dec(x_7); +lean_inc(x_3); +x_27 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_26, x_3); +lean_inc(x_4); +x_28 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg(x_26, x_4); +lean_dec(x_26); +x_29 = l_Array_append___rarg(x_27, x_28); +lean_dec(x_28); +x_30 = l_Lean_mkAppN(x_14, x_29); +lean_dec(x_29); +x_31 = lean_array_push(x_9, x_30); +x_6 = x_13; +x_7 = x_17; +x_8 = lean_box(0); +x_9 = x_31; +goto _start; +} +} +else +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +return x_9; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; uint8_t x_16; +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_nat_dec_eq(x_6, x_15); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_17 = lean_unsigned_to_nat(1u); +x_18 = lean_nat_sub(x_6, x_17); +lean_dec(x_6); +x_19 = lean_array_fget(x_5, x_7); +x_20 = lean_nat_dec_lt(x_7, x_2); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_21 = l_Lean_instInhabitedDefinitionVal; +x_22 = l_outOfBounds___rarg(x_21); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +lean_dec(x_22); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(x_24, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_mkAppN(x_26, x_3); +x_29 = l_Lean_Expr_app___override(x_19, x_28); +x_30 = lean_nat_add(x_7, x_17); +lean_dec(x_7); +x_31 = lean_array_push(x_9, x_29); +x_6 = x_18; +x_7 = x_30; +x_8 = lean_box(0); +x_9 = x_31; +x_14 = x_27; +goto _start; +} +else +{ +uint8_t x_33; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_9); +lean_dec(x_7); +x_33 = !lean_is_exclusive(x_25); +if (x_33 == 0) +{ +return x_25; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_25, 0); +x_35 = lean_ctor_get(x_25, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_25); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_37 = lean_array_fget(x_1, x_7); +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +lean_dec(x_37); +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(x_39, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = l_Lean_mkAppN(x_41, x_3); +x_44 = l_Lean_Expr_app___override(x_19, x_43); +x_45 = lean_nat_add(x_7, x_17); +lean_dec(x_7); +x_46 = lean_array_push(x_9, x_44); +x_6 = x_18; +x_7 = x_45; +x_8 = lean_box(0); +x_9 = x_46; +x_14 = x_42; +goto _start; +} +else +{ +uint8_t x_48; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_9); +lean_dec(x_7); +x_48 = !lean_is_exclusive(x_40); +if (x_48 == 0) +{ +return x_40; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_40, 0); +x_50 = lean_ctor_get(x_40, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_40); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +} +else +{ +lean_object* x_52; +lean_dec(x_7); +lean_dec(x_6); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_9); +lean_ctor_set(x_52, 1, x_14); +return x_52; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; lean_object* x_12; +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_2); +x_11 = 0; +x_12 = l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(x_1, x_11, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_10); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) +{ +return x_12; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_12); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_12); +if (x_17 == 0) +{ +return x_12; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_12, 0); +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_12); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +return x_20; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg___boxed), 9, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_4; +x_4 = l_List_reverse___rarg(x_3); +return x_4; +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_2); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = lean_ctor_get(x_2, 0); +x_7 = lean_ctor_get(x_2, 1); +x_8 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_6); +if (x_8 == 0) +{ +lean_free_object(x_2); +lean_dec(x_6); +x_2 = x_7; +goto _start; +} +else +{ +lean_ctor_set(x_2, 1, x_3); +{ +lean_object* _tmp_1 = x_7; +lean_object* _tmp_2 = x_2; +x_2 = _tmp_1; +x_3 = _tmp_2; +} +goto _start; +} +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_2, 0); +x_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_2); +x_13 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_11); +if (x_13 == 0) +{ +lean_dec(x_11); +x_2 = x_12; +goto _start; +} +else +{ +lean_object* x_15; +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_11); +lean_ctor_set(x_15, 1, x_3); +x_2 = x_12; +x_3 = x_15; +goto _start; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_array_get_size(x_1); +x_11 = lean_mk_empty_array_with_capacity(x_10); +x_12 = lean_unsigned_to_nat(0u); +lean_inc(x_4); +x_13 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6(x_2, x_1, x_4, x_1, x_10, x_12, lean_box(0), x_11); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_14 = l_Lean_Meta_PProdN_pack(x_3, x_13, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_box(0); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_4); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_array_mk(x_18); +x_20 = 0; +x_21 = 1; +x_22 = 1; +x_23 = l_Lean_Meta_mkLambdaFVars(x_19, x_15, x_20, x_21, x_20, x_22, x_5, x_6, x_7, x_8, x_16); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_19); +return x_23; +} +else +{ +uint8_t x_24; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_24 = !lean_is_exclusive(x_14); +if (x_24 == 0) +{ +return x_14; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_14, 0); +x_26 = lean_ctor_get(x_14, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_14); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_inc(x_3); +lean_inc(x_1); +x_15 = l_Lean_Meta_PProdN_projs(x_1, x_2, x_3); +lean_inc(x_9); +x_16 = l_Lean_Meta_PProdN_projs(x_1, x_4, x_9); +x_17 = lean_array_get_size(x_5); +x_18 = lean_mk_empty_array_with_capacity(x_17); +x_19 = lean_unsigned_to_nat(0u); +x_20 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17(x_6, x_5, x_15, x_16, x_5, x_17, x_19, lean_box(0), x_18); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_21 = l_Lean_Meta_PProdN_mk(x_7, x_20, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; uint8_t x_28; uint8_t x_29; lean_object* x_30; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_9); +lean_ctor_set(x_24, 1, x_8); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_3); +lean_ctor_set(x_25, 1, x_24); +x_26 = lean_array_mk(x_25); +x_27 = 0; +x_28 = 1; +x_29 = 1; +x_30 = l_Lean_Meta_mkLambdaFVars(x_26, x_22, x_27, x_28, x_27, x_29, x_10, x_11, x_12, x_13, x_23); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_26); +return x_30; +} +else +{ +uint8_t x_31; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_31 = !lean_is_exclusive(x_21); +if (x_31 == 0) +{ +return x_21; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_21, 0); +x_33 = lean_ctor_get(x_21, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_21); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; +x_13 = lean_box(0); +lean_inc(x_7); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_13); +x_15 = lean_array_mk(x_14); +x_16 = l_Lean_Expr_beta(x_1, x_15); +lean_inc(x_16); +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2___boxed), 14, 8); +lean_closure_set(x_17, 0, x_2); +lean_closure_set(x_17, 1, x_3); +lean_closure_set(x_17, 2, x_7); +lean_closure_set(x_17, 3, x_16); +lean_closure_set(x_17, 4, x_4); +lean_closure_set(x_17, 5, x_5); +lean_closure_set(x_17, 6, x_6); +lean_closure_set(x_17, 7, x_13); +x_18 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2; +x_19 = 0; +x_20 = 0; +x_21 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_18, x_19, x_16, x_17, x_20, x_8, x_9, x_10, x_11, x_12); +return x_21; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("approx", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix_induct", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Elab", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("definition", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("induction", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5; +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6; +x_3 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7; +x_4 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("complete body of fixpoint induction principle:", 46, 46); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22) { +_start: +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; uint8_t x_26; lean_object* x_27; +lean_inc(x_5); +lean_inc(x_17); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_23 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__3), 12, 6); +lean_closure_set(x_23, 0, x_1); +lean_closure_set(x_23, 1, x_2); +lean_closure_set(x_23, 2, x_3); +lean_closure_set(x_23, 3, x_17); +lean_closure_set(x_23, 4, x_4); +lean_closure_set(x_23, 5, x_5); +x_24 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2; +x_25 = 0; +x_26 = 0; +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_27 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_24, x_25, x_3, x_23, x_26, x_18, x_19, x_20, x_21, x_22); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_30, 0, x_6); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_7); +x_32 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_32, 0, x_8); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_9); +x_34 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_34, 0, x_1); +x_35 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_35, 0, x_10); +x_36 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_36, 0, x_28); +x_37 = lean_box(0); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_35); +lean_ctor_set(x_39, 1, x_38); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_34); +lean_ctor_set(x_40, 1, x_39); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_33); +lean_ctor_set(x_41, 1, x_40); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_32); +lean_ctor_set(x_42, 1, x_41); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_31); +lean_ctor_set(x_43, 1, x_42); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_30); +lean_ctor_set(x_44, 1, x_43); +x_45 = lean_array_mk(x_44); +x_46 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4; +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_47 = l_Lean_Meta_mkAppOptM(x_46, x_45, x_18, x_19, x_20, x_21, x_29); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_47, 1); +lean_inc(x_49); +lean_dec(x_47); +x_50 = lean_unsigned_to_nat(0u); +x_51 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18(x_11, x_12, x_13, x_14, x_14, x_2, x_50, lean_box(0), x_15, x_18, x_19, x_20, x_21, x_49); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_54 = l_Lean_Meta_PProdN_pack(x_5, x_52, x_18, x_19, x_20, x_21, x_53); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_54, 1); +lean_inc(x_56); +lean_dec(x_54); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_57 = l_Lean_Meta_mkExpectedTypeHint(x_48, x_55, x_18, x_19, x_20, x_21, x_56); +if (lean_obj_tag(x_57) == 0) +{ +lean_object* x_58; lean_object* x_59; uint8_t x_60; uint8_t x_61; uint8_t x_62; lean_object* x_63; +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_ctor_get(x_57, 1); +lean_inc(x_59); +lean_dec(x_57); +x_60 = 0; +x_61 = 1; +x_62 = 1; +x_63 = l_Lean_Meta_mkLambdaFVars(x_17, x_58, x_60, x_61, x_60, x_62, x_18, x_19, x_20, x_21, x_59); +lean_dec(x_17); +if (lean_obj_tag(x_63) == 0) +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_63, 0); +lean_inc(x_64); +x_65 = lean_ctor_get(x_63, 1); +lean_inc(x_65); +lean_dec(x_63); +x_66 = l_Lean_Meta_mkLambdaFVars(x_16, x_64, x_60, x_61, x_60, x_62, x_18, x_19, x_20, x_21, x_65); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +x_68 = lean_ctor_get(x_66, 1); +lean_inc(x_68); +lean_dec(x_66); +x_69 = l_Lean_Meta_mkLambdaFVars(x_14, x_67, x_60, x_61, x_60, x_62, x_18, x_19, x_20, x_21, x_68); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_69, 0); +lean_inc(x_70); +x_71 = lean_ctor_get(x_69, 1); +lean_inc(x_71); +lean_dec(x_69); +x_72 = l_Lean_Meta_mkLambdaFVars(x_13, x_70, x_61, x_61, x_60, x_25, x_18, x_19, x_20, x_21, x_71); +if (lean_obj_tag(x_72) == 0) +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +lean_dec(x_72); +x_75 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_73, x_18, x_19, x_20, x_21, x_74); +x_76 = !lean_is_exclusive(x_75); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_77 = lean_ctor_get(x_75, 0); +x_78 = lean_ctor_get(x_75, 1); +x_79 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +x_80 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_79, x_18, x_19, x_20, x_21, x_78); +x_81 = lean_ctor_get(x_80, 0); +lean_inc(x_81); +x_82 = lean_unbox(x_81); +lean_dec(x_81); +if (x_82 == 0) +{ +uint8_t x_83; +lean_free_object(x_75); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_83 = !lean_is_exclusive(x_80); +if (x_83 == 0) +{ +lean_object* x_84; +x_84 = lean_ctor_get(x_80, 0); +lean_dec(x_84); +lean_ctor_set(x_80, 0, x_77); +return x_80; +} +else +{ +lean_object* x_85; lean_object* x_86; +x_85 = lean_ctor_get(x_80, 1); +lean_inc(x_85); +lean_dec(x_80); +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_77); +lean_ctor_set(x_86, 1, x_85); +return x_86; +} +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_87 = lean_ctor_get(x_80, 1); +lean_inc(x_87); +lean_dec(x_80); +lean_inc(x_77); +x_88 = l_Lean_indentExpr(x_77); +x_89 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11; +lean_ctor_set_tag(x_75, 7); +lean_ctor_set(x_75, 1, x_88); +lean_ctor_set(x_75, 0, x_89); +x_90 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_91 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_91, 0, x_75); +lean_ctor_set(x_91, 1, x_90); +x_92 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_79, x_91, x_18, x_19, x_20, x_21, x_87); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_93 = !lean_is_exclusive(x_92); +if (x_93 == 0) +{ +lean_object* x_94; +x_94 = lean_ctor_get(x_92, 0); +lean_dec(x_94); +lean_ctor_set(x_92, 0, x_77); +return x_92; +} +else +{ +lean_object* x_95; lean_object* x_96; +x_95 = lean_ctor_get(x_92, 1); +lean_inc(x_95); +lean_dec(x_92); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_77); +lean_ctor_set(x_96, 1, x_95); +return x_96; +} +} +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; uint8_t x_102; +x_97 = lean_ctor_get(x_75, 0); +x_98 = lean_ctor_get(x_75, 1); +lean_inc(x_98); +lean_inc(x_97); +lean_dec(x_75); +x_99 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +x_100 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_99, x_18, x_19, x_20, x_21, x_98); +x_101 = lean_ctor_get(x_100, 0); +lean_inc(x_101); +x_102 = lean_unbox(x_101); +lean_dec(x_101); +if (x_102 == 0) +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_103 = lean_ctor_get(x_100, 1); +lean_inc(x_103); +if (lean_is_exclusive(x_100)) { + lean_ctor_release(x_100, 0); + lean_ctor_release(x_100, 1); + x_104 = x_100; +} else { + lean_dec_ref(x_100); + x_104 = lean_box(0); +} +if (lean_is_scalar(x_104)) { + x_105 = lean_alloc_ctor(0, 2, 0); +} else { + x_105 = x_104; +} +lean_ctor_set(x_105, 0, x_97); +lean_ctor_set(x_105, 1, x_103); +return x_105; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_106 = lean_ctor_get(x_100, 1); +lean_inc(x_106); +lean_dec(x_100); +lean_inc(x_97); +x_107 = l_Lean_indentExpr(x_97); +x_108 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11; +x_109 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set(x_109, 1, x_107); +x_110 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_111 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_111, 0, x_109); +lean_ctor_set(x_111, 1, x_110); +x_112 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_99, x_111, x_18, x_19, x_20, x_21, x_106); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_113 = lean_ctor_get(x_112, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_112)) { + lean_ctor_release(x_112, 0); + lean_ctor_release(x_112, 1); + x_114 = x_112; +} else { + lean_dec_ref(x_112); + x_114 = lean_box(0); +} +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(0, 2, 0); +} else { + x_115 = x_114; +} +lean_ctor_set(x_115, 0, x_97); +lean_ctor_set(x_115, 1, x_113); +return x_115; +} +} +} +else +{ +uint8_t x_116; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_116 = !lean_is_exclusive(x_72); +if (x_116 == 0) +{ +return x_72; +} +else +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; +x_117 = lean_ctor_get(x_72, 0); +x_118 = lean_ctor_get(x_72, 1); +lean_inc(x_118); +lean_inc(x_117); +lean_dec(x_72); +x_119 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_119, 0, x_117); +lean_ctor_set(x_119, 1, x_118); +return x_119; +} +} +} +else +{ +uint8_t x_120; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_120 = !lean_is_exclusive(x_69); +if (x_120 == 0) +{ +return x_69; +} +else +{ +lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_121 = lean_ctor_get(x_69, 0); +x_122 = lean_ctor_get(x_69, 1); +lean_inc(x_122); +lean_inc(x_121); +lean_dec(x_69); +x_123 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_123, 0, x_121); +lean_ctor_set(x_123, 1, x_122); +return x_123; +} +} +} +else +{ +uint8_t x_124; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_124 = !lean_is_exclusive(x_66); +if (x_124 == 0) +{ +return x_66; +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_125 = lean_ctor_get(x_66, 0); +x_126 = lean_ctor_get(x_66, 1); +lean_inc(x_126); +lean_inc(x_125); +lean_dec(x_66); +x_127 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_127, 0, x_125); +lean_ctor_set(x_127, 1, x_126); +return x_127; +} +} +} +else +{ +uint8_t x_128; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +x_128 = !lean_is_exclusive(x_63); +if (x_128 == 0) +{ +return x_63; +} +else +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; +x_129 = lean_ctor_get(x_63, 0); +x_130 = lean_ctor_get(x_63, 1); +lean_inc(x_130); +lean_inc(x_129); +lean_dec(x_63); +x_131 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_131, 0, x_129); +lean_ctor_set(x_131, 1, x_130); +return x_131; +} +} +} +else +{ +uint8_t x_132; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +x_132 = !lean_is_exclusive(x_57); +if (x_132 == 0) +{ +return x_57; +} +else +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; +x_133 = lean_ctor_get(x_57, 0); +x_134 = lean_ctor_get(x_57, 1); +lean_inc(x_134); +lean_inc(x_133); +lean_dec(x_57); +x_135 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_135, 0, x_133); +lean_ctor_set(x_135, 1, x_134); +return x_135; +} +} +} +else +{ +uint8_t x_136; +lean_dec(x_48); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +x_136 = !lean_is_exclusive(x_54); +if (x_136 == 0) +{ +return x_54; +} +else +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; +x_137 = lean_ctor_get(x_54, 0); +x_138 = lean_ctor_get(x_54, 1); +lean_inc(x_138); +lean_inc(x_137); +lean_dec(x_54); +x_139 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_139, 0, x_137); +lean_ctor_set(x_139, 1, x_138); +return x_139; +} +} +} +else +{ +uint8_t x_140; +lean_dec(x_48); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_5); +x_140 = !lean_is_exclusive(x_51); +if (x_140 == 0) +{ +return x_51; +} +else +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_141 = lean_ctor_get(x_51, 0); +x_142 = lean_ctor_get(x_51, 1); +lean_inc(x_142); +lean_inc(x_141); +lean_dec(x_51); +x_143 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_143, 0, x_141); +lean_ctor_set(x_143, 1, x_142); +return x_143; +} +} +} +else +{ +uint8_t x_144; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_5); +lean_dec(x_2); +x_144 = !lean_is_exclusive(x_47); +if (x_144 == 0) +{ +return x_47; +} +else +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; +x_145 = lean_ctor_get(x_47, 0); +x_146 = lean_ctor_get(x_47, 1); +lean_inc(x_146); +lean_inc(x_145); +lean_dec(x_47); +x_147 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_147, 0, x_145); +lean_ctor_set(x_147, 1, x_146); +return x_147; +} +} +} +else +{ +uint8_t x_148; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_148 = !lean_is_exclusive(x_27); +if (x_148 == 0) +{ +return x_27; +} +else +{ +lean_object* x_149; lean_object* x_150; lean_object* x_151; +x_149 = lean_ctor_get(x_27, 0); +x_150 = lean_ctor_get(x_27, 1); +lean_inc(x_150); +lean_inc(x_149); +lean_dec(x_27); +x_151 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_151, 0, x_149); +lean_ctor_set(x_151, 1, x_150); +return x_151; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("h", 1, 1); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22) { +_start: +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_array_get_size(x_17); +x_24 = lean_mk_empty_array_with_capacity(x_23); +x_25 = lean_unsigned_to_nat(0u); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_1); +x_26 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8(x_1, x_17, x_17, x_23, x_25, lean_box(0), x_24, x_18, x_19, x_20, x_21, x_22); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +lean_inc(x_1); +lean_inc(x_2); +x_29 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_mkAdmAnd), 9, 2); +lean_closure_set(x_29, 0, x_2); +lean_closure_set(x_29, 1, x_1); +x_30 = l_Lean_instInhabitedExpr; +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_31 = l_Lean_Meta_PProdN_genMk___rarg(x_30, x_29, x_27, x_18, x_19, x_20, x_21, x_28); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1; +lean_inc(x_3); +x_35 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames(x_3, x_34); +x_36 = lean_mk_empty_array_with_capacity(x_3); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_3); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_6); +lean_inc(x_5); +x_37 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_5, x_3, x_25, lean_box(0), x_36, x_18, x_19, x_20, x_21, x_33); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Array_unzip___rarg(x_38); +lean_dec(x_38); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = l_Array_zip___rarg(x_35, x_41); +lean_dec(x_41); +lean_dec(x_35); +x_44 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___boxed), 22, 16); +lean_closure_set(x_44, 0, x_13); +lean_closure_set(x_44, 1, x_12); +lean_closure_set(x_44, 2, x_10); +lean_closure_set(x_44, 3, x_42); +lean_closure_set(x_44, 4, x_9); +lean_closure_set(x_44, 5, x_2); +lean_closure_set(x_44, 6, x_1); +lean_closure_set(x_44, 7, x_6); +lean_closure_set(x_44, 8, x_14); +lean_closure_set(x_44, 9, x_32); +lean_closure_set(x_44, 10, x_5); +lean_closure_set(x_44, 11, x_3); +lean_closure_set(x_44, 12, x_15); +lean_closure_set(x_44, 13, x_11); +lean_closure_set(x_44, 14, x_16); +lean_closure_set(x_44, 15, x_17); +x_45 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(x_30, x_43, x_44, x_18, x_19, x_20, x_21, x_39); +return x_45; +} +else +{ +uint8_t x_46; +lean_dec(x_35); +lean_dec(x_32); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_46 = !lean_is_exclusive(x_37); +if (x_46 == 0) +{ +return x_37; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_37, 0); +x_48 = lean_ctor_get(x_37, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_37); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +return x_49; +} +} +} +else +{ +uint8_t x_50; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_50 = !lean_is_exclusive(x_31); +if (x_50 == 0) +{ +return x_31; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_31, 0); +x_52 = lean_ctor_get(x_31, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_31); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +else +{ +uint8_t x_54; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_54 = !lean_is_exclusive(x_26); +if (x_54 == 0) +{ +return x_26; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_26, 0); +x_56 = lean_ctor_get(x_26, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_26); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +return x_57; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("x", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("adm", 3, 3); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, size_t x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { +_start: +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; uint8_t x_26; lean_object* x_27; +x_20 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2; +x_21 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_20, x_17, x_18, x_19); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +lean_inc(x_2); +lean_inc(x_1); +lean_inc(x_14); +x_24 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1___boxed), 9, 3); +lean_closure_set(x_24, 0, x_14); +lean_closure_set(x_24, 1, x_1); +lean_closure_set(x_24, 2, x_2); +x_25 = 0; +x_26 = 0; +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_1); +x_27 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_22, x_25, x_1, x_24, x_26, x_15, x_16, x_17, x_18, x_23); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_array_get_size(x_14); +x_31 = lean_mk_empty_array_with_capacity(x_30); +x_32 = lean_unsigned_to_nat(0u); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_31); +lean_inc(x_30); +x_33 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7(x_3, x_4, x_14, x_14, x_30, x_32, lean_box(0), x_31, x_15, x_16, x_17, x_18, x_29); +if (lean_obj_tag(x_33) == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_34 = lean_ctor_get(x_33, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); +x_36 = lean_array_get_size(x_34); +x_37 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3; +x_38 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames(x_36, x_37); +x_39 = l_Array_zip___rarg(x_38, x_34); +lean_dec(x_34); +lean_dec(x_38); +x_40 = lean_box_usize(x_8); +x_41 = lean_box_usize(x_11); +x_42 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___boxed), 22, 16); +lean_closure_set(x_42, 0, x_5); +lean_closure_set(x_42, 1, x_6); +lean_closure_set(x_42, 2, x_7); +lean_closure_set(x_42, 3, x_40); +lean_closure_set(x_42, 4, x_9); +lean_closure_set(x_42, 5, x_10); +lean_closure_set(x_42, 6, x_41); +lean_closure_set(x_42, 7, x_4); +lean_closure_set(x_42, 8, x_2); +lean_closure_set(x_42, 9, x_1); +lean_closure_set(x_42, 10, x_14); +lean_closure_set(x_42, 11, x_30); +lean_closure_set(x_42, 12, x_28); +lean_closure_set(x_42, 13, x_12); +lean_closure_set(x_42, 14, x_13); +lean_closure_set(x_42, 15, x_31); +x_43 = l_Lean_instInhabitedExpr; +x_44 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(x_43, x_39, x_42, x_15, x_16, x_17, x_18, x_35); +return x_44; +} +else +{ +uint8_t x_45; +lean_dec(x_31); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_45 = !lean_is_exclusive(x_33); +if (x_45 == 0) +{ +return x_33; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_33, 0); +x_47 = lean_ctor_get(x_33, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_33); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +uint8_t x_49; +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_49 = !lean_is_exclusive(x_27); +if (x_49 == 0) +{ +return x_27; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_27, 0); +x_51 = lean_ctor_get(x_27, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_27); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Level_ofNat(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("motive", 6, 6); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; size_t x_15; lean_object* x_16; +lean_inc(x_6); +x_14 = l_Lean_Elab_PartialFixpoint_CCPOProdProjs(x_1, x_6); +x_15 = lean_array_size(x_2); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_2); +x_16 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4(x_3, x_15, x_4, x_2, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_17); +x_20 = l_Lean_Meta_PProdN_pack(x_19, x_17, x_9, x_10, x_11, x_12, x_18); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; size_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_array_size(x_17); +lean_inc(x_17); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5(x_19, x_23, x_4, x_17, x_9, x_10, x_11, x_12, x_22); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = lean_array_get_size(x_25); +x_28 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2; +x_29 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames(x_27, x_28); +x_30 = l_Array_zip___rarg(x_29, x_25); +lean_dec(x_25); +lean_dec(x_29); +x_31 = lean_box_usize(x_4); +x_32 = lean_box_usize(x_15); +x_33 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___boxed), 19, 13); +lean_closure_set(x_33, 0, x_21); +lean_closure_set(x_33, 1, x_19); +lean_closure_set(x_33, 2, x_14); +lean_closure_set(x_33, 3, x_17); +lean_closure_set(x_33, 4, x_6); +lean_closure_set(x_33, 5, x_5); +lean_closure_set(x_33, 6, x_1); +lean_closure_set(x_33, 7, x_31); +lean_closure_set(x_33, 8, x_2); +lean_closure_set(x_33, 9, x_7); +lean_closure_set(x_33, 10, x_32); +lean_closure_set(x_33, 11, x_8); +lean_closure_set(x_33, 12, x_3); +x_34 = l_Lean_instInhabitedExpr; +x_35 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__14___rarg(x_34, x_30, x_33, x_9, x_10, x_11, x_12, x_26); +return x_35; +} +else +{ +uint8_t x_36; +lean_dec(x_17); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_36 = !lean_is_exclusive(x_20); +if (x_36 == 0) +{ +return x_20; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_20, 0); +x_38 = lean_ctor_get(x_20, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_20); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +uint8_t x_40; +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_16); +if (x_40 == 0) +{ +return x_16; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_16, 0); +x_42 = lean_ctor_get(x_16, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_16); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Unexpected function body ", 25, 25); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = l_Lean_MessageData_ofExpr(x_1); +x_9 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2; +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +x_11 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_12 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_12, x_3, x_4, x_5, x_6, x_7); +return x_13; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix", 3, 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_unsigned_to_nat(0u); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_13 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(x_5, x_12, x_1, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = l_Lean_Meta_PProdN_stripProjs(x_14); +x_17 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_16); +x_18 = l_Lean_Meta_whnfUntil(x_16, x_17, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_16); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = l_Lean_MessageData_ofExpr(x_14); +x_22 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_21); +x_24 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_25 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +x_26 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_25, x_7, x_8, x_9, x_10, x_20); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +lean_dec(x_14); +x_27 = lean_ctor_get(x_18, 1); +lean_inc(x_27); +lean_dec(x_18); +x_28 = lean_ctor_get(x_19, 0); +lean_inc(x_28); +lean_dec(x_19); +x_29 = l_Lean_Expr_cleanupAnnotations(x_28); +x_30 = l_Lean_Expr_isApp(x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_29); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_16, x_31, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = l_Lean_Expr_appArg(x_29, lean_box(0)); +x_34 = l_Lean_Expr_appFnCleanup(x_29, lean_box(0)); +x_35 = l_Lean_Expr_isApp(x_34); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_34); +lean_dec(x_33); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_16, x_36, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_37; +} +else +{ +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = l_Lean_Expr_appArg(x_34, lean_box(0)); +x_39 = l_Lean_Expr_appFnCleanup(x_34, lean_box(0)); +x_40 = l_Lean_Expr_isApp(x_39); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; +lean_dec(x_39); +lean_dec(x_38); +lean_dec(x_33); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_41 = lean_box(0); +x_42 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_16, x_41, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_42; +} +else +{ +lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_43 = l_Lean_Expr_appArg(x_39, lean_box(0)); +x_44 = l_Lean_Expr_appFnCleanup(x_39, lean_box(0)); +x_45 = l_Lean_Expr_isApp(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_44); +lean_dec(x_43); +lean_dec(x_38); +lean_dec(x_33); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_46 = lean_box(0); +x_47 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_16, x_46, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = l_Lean_Expr_appArg(x_44, lean_box(0)); +x_49 = l_Lean_Expr_appFnCleanup(x_44, lean_box(0)); +x_50 = l_Lean_Expr_isConstOf(x_49, x_17); +lean_dec(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_48); +lean_dec(x_43); +lean_dec(x_38); +lean_dec(x_33); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_51 = lean_box(0); +x_52 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_16, x_51, x_7, x_8, x_9, x_10, x_27); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_52; +} +else +{ +lean_object* x_53; +lean_dec(x_16); +x_53 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7(x_2, x_3, x_5, x_4, x_48, x_43, x_38, x_33, x_7, x_8, x_9, x_10, x_27); +return x_53; +} +} +} +} +} +} +} +else +{ +uint8_t x_54; +lean_dec(x_16); +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_54 = !lean_is_exclusive(x_18); +if (x_54 == 0) +{ +return x_18; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_18, 0); +x_56 = lean_ctor_get(x_18, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_18); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +return x_57; +} +} +} +else +{ +uint8_t x_58; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_58 = !lean_is_exclusive(x_13); +if (x_58 == 0) +{ +return x_13; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = lean_ctor_get(x_13, 0); +x_60 = lean_ctor_get(x_13, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_13); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_59); +lean_ctor_set(x_61, 1, x_60); +return x_61; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_PartialFixpoint_eqnInfoExt; +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" is not defined by partial_fixpoint", 35, 35); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_elimOptParam___lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_elimOptParam___lambda__2___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(10u); +x_2 = lean_unsigned_to_nat(1u); +x_3 = l_Nat_nextPowerOfTwo_go(x_1, x_2, lean_box(0)); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6; +x_3 = lean_mk_array(x_2, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8; +x_2 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1; +x_3 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 2, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fixpoint_induct", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1() { +_start: +{ +size_t x_1; lean_object* x_2; +x_1 = 0; +x_2 = lean_box_usize(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_7 = lean_st_ref_get(x_5, x_6); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + x_10 = x_7; +} else { + lean_dec_ref(x_7); + x_10 = lean_box(0); +} +x_11 = lean_ctor_get(x_8, 0); +lean_inc(x_11); +lean_dec(x_8); +x_12 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_13 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1; +lean_inc(x_1); +x_14 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_12, x_13, x_11, x_1); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_15 = l_Lean_MessageData_ofName(x_1); +x_16 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +if (lean_is_scalar(x_10)) { + x_17 = lean_alloc_ctor(7, 2, 0); +} else { + x_17 = x_10; + lean_ctor_set_tag(x_17, 7); +} +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_19, x_2, x_3, x_4, x_5, x_9); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; size_t x_24; size_t x_25; lean_object* x_26; +x_21 = lean_ctor_get(x_14, 0); +lean_inc(x_21); +if (lean_is_exclusive(x_14)) { + lean_ctor_release(x_14, 0); + x_22 = x_14; +} else { + lean_dec_ref(x_14); + x_22 = lean_box(0); +} +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +x_24 = lean_array_size(x_23); +x_25 = 0; +x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3(x_24, x_25, x_23, x_2, x_3, x_4, x_5, x_9); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = lean_array_get_size(x_27); +x_30 = lean_unsigned_to_nat(0u); +x_31 = lean_nat_dec_lt(x_30, x_29); +x_32 = lean_ctor_get(x_21, 3); +lean_inc(x_32); +lean_dec(x_21); +if (x_31 == 0) +{ +lean_object* x_76; lean_object* x_77; +x_76 = l_Lean_instInhabitedDefinitionVal; +x_77 = l_outOfBounds___rarg(x_76); +x_33 = x_77; +goto block_75; +} +else +{ +lean_object* x_78; +x_78 = lean_array_fget(x_27, x_30); +x_33 = x_78; +goto block_75; +} +block_75: +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +x_35 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1; +lean_inc(x_34); +x_36 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___boxed), 11, 4); +lean_closure_set(x_36, 0, x_34); +lean_closure_set(x_36, 1, x_29); +lean_closure_set(x_36, 2, x_27); +lean_closure_set(x_36, 3, x_35); +x_37 = 0; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_38 = l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg(x_34, x_32, x_36, x_37, x_2, x_3, x_4, x_5, x_28); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_39); +x_41 = lean_infer_type(x_39, x_2, x_3, x_4, x_5, x_40); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 1); +lean_inc(x_43); +lean_dec(x_41); +x_44 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4; +x_45 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5; +lean_inc(x_5); +lean_inc(x_4); +x_46 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_42, x_44, x_45, x_4, x_5, x_43); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = lean_box(0); +x_50 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9; +lean_inc(x_47); +x_51 = l_Lean_CollectLevelParams_main(x_47, x_50); +x_52 = lean_ctor_get(x_51, 2); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_ctor_get(x_33, 0); +lean_inc(x_53); +lean_dec(x_33); +x_54 = lean_ctor_get(x_53, 1); +lean_inc(x_54); +lean_dec(x_53); +x_55 = l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20(x_52, x_54, x_49); +lean_dec(x_52); +x_56 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11; +x_57 = l_Lean_Name_append(x_1, x_56); +lean_inc(x_57); +x_58 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_55); +lean_ctor_set(x_58, 2, x_47); +if (lean_is_scalar(x_10)) { + x_59 = lean_alloc_ctor(1, 2, 0); +} else { + x_59 = x_10; + lean_ctor_set_tag(x_59, 1); +} +lean_ctor_set(x_59, 0, x_57); +lean_ctor_set(x_59, 1, x_49); +x_60 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_39); +lean_ctor_set(x_60, 2, x_59); +if (lean_is_scalar(x_22)) { + x_61 = lean_alloc_ctor(2, 1, 0); +} else { + x_61 = x_22; + lean_ctor_set_tag(x_61, 2); +} +lean_ctor_set(x_61, 0, x_60); +x_62 = l_Lean_addDecl(x_61, x_4, x_5, x_48); +return x_62; +} +else +{ +uint8_t x_63; +lean_dec(x_39); +lean_dec(x_33); +lean_dec(x_22); +lean_dec(x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_63 = !lean_is_exclusive(x_46); +if (x_63 == 0) +{ +return x_46; +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_46, 0); +x_65 = lean_ctor_get(x_46, 1); +lean_inc(x_65); +lean_inc(x_64); +lean_dec(x_46); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_65); +return x_66; +} +} +} +else +{ +uint8_t x_67; +lean_dec(x_39); +lean_dec(x_33); +lean_dec(x_22); +lean_dec(x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_67 = !lean_is_exclusive(x_41); +if (x_67 == 0) +{ +return x_41; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_41, 0); +x_69 = lean_ctor_get(x_41, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_41); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +return x_70; +} +} +} +else +{ +uint8_t x_71; +lean_dec(x_33); +lean_dec(x_22); +lean_dec(x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_71 = !lean_is_exclusive(x_38); +if (x_71 == 0) +{ +return x_38; +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_38, 0); +x_73 = lean_ctor_get(x_38, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_38); +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +return x_74; +} +} +} +} +else +{ +uint8_t x_79; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_79 = !lean_is_exclusive(x_26); +if (x_79 == 0) +{ +return x_26; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_26, 0); +x_81 = lean_ctor_get(x_26, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_26); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Cannot derive fixpoint induction principle (please report this issue)\n", 70, 70); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l_Lean_indentD(x_1); +x_3 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2; +x_4 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_4, 0, x_3); +lean_ctor_set(x_4, 1, x_2); +x_5 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_6 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_6, 0, x_4); +lean_ctor_set(x_6, 1, x_5); +return x_6; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10), 6, 1); +lean_closure_set(x_7, 0, x_1); +x_8 = l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1; +x_9 = l_Lean_Meta_mapErrorImp___rarg(x_7, x_8, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_9); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set(x_13, 1, x_12); +return x_13; +} +} +else +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_9); +if (x_14 == 0) +{ +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__4(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__5(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_4); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +lean_dec(x_2); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__10(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__12(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__13(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +size_t x_15; lean_object* x_16; +x_15 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_15, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_8); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +size_t x_15; lean_object* x_16; +x_15 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__2(x_1, x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +_start: +{ +size_t x_20; size_t x_21; lean_object* x_22; +x_20 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_21 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_22 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16(x_20, x_2, x_3, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +lean_dec(x_10); +lean_dec(x_5); +return x_22; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_4); +lean_dec(x_4); +x_11 = l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg(x_1, x_2, x_3, x_10, x_5, x_6, x_7, x_8, x_9); +return x_11; +} +} +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__20(x_1, x_2, x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +lean_dec(x_5); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +lean_object* x_21 = _args[20]; +lean_object* x_22 = _args[21]; +_start: +{ +lean_object* x_23; +x_23 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); +lean_dec(x_16); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +return x_23; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +lean_object* x_21 = _args[20]; +lean_object* x_22 = _args[21]; +_start: +{ +size_t x_23; size_t x_24; lean_object* x_25; +x_23 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_24 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_25 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5(x_1, x_2, x_3, x_23, x_5, x_6, x_24, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); +lean_dec(x_8); +return x_25; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +_start: +{ +size_t x_20; size_t x_21; lean_object* x_22; +x_20 = lean_unbox_usize(x_8); +lean_dec(x_8); +x_21 = lean_unbox_usize(x_11); +lean_dec(x_11); +x_22 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_20, x_9, x_10, x_21, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +lean_dec(x_3); +return x_22; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; lean_object* x_15; +x_14 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_15 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7(x_1, x_2, x_3, x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; lean_object* x_13; +x_12 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_13 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9(x_1, x_2, x_3, x_12, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_6); +return x_13; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isInductName___lambda__1(lean_object* x_1) { +_start: +{ +uint8_t x_2; +x_2 = 0; +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isInductName___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_isInductName___lambda__1___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isInductName___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_isInductName___closed__1; +x_2 = lean_box(0); +x_3 = lean_apply_1(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isInductName(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 1) +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_3 = lean_ctor_get(x_2, 0); +lean_inc(x_3); +x_4 = lean_ctor_get(x_2, 1); +lean_inc(x_4); +lean_dec(x_2); +x_5 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10; +x_6 = lean_string_dec_eq(x_4, x_5); +lean_dec(x_4); +if (x_6 == 0) +{ +uint8_t x_7; lean_object* x_8; +lean_dec(x_3); +lean_dec(x_1); +x_7 = 0; +x_8 = lean_box(x_7); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_10 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1; +lean_inc(x_3); +x_11 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_9, x_10, x_1, x_3); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; +lean_dec(x_3); +x_12 = l_Lean_Elab_PartialFixpoint_isInductName___closed__2; +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +lean_dec(x_11); +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = lean_array_get_size(x_14); +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_nat_dec_lt(x_16, x_15); +lean_dec(x_15); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; +lean_dec(x_14); +x_18 = l_Lean_instInhabitedName; +x_19 = l_outOfBounds___rarg(x_18); +x_20 = lean_name_eq(x_3, x_19); +lean_dec(x_19); +lean_dec(x_3); +x_21 = lean_box(x_20); +return x_21; +} +else +{ +lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_22 = lean_array_fget(x_14, x_16); +lean_dec(x_14); +x_23 = lean_name_eq(x_3, x_22); +lean_dec(x_22); +lean_dec(x_3); +x_24 = lean_box(x_23); +return x_24; +} +} +} +} +else +{ +uint8_t x_25; lean_object* x_26; +lean_dec(x_2); +lean_dec(x_1); +x_25 = 0; +x_26 = lean_box(x_25); +return x_26; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isInductName___lambda__1___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_Elab_PartialFixpoint_isInductName___lambda__1(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; lean_object* x_6; lean_object* x_7; +x_5 = 0; +x_6 = lean_box(x_5); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_4); +return x_7; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2() { +_start: +{ +uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_1 = 0; +x_2 = 1; +x_3 = 1; +x_4 = 0; +x_5 = 2; +x_6 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_6, 0, x_1); +lean_ctor_set_uint8(x_6, 1, x_1); +lean_ctor_set_uint8(x_6, 2, x_1); +lean_ctor_set_uint8(x_6, 3, x_1); +lean_ctor_set_uint8(x_6, 4, x_1); +lean_ctor_set_uint8(x_6, 5, x_2); +lean_ctor_set_uint8(x_6, 6, x_2); +lean_ctor_set_uint8(x_6, 7, x_1); +lean_ctor_set_uint8(x_6, 8, x_2); +lean_ctor_set_uint8(x_6, 9, x_3); +lean_ctor_set_uint8(x_6, 10, x_4); +lean_ctor_set_uint8(x_6, 11, x_2); +lean_ctor_set_uint8(x_6, 12, x_2); +lean_ctor_set_uint8(x_6, 13, x_2); +lean_ctor_set_uint8(x_6, 14, x_5); +lean_ctor_set_uint8(x_6, 15, x_2); +lean_ctor_set_uint8(x_6, 16, x_2); +return x_6; +} +} +static uint64_t _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__3() { +_start: +{ +lean_object* x_1; uint64_t x_2; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2; +x_2 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(32u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8() { +_start: +{ +size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = 5; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7; +x_3 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); +lean_ctor_set(x_5, 0, x_2); +lean_ctor_set(x_5, 1, x_3); +lean_ctor_set(x_5, 2, x_4); +lean_ctor_set(x_5, 3, x_4); +lean_ctor_set_usize(x_5, 4, x_1); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; uint64_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2; +x_4 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__3; +x_5 = 0; +x_6 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9; +x_7 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1; +x_8 = lean_unsigned_to_nat(0u); +x_9 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_9, 0, x_3); +lean_ctor_set(x_9, 1, x_1); +lean_ctor_set(x_9, 2, x_6); +lean_ctor_set(x_9, 3, x_7); +lean_ctor_set(x_9, 4, x_2); +lean_ctor_set(x_9, 5, x_8); +lean_ctor_set(x_9, 6, x_2); +lean_ctor_set_uint64(x_9, sizeof(void*)*7, x_4); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 8, x_5); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 9, x_5); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 10, x_5); +return x_9; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5; +x_3 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 2, x_1); +lean_ctor_set(x_3, 3, x_2); +lean_ctor_set(x_3, 4, x_2); +lean_ctor_set(x_3, 5, x_2); +lean_ctor_set(x_3, 6, x_2); +lean_ctor_set(x_3, 7, x_2); +lean_ctor_set(x_3, 8, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5; +x_2 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +lean_ctor_set(x_2, 4, x_1); +lean_ctor_set(x_2, 5, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5; +x_2 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11; +x_3 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12; +x_4 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8; +x_5 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13; +x_6 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_6, 0, x_2); +lean_ctor_set(x_6, 1, x_3); +lean_ctor_set(x_6, 2, x_1); +lean_ctor_set(x_6, 3, x_4); +lean_ctor_set(x_6, 4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_st_ref_get(x_3, x_4); +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_7 = lean_ctor_get(x_5, 0); +x_8 = lean_ctor_get(x_5, 1); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1; +lean_inc(x_1); +x_11 = l_Lean_Elab_PartialFixpoint_isInductName(x_9, x_1); +x_12 = lean_unbox(x_11); +lean_dec(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_free_object(x_5); +lean_dec(x_1); +x_13 = lean_box(0); +x_14 = lean_apply_4(x_10, x_13, x_2, x_3, x_8); +return x_14; +} +else +{ +if (lean_obj_tag(x_1) == 1) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_free_object(x_5); +x_15 = lean_ctor_get(x_1, 0); +lean_inc(x_15); +lean_dec(x_1); +x_16 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14; +x_17 = lean_st_mk_ref(x_16, x_8); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10; +lean_inc(x_18); +x_21 = l_Lean_Elab_PartialFixpoint_deriveInduction(x_15, x_20, x_18, x_2, x_3, x_19); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +x_23 = lean_st_ref_get(x_18, x_22); +lean_dec(x_18); +x_24 = !lean_is_exclusive(x_23); +if (x_24 == 0) +{ +lean_object* x_25; uint8_t x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_23, 0); +lean_dec(x_25); +x_26 = 1; +x_27 = lean_box(x_26); +lean_ctor_set(x_23, 0, x_27); +return x_23; +} +else +{ +lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_23, 1); +lean_inc(x_28); +lean_dec(x_23); +x_29 = 1; +x_30 = lean_box(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_28); +return x_31; +} +} +else +{ +uint8_t x_32; +lean_dec(x_18); +x_32 = !lean_is_exclusive(x_21); +if (x_32 == 0) +{ +return x_21; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_21, 0); +x_34 = lean_ctor_get(x_21, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_21); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +else +{ +uint8_t x_36; lean_object* x_37; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_36 = 0; +x_37 = lean_box(x_36); +lean_ctor_set(x_5, 0, x_37); +return x_5; +} +} +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_38 = lean_ctor_get(x_5, 0); +x_39 = lean_ctor_get(x_5, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_5); +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1; +lean_inc(x_1); +x_42 = l_Lean_Elab_PartialFixpoint_isInductName(x_40, x_1); +x_43 = lean_unbox(x_42); +lean_dec(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_1); +x_44 = lean_box(0); +x_45 = lean_apply_4(x_41, x_44, x_2, x_3, x_39); +return x_45; +} +else +{ +if (lean_obj_tag(x_1) == 1) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_46 = lean_ctor_get(x_1, 0); +lean_inc(x_46); +lean_dec(x_1); +x_47 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14; +x_48 = lean_st_mk_ref(x_47, x_39); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); +lean_dec(x_48); +x_51 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10; +lean_inc(x_49); +x_52 = l_Lean_Elab_PartialFixpoint_deriveInduction(x_46, x_51, x_49, x_2, x_3, x_50); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_object* x_58; lean_object* x_59; +x_53 = lean_ctor_get(x_52, 1); +lean_inc(x_53); +lean_dec(x_52); +x_54 = lean_st_ref_get(x_49, x_53); +lean_dec(x_49); +x_55 = lean_ctor_get(x_54, 1); +lean_inc(x_55); +if (lean_is_exclusive(x_54)) { + lean_ctor_release(x_54, 0); + lean_ctor_release(x_54, 1); + x_56 = x_54; +} else { + lean_dec_ref(x_54); + x_56 = lean_box(0); +} +x_57 = 1; +x_58 = lean_box(x_57); +if (lean_is_scalar(x_56)) { + x_59 = lean_alloc_ctor(0, 2, 0); +} else { + x_59 = x_56; +} +lean_ctor_set(x_59, 0, x_58); +lean_ctor_set(x_59, 1, x_55); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +lean_dec(x_49); +x_60 = lean_ctor_get(x_52, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_52, 1); +lean_inc(x_61); +if (lean_is_exclusive(x_52)) { + lean_ctor_release(x_52, 0); + lean_ctor_release(x_52, 1); + x_62 = x_52; +} else { + lean_dec_ref(x_52); + x_62 = lean_box(0); +} +if (lean_is_scalar(x_62)) { + x_63 = lean_alloc_ctor(1, 2, 0); +} else { + x_63 = x_62; +} +lean_ctor_set(x_63, 0, x_60); +lean_ctor_set(x_63, 1, x_61); +return x_63; +} +} +else +{ +uint8_t x_64; lean_object* x_65; lean_object* x_66; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_64 = 0; +x_65 = lean_box(x_64); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_39); +return x_66; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_isInductName), 2, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1; +x_3 = l_Lean_registerReservedNamePredicate(x_2, x_1); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_3, 1); +lean_inc(x_4); +lean_dec(x_3); +x_5 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2; +x_6 = l_Lean_registerReservedNameAction(x_5, x_4); +return x_6; +} +else +{ +uint8_t x_7; +x_7 = !lean_is_exclusive(x_3); +if (x_7 == 0) +{ +return x_3; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 0); +x_9 = lean_ctor_get(x_3, 1); +lean_inc(x_9); +lean_inc(x_8); +lean_dec(x_3); +x_10 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +return x_10; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__1(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = lean_box(0); +x_3 = lean_panic_fn(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__2(lean_object* x_1) { +_start: +{ +uint8_t x_2; +x_2 = l_Lean_Expr_isLambda(x_1); +if (x_2 == 0) +{ +lean_object* x_3; +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_1); +return x_3; +} +else +{ +lean_object* x_4; +x_4 = l_Lean_Expr_bindingBody_x21(x_1); +lean_dec(x_1); +x_1 = x_4; +goto _start; +} +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPOPi", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; uint8_t x_4; +x_2 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2; +x_3 = lean_unsigned_to_nat(3u); +x_4 = l_Lean_Expr_isAppOfArity(x_1, x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; +x_5 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_5, 0, x_1); +return x_5; +} +else +{ +lean_object* x_6; uint8_t x_7; +x_6 = l_Lean_Expr_appArg_x21(x_1); +lean_dec(x_1); +x_7 = l_Lean_Expr_isLambda(x_6); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_6); +x_8 = lean_box(0); +return x_8; +} +else +{ +lean_object* x_9; +x_9 = l_Lean_Expr_bindingBody_x21(x_6); +lean_dec(x_6); +x_1 = x_9; +goto _start; +} +} +} +} +static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPOOption", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_eq(x_2, x_3); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; +lean_dec(x_4); +x_6 = lean_array_uget(x_1, x_2); +x_7 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3(x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; +x_8 = lean_box(0); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2; +x_11 = lean_unsigned_to_nat(1u); +x_12 = l_Lean_Expr_isAppOfArity(x_9, x_10, x_11); +lean_dec(x_9); +if (x_12 == 0) +{ +lean_object* x_13; +x_13 = lean_box(0); +return x_13; +} +else +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = 1; +x_15 = lean_usize_add(x_2, x_14); +x_16 = lean_box(0); +x_2 = x_15; +x_4 = x_16; +goto _start; +} +} +} +else +{ +lean_object* x_18; +x_18 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_18, 0, x_4); +return x_18; +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_3 = lean_array_get_size(x_1); +x_4 = l_Lean_Elab_PartialFixpoint_CCPOProdProjs(x_3, x_2); +lean_dec(x_3); +x_5 = lean_array_get_size(x_4); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_nat_dec_lt(x_6, x_5); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_5); +lean_dec(x_4); +x_8 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1; +return x_8; +} +else +{ +uint8_t x_9; +x_9 = lean_nat_dec_le(x_5, x_5); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_5); +lean_dec(x_4); +x_10 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1; +return x_10; +} +else +{ +size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; +x_11 = 0; +x_12 = lean_usize_of_nat(x_5); +lean_dec(x_5); +x_13 = lean_box(0); +x_14 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4(x_4, x_11, x_12, x_13); +lean_dec(x_4); +return x_14; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("isOptionFixpoint: unexpected value ", 35, 35); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PartialFixpoint.isOptionFixpoint", 42, 42); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_3 = lean_expr_dbg_to_string(x_1); +x_4 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1; +x_5 = lean_string_append(x_4, x_3); +lean_dec(x_3); +x_6 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3; +x_7 = lean_string_append(x_5, x_6); +x_8 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6; +x_9 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2; +x_10 = lean_unsigned_to_nat(189u); +x_11 = lean_unsigned_to_nat(48u); +x_12 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_8, x_9, x_10, x_11, x_7); +lean_dec(x_7); +x_13 = l_panic___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__1(x_12); +return x_13; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("defnInfo.hasValue\n ", 20, 20); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3; +x_2 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6; +x_2 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2; +x_3 = lean_unsigned_to_nat(186u); +x_4 = lean_unsigned_to_nat(2u); +x_5 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isOptionFixpoint(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_3 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_4 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1; +lean_inc(x_2); +lean_inc(x_1); +x_5 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_3, x_4, x_1, x_2); +if (lean_obj_tag(x_5) == 0) +{ +uint8_t x_6; +lean_dec(x_2); +lean_dec(x_1); +x_6 = 0; +return x_6; +} +else +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_7 = lean_ctor_get(x_5, 0); +lean_inc(x_7); +lean_dec(x_5); +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +x_59 = lean_array_get_size(x_8); +x_60 = lean_unsigned_to_nat(0u); +x_61 = lean_nat_dec_lt(x_60, x_59); +lean_dec(x_59); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; uint8_t x_64; +x_62 = l_Lean_instInhabitedName; +x_63 = l_outOfBounds___rarg(x_62); +x_64 = lean_name_eq(x_2, x_63); +lean_dec(x_63); +lean_dec(x_2); +if (x_64 == 0) +{ +uint8_t x_65; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_1); +x_65 = 0; +return x_65; +} +else +{ +lean_object* x_66; +x_66 = lean_box(0); +x_9 = x_66; +goto block_58; +} +} +else +{ +lean_object* x_67; uint8_t x_68; +x_67 = lean_array_fget(x_8, x_60); +x_68 = lean_name_eq(x_2, x_67); +lean_dec(x_67); +lean_dec(x_2); +if (x_68 == 0) +{ +uint8_t x_69; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_1); +x_69 = 0; +return x_69; +} +else +{ +lean_object* x_70; +x_70 = lean_box(0); +x_9 = x_70; +goto block_58; +} +} +block_58: +{ +lean_object* x_10; lean_object* x_11; +lean_dec(x_9); +x_10 = lean_ctor_get(x_7, 2); +lean_inc(x_10); +lean_dec(x_7); +x_11 = l_Lean_Environment_find_x3f(x_1, x_10); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +lean_dec(x_8); +x_12 = 0; +return x_12; +} +else +{ +lean_object* x_13; uint8_t x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +lean_dec(x_11); +x_14 = 0; +x_15 = l_Lean_ConstantInfo_hasValue(x_13, x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_13); +lean_dec(x_8); +x_16 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3; +x_17 = l_panic___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__1(x_16); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; +x_18 = 0; +return x_18; +} +else +{ +uint8_t x_19; +lean_dec(x_17); +x_19 = 1; +return x_19; +} +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_20 = l_Lean_ConstantInfo_value_x21(x_13, x_14); +lean_dec(x_13); +x_21 = l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__2(x_20); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +lean_dec(x_21); +lean_inc(x_22); +x_23 = l_Lean_Expr_cleanupAnnotations(x_22); +x_24 = l_Lean_Expr_isApp(x_23); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_23); +lean_dec(x_8); +x_25 = lean_box(0); +x_26 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_22, x_25); +lean_dec(x_22); +if (lean_obj_tag(x_26) == 0) +{ +uint8_t x_27; +x_27 = 0; +return x_27; +} +else +{ +uint8_t x_28; +lean_dec(x_26); +x_28 = 1; +return x_28; +} +} +else +{ +lean_object* x_29; uint8_t x_30; +x_29 = l_Lean_Expr_appFnCleanup(x_23, lean_box(0)); +x_30 = l_Lean_Expr_isApp(x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_29); +lean_dec(x_8); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_22, x_31); +lean_dec(x_22); +if (lean_obj_tag(x_32) == 0) +{ +uint8_t x_33; +x_33 = 0; +return x_33; +} +else +{ +uint8_t x_34; +lean_dec(x_32); +x_34 = 1; +return x_34; +} +} +else +{ +lean_object* x_35; uint8_t x_36; +x_35 = l_Lean_Expr_appFnCleanup(x_29, lean_box(0)); +x_36 = l_Lean_Expr_isApp(x_35); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_35); +lean_dec(x_8); +x_37 = lean_box(0); +x_38 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_22, x_37); +lean_dec(x_22); +if (lean_obj_tag(x_38) == 0) +{ +uint8_t x_39; +x_39 = 0; +return x_39; +} +else +{ +uint8_t x_40; +lean_dec(x_38); +x_40 = 1; +return x_40; +} +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Lean_Expr_appArg(x_35, lean_box(0)); +x_42 = l_Lean_Expr_appFnCleanup(x_35, lean_box(0)); +x_43 = l_Lean_Expr_isApp(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_42); +lean_dec(x_41); +lean_dec(x_8); +x_44 = lean_box(0); +x_45 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_22, x_44); +lean_dec(x_22); +if (lean_obj_tag(x_45) == 0) +{ +uint8_t x_46; +x_46 = 0; +return x_46; +} +else +{ +uint8_t x_47; +lean_dec(x_45); +x_47 = 1; +return x_47; +} +} +else +{ +lean_object* x_48; lean_object* x_49; uint8_t x_50; +x_48 = l_Lean_Expr_appFnCleanup(x_42, lean_box(0)); +x_49 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2; +x_50 = l_Lean_Expr_isConstOf(x_48, x_49); +lean_dec(x_48); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_41); +lean_dec(x_8); +x_51 = lean_box(0); +x_52 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_22, x_51); +lean_dec(x_22); +if (lean_obj_tag(x_52) == 0) +{ +uint8_t x_53; +x_53 = 0; +return x_53; +} +else +{ +uint8_t x_54; +lean_dec(x_52); +x_54 = 1; +return x_54; +} +} +else +{ +lean_object* x_55; +lean_dec(x_22); +x_55 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1(x_8, x_41); +lean_dec(x_8); +if (lean_obj_tag(x_55) == 0) +{ +uint8_t x_56; +x_56 = 0; +return x_56; +} +else +{ +uint8_t x_57; +lean_dec(x_55); +x_57 = 1; +return x_57; +} +} +} +} +} +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1(x_1, x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isOptionFixpoint___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint(x_1, x_2); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partial_correctness", 19, 19); +return x_1; +} +} +LEAN_EXPORT uint8_t l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 1) +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_3 = lean_ctor_get(x_2, 0); +lean_inc(x_3); +x_4 = lean_ctor_get(x_2, 1); +lean_inc(x_4); +lean_dec(x_2); +x_5 = l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1; +x_6 = lean_string_dec_eq(x_4, x_5); +lean_dec(x_4); +if (x_6 == 0) +{ +uint8_t x_7; +lean_dec(x_3); +lean_dec(x_1); +x_7 = 0; +return x_7; +} +else +{ +uint8_t x_8; +x_8 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint(x_1, x_3); +return x_8; +} +} +else +{ +uint8_t x_9; +lean_dec(x_2); +lean_dec(x_1); +x_9 = 0; +return x_9; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +x_5 = lean_box(x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_pi_apply", 19, 19); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, size_t x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +uint8_t x_15; +x_15 = lean_usize_dec_lt(x_8, x_7); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_9); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; +x_17 = lean_array_uget(x_6, x_8); +lean_inc(x_1); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_1); +x_19 = lean_array_mk(x_18); +x_20 = 0; +x_21 = 1; +x_22 = 1; +x_23 = l_Lean_Meta_mkLambdaFVars(x_19, x_9, x_20, x_21, x_20, x_22, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_19); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_24); +lean_inc(x_3); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_3); +lean_inc(x_2); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_2); +lean_ctor_set(x_28, 1, x_27); +lean_inc(x_2); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_2); +lean_ctor_set(x_29, 1, x_28); +lean_inc(x_2); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_2); +lean_ctor_set(x_30, 1, x_29); +lean_inc(x_2); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_2); +lean_ctor_set(x_31, 1, x_30); +x_32 = lean_array_mk(x_31); +x_33 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_34 = l_Lean_Meta_mkAppOptM(x_33, x_32, x_10, x_11, x_12, x_13, x_25); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; size_t x_37; size_t x_38; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +lean_dec(x_34); +x_37 = 1; +x_38 = lean_usize_add(x_8, x_37); +x_8 = x_38; +x_9 = x_35; +x_14 = x_36; +goto _start; +} +else +{ +uint8_t x_40; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_34); +if (x_40 == 0) +{ +return x_34; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_34, 0); +x_42 = lean_ctor_get(x_34, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_34); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +uint8_t x_44; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_23); +if (x_44 == 0) +{ +return x_23; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_23, 0); +x_46 = lean_ctor_get(x_23, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_23); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Option", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_eq_some", 18, 18); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1; +x_4 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("admissible_pi", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2; +x_3 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_9 = l_Lean_mkAppN(x_1, x_2); +lean_inc(x_2); +x_10 = lean_array_pop(x_2); +x_11 = l_Lean_instInhabitedExpr; +x_12 = l_Array_back_x21___rarg(x_11, x_2); +lean_dec(x_2); +x_13 = lean_box(0); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +lean_inc(x_14); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_9); +lean_ctor_set(x_15, 1, x_14); +x_16 = lean_array_mk(x_15); +x_17 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_18 = l_Lean_Meta_mkAppM(x_17, x_16, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; uint8_t x_23; uint8_t x_24; lean_object* x_25; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_array_mk(x_14); +x_22 = 0; +x_23 = 1; +x_24 = 1; +x_25 = l_Lean_Meta_mkLambdaFVars(x_21, x_19, x_22, x_23, x_22, x_24, x_4, x_5, x_6, x_7, x_20); +lean_dec(x_21); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = lean_box(0); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_26); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_13); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_28); +lean_ctor_set(x_32, 1, x_31); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_28); +lean_ctor_set(x_33, 1, x_32); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_28); +lean_ctor_set(x_34, 1, x_33); +x_35 = lean_array_mk(x_34); +x_36 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_37 = l_Lean_Meta_mkAppOptM(x_36, x_35, x_4, x_5, x_6, x_7, x_27); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; size_t x_42; size_t x_43; lean_object* x_44; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Array_reverse___rarg(x_10); +x_41 = lean_box(0); +x_42 = lean_array_size(x_40); +x_43 = 0; +x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1(x_13, x_28, x_13, x_40, x_41, x_40, x_42, x_43, x_38, x_4, x_5, x_6, x_7, x_39); +lean_dec(x_40); +if (lean_obj_tag(x_44) == 0) +{ +uint8_t x_45; +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +return x_44; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_44, 0); +x_47 = lean_ctor_get(x_44, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_44); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +else +{ +uint8_t x_49; +x_49 = !lean_is_exclusive(x_44); +if (x_49 == 0) +{ +return x_44; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_44, 0); +x_51 = lean_ctor_get(x_44, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_44); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_53 = !lean_is_exclusive(x_37); +if (x_53 == 0) +{ +return x_37; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_37, 0); +x_55 = lean_ctor_get(x_37, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_37); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_57 = !lean_is_exclusive(x_25); +if (x_57 == 0) +{ +return x_25; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_25, 0); +x_59 = lean_ctor_get(x_25, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_25); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_61 = !lean_is_exclusive(x_18); +if (x_61 == 0) +{ +return x_18; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_18, 0); +x_63 = lean_ctor_get(x_18, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_18); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +return x_64; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_7 = lean_infer_type(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___boxed), 8, 1); +lean_closure_set(x_10, 0, x_1); +x_11 = 0; +x_12 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_8, x_10, x_11, x_2, x_3, x_4, x_5, x_9); +return x_12; +} +else +{ +uint8_t x_13; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_13 = !lean_is_exclusive(x_7); +if (x_13 == 0) +{ +return x_7; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_7, 0); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_7); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +size_t x_15; size_t x_16; lean_object* x_17; +x_15 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_16 = lean_unbox_usize(x_8); +lean_dec(x_8); +x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_15, x_16, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_lt(x_3, x_2); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_4); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_array_uget(x_4, x_3); +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_array_uset(x_4, x_3, x_13); +x_15 = lean_ctor_get(x_12, 0); +lean_inc(x_15); +lean_dec(x_12); +x_16 = lean_ctor_get(x_15, 2); +lean_inc(x_16); +lean_dec(x_15); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_17 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(x_1, x_13, x_16, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; size_t x_20; size_t x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = 1; +x_21 = lean_usize_add(x_3, x_20); +x_22 = lean_array_uset(x_14, x_3, x_18); +x_3 = x_21; +x_4 = x_22; +x_9 = x_19; +goto _start; +} +else +{ +uint8_t x_24; +lean_dec(x_14); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_24 = !lean_is_exclusive(x_17); +if (x_24 == 0) +{ +return x_17; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_17, 0); +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_17); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1; +x_2 = l_Lean_Expr_sort___override(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; uint8_t x_11; uint8_t x_12; lean_object* x_13; +x_8 = lean_array_push(x_1, x_2); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1; +x_10 = 0; +x_11 = 1; +x_12 = 1; +x_13 = l_Lean_Meta_mkForallFVars(x_8, x_9, x_10, x_11, x_12, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_8); +return x_13; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("r", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; uint8_t x_14; lean_object* x_15; +x_8 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2; +x_9 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_8, x_5, x_6, x_7); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___boxed), 7, 1); +lean_closure_set(x_12, 0, x_1); +x_13 = 0; +x_14 = 0; +x_15 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_10, x_13, x_2, x_12, x_14, x_3, x_4, x_5, x_6, x_11); +return x_15; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Expected `Option`, got:", 23, 23); +return x_1; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = l_Lean_indentExpr(x_1); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2; +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +x_11 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_12 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_12, x_3, x_4, x_5, x_6, x_7); +return x_13; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_8 = lean_whnf(x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +lean_inc(x_9); +x_11 = l_Lean_Expr_cleanupAnnotations(x_9); +x_12 = l_Lean_Expr_isApp(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_11); +lean_dec(x_1); +x_13 = lean_box(0); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3(x_9, x_13, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_15 = l_Lean_Expr_appArg(x_11, lean_box(0)); +x_16 = l_Lean_Expr_appFnCleanup(x_11, lean_box(0)); +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1; +x_18 = l_Lean_Expr_isConstOf(x_16, x_17); +lean_dec(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_15); +lean_dec(x_1); +x_19 = lean_box(0); +x_20 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3(x_9, x_19, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_20; +} +else +{ +lean_object* x_21; +lean_dec(x_9); +x_21 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2(x_1, x_15, x_3, x_4, x_5, x_6, x_10); +return x_21; +} +} +} +else +{ +uint8_t x_22; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_22 = !lean_is_exclusive(x_8); +if (x_22 == 0) +{ +return x_8; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_8, 0); +x_24 = lean_ctor_get(x_8, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_8); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4), 7, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_2, x_1); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_3); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; +x_11 = lean_array_uget(x_3, x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_array_uset(x_3, x_2, x_12); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1; +x_15 = 0; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_16 = l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___spec__2___rarg(x_11, x_14, x_15, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = 1; +x_20 = lean_usize_add(x_2, x_19); +x_21 = lean_array_uset(x_13, x_2, x_17); +x_2 = x_20; +x_3 = x_21; +x_8 = x_18; +goto _start; +} +else +{ +uint8_t x_23; +lean_dec(x_13); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_23 = !lean_is_exclusive(x_16); +if (x_23 == 0) +{ +return x_16; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_16, 0); +x_25 = lean_ctor_get(x_16, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_16); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("motive_", 7, 7); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_nat_dec_eq(x_5, x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_16 = lean_unsigned_to_nat(1u); +x_17 = lean_nat_sub(x_5, x_16); +lean_dec(x_5); +x_18 = lean_array_fget(x_4, x_6); +x_19 = lean_nat_dec_eq(x_2, x_16); +x_20 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__15___lambda__1___boxed), 7, 1); +lean_closure_set(x_20, 0, x_18); +if (x_19 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_21 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +lean_inc(x_21); +x_22 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); +x_23 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1; +x_24 = lean_string_append(x_23, x_22); +lean_dec(x_22); +x_25 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3; +x_26 = lean_string_append(x_24, x_25); +x_27 = lean_box(0); +x_28 = l_Lean_Name_str___override(x_27, x_26); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_20); +x_30 = lean_array_push(x_8, x_29); +x_5 = x_17; +x_6 = x_21; +x_7 = lean_box(0); +x_8 = x_30; +goto _start; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_32 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2; +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_20); +x_34 = lean_nat_add(x_6, x_16); +lean_dec(x_6); +x_35 = lean_array_push(x_8, x_33); +x_5 = x_17; +x_6 = x_34; +x_7 = lean_box(0); +x_8 = x_35; +goto _start; +} +} +else +{ +lean_object* x_37; +lean_dec(x_6); +lean_dec(x_5); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_8); +lean_ctor_set(x_37, 1, x_13); +return x_37; +} +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("some", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_inc(x_3); +x_10 = lean_array_pop(x_3); +x_11 = l_Lean_instInhabitedExpr; +x_12 = l_Array_back_x21___rarg(x_11, x_3); +x_13 = lean_box(0); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +x_15 = lean_array_mk(x_14); +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_17 = l_Lean_Meta_mkAppM(x_16, x_15, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +lean_inc(x_1); +x_20 = l_Lean_mkAppN(x_1, x_10); +lean_dec(x_10); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_21 = l_Lean_Meta_mkEq(x_20, x_18, x_5, x_6, x_7, x_8, x_19); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_mkAppN(x_2, x_3); +x_25 = l_Lean_mkArrow(x_22, x_24, x_7, x_8, x_23); +x_26 = !lean_is_exclusive(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; uint8_t x_30; uint8_t x_31; lean_object* x_32; +x_27 = lean_ctor_get(x_25, 0); +x_28 = lean_ctor_get(x_25, 1); +x_29 = 0; +x_30 = 1; +x_31 = 1; +x_32 = l_Lean_Meta_mkForallFVars(x_3, x_27, x_29, x_30, x_31, x_5, x_6, x_7, x_8, x_28); +lean_dec(x_3); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +lean_ctor_set_tag(x_25, 1); +lean_ctor_set(x_25, 1, x_13); +lean_ctor_set(x_25, 0, x_1); +x_35 = lean_array_mk(x_25); +x_36 = l_Lean_Meta_mkLambdaFVars(x_35, x_33, x_29, x_30, x_29, x_31, x_5, x_6, x_7, x_8, x_34); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_35); +return x_36; +} +else +{ +uint8_t x_37; +lean_free_object(x_25); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_37 = !lean_is_exclusive(x_32); +if (x_37 == 0) +{ +return x_32; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_32, 0); +x_39 = lean_ctor_get(x_32, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_32); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +else +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; uint8_t x_44; uint8_t x_45; lean_object* x_46; +x_41 = lean_ctor_get(x_25, 0); +x_42 = lean_ctor_get(x_25, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_25); +x_43 = 0; +x_44 = 1; +x_45 = 1; +x_46 = l_Lean_Meta_mkForallFVars(x_3, x_41, x_43, x_44, x_45, x_5, x_6, x_7, x_8, x_42); +lean_dec(x_3); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_1); +lean_ctor_set(x_49, 1, x_13); +x_50 = lean_array_mk(x_49); +x_51 = l_Lean_Meta_mkLambdaFVars(x_50, x_47, x_43, x_44, x_43, x_45, x_5, x_6, x_7, x_8, x_48); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_50); +return x_51; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_52 = lean_ctor_get(x_46, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_46, 1); +lean_inc(x_53); +if (lean_is_exclusive(x_46)) { + lean_ctor_release(x_46, 0); + lean_ctor_release(x_46, 1); + x_54 = x_46; +} else { + lean_dec_ref(x_46); + x_54 = lean_box(0); +} +if (lean_is_scalar(x_54)) { + x_55 = lean_alloc_ctor(1, 2, 0); +} else { + x_55 = x_54; +} +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_53); +return x_55; +} +} +} +else +{ +uint8_t x_56; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_56 = !lean_is_exclusive(x_21); +if (x_56 == 0) +{ +return x_21; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_21, 0); +x_58 = lean_ctor_get(x_21, 1); +lean_inc(x_58); +lean_inc(x_57); +lean_dec(x_21); +x_59 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_59, 0, x_57); +lean_ctor_set(x_59, 1, x_58); +return x_59; +} +} +} +else +{ +uint8_t x_60; +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_60 = !lean_is_exclusive(x_17); +if (x_60 == 0) +{ +return x_17; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_17, 0); +x_62 = lean_ctor_get(x_17, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_17); +x_63 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_62); +return x_63; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_8 = lean_infer_type(x_1, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___boxed), 9, 2); +lean_closure_set(x_11, 0, x_2); +lean_closure_set(x_11, 1, x_1); +x_12 = 0; +x_13 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_9, x_11, x_12, x_3, x_4, x_5, x_6, x_10); +return x_13; +} +else +{ +uint8_t x_14; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_14 = !lean_is_exclusive(x_8); +if (x_14 == 0) +{ +return x_8; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_8, 0); +x_16 = lean_ctor_get(x_8, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_8); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; uint8_t x_14; +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_nat_dec_eq(x_4, x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; +x_15 = lean_unsigned_to_nat(1u); +x_16 = lean_nat_sub(x_4, x_15); +lean_dec(x_4); +x_17 = lean_array_fget(x_3, x_5); +x_18 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2; +x_19 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_18, x_10, x_11, x_12); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = lean_array_get_size(x_1); +x_23 = lean_nat_dec_lt(x_5, x_22); +lean_dec(x_22); +x_24 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__2), 7, 1); +lean_closure_set(x_24, 0, x_17); +if (x_23 == 0) +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; uint8_t x_28; lean_object* x_29; +x_25 = l_Lean_instInhabitedExpr; +x_26 = l_outOfBounds___rarg(x_25); +x_27 = 0; +x_28 = 0; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_29 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_20, x_27, x_26, x_24, x_28, x_8, x_9, x_10, x_11, x_21); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_nat_add(x_5, x_15); +lean_dec(x_5); +x_33 = lean_array_push(x_7, x_30); +x_4 = x_16; +x_5 = x_32; +x_6 = lean_box(0); +x_7 = x_33; +x_12 = x_31; +goto _start; +} +else +{ +uint8_t x_35; +lean_dec(x_16); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +x_35 = !lean_is_exclusive(x_29); +if (x_35 == 0) +{ +return x_29; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_29, 0); +x_37 = lean_ctor_get(x_29, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_29); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; uint8_t x_40; uint8_t x_41; lean_object* x_42; +x_39 = lean_array_fget(x_1, x_5); +x_40 = 0; +x_41 = 0; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_42 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_20, x_40, x_39, x_24, x_41, x_8, x_9, x_10, x_11, x_21); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); +lean_dec(x_42); +x_45 = lean_nat_add(x_5, x_15); +lean_dec(x_5); +x_46 = lean_array_push(x_7, x_43); +x_4 = x_16; +x_5 = x_45; +x_6 = lean_box(0); +x_7 = x_46; +x_12 = x_44; +goto _start; +} +else +{ +uint8_t x_48; +lean_dec(x_16); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +x_48 = !lean_is_exclusive(x_42); +if (x_48 == 0) +{ +return x_42; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_42, 0); +x_50 = lean_ctor_get(x_42, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_42); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +} +else +{ +lean_object* x_52; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_7); +lean_ctor_set(x_52, 1, x_12); +return x_52; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5(size_t x_1, size_t x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_8, 0, x_5); +x_9 = 1; +x_10 = lean_usize_add(x_2, x_9); +x_11 = lean_array_uset(x_7, x_2, x_8); +x_2 = x_10; +x_3 = x_11; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_2, x_1); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_3); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_array_uget(x_3, x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_array_uset(x_3, x_2, x_12); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_14 = l_Lean_Elab_PartialFixpoint_mkOptionAdm(x_11, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = 1; +x_18 = lean_usize_add(x_2, x_17); +x_19 = lean_array_uset(x_13, x_2, x_15); +x_2 = x_18; +x_3 = x_19; +x_8 = x_16; +goto _start; +} +else +{ +uint8_t x_21; +lean_dec(x_13); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_21 = !lean_is_exclusive(x_14); +if (x_21 == 0) +{ +return x_14; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_14, 0); +x_23 = lean_ctor_get(x_14, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_14); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +} +} +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_4; +x_4 = l_List_reverse___rarg(x_3); +return x_4; +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_2); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = lean_ctor_get(x_2, 0); +x_7 = lean_ctor_get(x_2, 1); +x_8 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_6); +if (x_8 == 0) +{ +lean_free_object(x_2); +lean_dec(x_6); +x_2 = x_7; +goto _start; +} +else +{ +lean_ctor_set(x_2, 1, x_3); +{ +lean_object* _tmp_1 = x_7; +lean_object* _tmp_2 = x_2; +x_2 = _tmp_1; +x_3 = _tmp_2; +} +goto _start; +} +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_2, 0); +x_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_2); +x_13 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_11); +if (x_13 == 0) +{ +lean_dec(x_11); +x_2 = x_12; +goto _start; +} +else +{ +lean_object* x_15; +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_11); +lean_ctor_set(x_15, 1, x_3); +x_2 = x_12; +x_3 = x_15; +goto _start; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("complete body of partial correctness principle:", 47, 47); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1(lean_object* x_1, lean_object* x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_array_get_size(x_5); +x_12 = lean_mk_empty_array_with_capacity(x_11); +x_13 = lean_unsigned_to_nat(0u); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_14 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4(x_1, x_5, x_5, x_11, x_13, lean_box(0), x_12, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; size_t x_18; lean_object* x_19; lean_object* x_20; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +lean_inc(x_2); +x_17 = l_Array_append___rarg(x_2, x_15); +lean_dec(x_15); +x_18 = lean_array_size(x_17); +x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5(x_18, x_3, x_17); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_20 = l_Lean_Meta_mkAppOptM(x_4, x_19, x_6, x_7, x_8, x_9, x_16); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; size_t x_23; lean_object* x_24; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_array_size(x_5); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6(x_23, x_3, x_5, x_6, x_7, x_8, x_9, x_22); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; uint8_t x_29; uint8_t x_30; lean_object* x_31; +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = l_Lean_mkAppN(x_21, x_25); +lean_dec(x_25); +x_28 = 0; +x_29 = 1; +x_30 = 1; +x_31 = l_Lean_Meta_mkLambdaFVars(x_5, x_27, x_28, x_29, x_28, x_30, x_6, x_7, x_8, x_9, x_26); +lean_dec(x_5); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = 0; +x_35 = l_Lean_Meta_mkLambdaFVars(x_2, x_32, x_29, x_29, x_28, x_34, x_6, x_7, x_8, x_9, x_33); +lean_dec(x_2); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_36, x_6, x_7, x_8, x_9, x_37); +x_39 = !lean_is_exclusive(x_38); +if (x_39 == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_40 = lean_ctor_get(x_38, 0); +x_41 = lean_ctor_get(x_38, 1); +x_42 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +x_43 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_42, x_6, x_7, x_8, x_9, x_41); +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +x_45 = lean_unbox(x_44); +lean_dec(x_44); +if (x_45 == 0) +{ +uint8_t x_46; +lean_free_object(x_38); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_46 = !lean_is_exclusive(x_43); +if (x_46 == 0) +{ +lean_object* x_47; +x_47 = lean_ctor_get(x_43, 0); +lean_dec(x_47); +lean_ctor_set(x_43, 0, x_40); +return x_43; +} +else +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_43, 1); +lean_inc(x_48); +lean_dec(x_43); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_40); +lean_ctor_set(x_49, 1, x_48); +return x_49; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +lean_inc(x_40); +x_51 = l_Lean_indentExpr(x_40); +x_52 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2; +lean_ctor_set_tag(x_38, 7); +lean_ctor_set(x_38, 1, x_51); +lean_ctor_set(x_38, 0, x_52); +x_53 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_54 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_54, 0, x_38); +lean_ctor_set(x_54, 1, x_53); +x_55 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_42, x_54, x_6, x_7, x_8, x_9, x_50); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_56 = !lean_is_exclusive(x_55); +if (x_56 == 0) +{ +lean_object* x_57; +x_57 = lean_ctor_get(x_55, 0); +lean_dec(x_57); +lean_ctor_set(x_55, 0, x_40); +return x_55; +} +else +{ +lean_object* x_58; lean_object* x_59; +x_58 = lean_ctor_get(x_55, 1); +lean_inc(x_58); +lean_dec(x_55); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_40); +lean_ctor_set(x_59, 1, x_58); +return x_59; +} +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_60 = lean_ctor_get(x_38, 0); +x_61 = lean_ctor_get(x_38, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_38); +x_62 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +x_63 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_62, x_6, x_7, x_8, x_9, x_61); +x_64 = lean_ctor_get(x_63, 0); +lean_inc(x_64); +x_65 = lean_unbox(x_64); +lean_dec(x_64); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_66 = lean_ctor_get(x_63, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_63)) { + lean_ctor_release(x_63, 0); + lean_ctor_release(x_63, 1); + x_67 = x_63; +} else { + lean_dec_ref(x_63); + x_67 = lean_box(0); +} +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(0, 2, 0); +} else { + x_68 = x_67; +} +lean_ctor_set(x_68, 0, x_60); +lean_ctor_set(x_68, 1, x_66); +return x_68; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_69 = lean_ctor_get(x_63, 1); +lean_inc(x_69); +lean_dec(x_63); +lean_inc(x_60); +x_70 = l_Lean_indentExpr(x_60); +x_71 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2; +x_72 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_70); +x_73 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_74 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +x_75 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_62, x_74, x_6, x_7, x_8, x_9, x_69); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_76 = lean_ctor_get(x_75, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_77 = x_75; +} else { + lean_dec_ref(x_75); + x_77 = lean_box(0); +} +if (lean_is_scalar(x_77)) { + x_78 = lean_alloc_ctor(0, 2, 0); +} else { + x_78 = x_77; +} +lean_ctor_set(x_78, 0, x_60); +lean_ctor_set(x_78, 1, x_76); +return x_78; +} +} +} +else +{ +uint8_t x_79; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_79 = !lean_is_exclusive(x_35); +if (x_79 == 0) +{ +return x_35; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_35, 0); +x_81 = lean_ctor_get(x_35, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_35); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; +} +} +} +else +{ +uint8_t x_83; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +x_83 = !lean_is_exclusive(x_31); +if (x_83 == 0) +{ +return x_31; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_31, 0); +x_85 = lean_ctor_get(x_31, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_31); +x_86 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_86, 0, x_84); +lean_ctor_set(x_86, 1, x_85); +return x_86; +} +} +} +else +{ +uint8_t x_87; +lean_dec(x_21); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_87 = !lean_is_exclusive(x_24); +if (x_87 == 0) +{ +return x_24; +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_24, 0); +x_89 = lean_ctor_get(x_24, 1); +lean_inc(x_89); +lean_inc(x_88); +lean_dec(x_24); +x_90 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_90, 0, x_88); +lean_ctor_set(x_90, 1, x_89); +return x_90; +} +} +} +else +{ +uint8_t x_91; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_91 = !lean_is_exclusive(x_20); +if (x_91 == 0) +{ +return x_20; +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_92 = lean_ctor_get(x_20, 0); +x_93 = lean_ctor_get(x_20, 1); +lean_inc(x_93); +lean_inc(x_92); +lean_dec(x_20); +x_94 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_94, 0, x_92); +lean_ctor_set(x_94, 1, x_93); +return x_94; +} +} +} +else +{ +uint8_t x_95; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_95 = !lean_is_exclusive(x_14); +if (x_95 == 0) +{ +return x_14; +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_96 = lean_ctor_get(x_14, 0); +x_97 = lean_ctor_get(x_14, 1); +lean_inc(x_97); +lean_inc(x_96); +lean_dec(x_14); +x_98 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_98, 0, x_96); +lean_ctor_set(x_98, 1, x_97); +return x_98; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; lean_object* x_13; +x_12 = lean_array_size(x_1); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1(x_5, x_12, x_2, x_1, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; size_t x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_array_size(x_14); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_14); +x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2(x_16, x_2, x_14, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_array_get_size(x_18); +x_21 = lean_mk_empty_array_with_capacity(x_20); +x_22 = lean_unsigned_to_nat(0u); +x_23 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3(x_1, x_3, x_18, x_18, x_20, x_22, lean_box(0), x_21, x_7, x_8, x_9, x_10, x_19); +lean_dec(x_18); +lean_dec(x_1); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = lean_box_usize(x_2); +x_27 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___boxed), 10, 4); +lean_closure_set(x_27, 0, x_14); +lean_closure_set(x_27, 1, x_5); +lean_closure_set(x_27, 2, x_26); +lean_closure_set(x_27, 3, x_4); +x_28 = l_Lean_instInhabitedExpr; +x_29 = l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(x_28, x_24, x_27, x_7, x_8, x_9, x_10, x_25); +return x_29; +} +else +{ +uint8_t x_30; +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_30 = !lean_is_exclusive(x_17); +if (x_30 == 0) +{ +return x_17; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_17, 0); +x_32 = lean_ctor_get(x_17, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_17); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +else +{ +uint8_t x_34; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_34 = !lean_is_exclusive(x_13); +if (x_34 == 0) +{ +return x_13; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_13, 0); +x_36 = lean_ctor_get(x_13, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_13); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Core_betaReduce___lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Core_betaReduce___lambda__2___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1() { +_start: +{ +size_t x_1; lean_object* x_2; +x_1 = 0; +x_2 = lean_box_usize(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_8 = lean_st_ref_get(x_6, x_7); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +if (lean_is_exclusive(x_8)) { + lean_ctor_release(x_8, 0); + lean_ctor_release(x_8, 1); + x_11 = x_8; +} else { + lean_dec_ref(x_8); + x_11 = lean_box(0); +} +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +lean_dec(x_9); +x_13 = l_Lean_Elab_PartialFixpoint_instInhabitedEqnInfo; +x_14 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1; +lean_inc(x_1); +x_15 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_13, x_14, x_12, x_1); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_dec(x_2); +x_16 = l_Lean_MessageData_ofName(x_1); +x_17 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +if (lean_is_scalar(x_11)) { + x_18 = lean_alloc_ctor(7, 2, 0); +} else { + x_18 = x_11; + lean_ctor_set_tag(x_18, 7); +} +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +x_19 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_20, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; size_t x_25; size_t x_26; lean_object* x_27; +x_22 = lean_ctor_get(x_15, 0); +lean_inc(x_22); +if (lean_is_exclusive(x_15)) { + lean_ctor_release(x_15, 0); + x_23 = x_15; +} else { + lean_dec_ref(x_15); + x_23 = lean_box(0); +} +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +x_25 = lean_array_size(x_24); +x_26 = 0; +x_27 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__3(x_25, x_26, x_24, x_3, x_4, x_5, x_6, x_10); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_array_get_size(x_28); +x_31 = lean_unsigned_to_nat(0u); +x_32 = lean_nat_dec_lt(x_31, x_30); +x_33 = lean_ctor_get(x_22, 3); +lean_inc(x_33); +lean_dec(x_22); +x_34 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1; +lean_inc(x_28); +x_35 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2___boxed), 11, 4); +lean_closure_set(x_35, 0, x_28); +lean_closure_set(x_35, 1, x_34); +lean_closure_set(x_35, 2, x_30); +lean_closure_set(x_35, 3, x_2); +if (x_32 == 0) +{ +lean_object* x_86; lean_object* x_87; +lean_dec(x_28); +x_86 = l_Lean_instInhabitedDefinitionVal; +x_87 = l_outOfBounds___rarg(x_86); +x_36 = x_87; +goto block_85; +} +else +{ +lean_object* x_88; +x_88 = lean_array_fget(x_28, x_31); +lean_dec(x_28); +x_36 = x_88; +goto block_85; +} +block_85: +{ +lean_object* x_37; uint8_t x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_36, 1); +lean_inc(x_37); +x_38 = 0; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_39 = l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__19___rarg(x_37, x_33, x_35, x_38, x_3, x_4, x_5, x_6, x_29); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_39, 1); +lean_inc(x_41); +lean_dec(x_39); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_40); +x_42 = lean_infer_type(x_40, x_3, x_4, x_5, x_6, x_41); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); +lean_dec(x_42); +x_45 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4; +x_46 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5; +lean_inc(x_6); +lean_inc(x_5); +x_47 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_43, x_45, x_46, x_5, x_6, x_44); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_47, 1); +lean_inc(x_49); +lean_dec(x_47); +x_50 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1; +x_51 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2; +lean_inc(x_6); +lean_inc(x_5); +x_52 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_48, x_50, x_51, x_5, x_6, x_49); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); +x_54 = lean_ctor_get(x_52, 1); +lean_inc(x_54); +lean_dec(x_52); +x_55 = lean_box(0); +x_56 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9; +lean_inc(x_53); +x_57 = l_Lean_CollectLevelParams_main(x_53, x_56); +x_58 = lean_ctor_get(x_57, 2); +lean_inc(x_58); +lean_dec(x_57); +x_59 = lean_ctor_get(x_36, 0); +lean_inc(x_59); +lean_dec(x_36); +x_60 = lean_ctor_get(x_59, 1); +lean_inc(x_60); +lean_dec(x_59); +x_61 = l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7(x_58, x_60, x_55); +lean_dec(x_58); +x_62 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3; +x_63 = l_Lean_Name_append(x_1, x_62); +lean_inc(x_63); +x_64 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_61); +lean_ctor_set(x_64, 2, x_53); +if (lean_is_scalar(x_11)) { + x_65 = lean_alloc_ctor(1, 2, 0); +} else { + x_65 = x_11; + lean_ctor_set_tag(x_65, 1); +} +lean_ctor_set(x_65, 0, x_63); +lean_ctor_set(x_65, 1, x_55); +x_66 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_40); +lean_ctor_set(x_66, 2, x_65); +if (lean_is_scalar(x_23)) { + x_67 = lean_alloc_ctor(2, 1, 0); +} else { + x_67 = x_23; + lean_ctor_set_tag(x_67, 2); +} +lean_ctor_set(x_67, 0, x_66); +x_68 = l_Lean_addDecl(x_67, x_5, x_6, x_54); +return x_68; +} +else +{ +uint8_t x_69; +lean_dec(x_40); +lean_dec(x_36); +lean_dec(x_23); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_69 = !lean_is_exclusive(x_52); +if (x_69 == 0) +{ +return x_52; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_52, 0); +x_71 = lean_ctor_get(x_52, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_52); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +return x_72; +} +} +} +else +{ +uint8_t x_73; +lean_dec(x_40); +lean_dec(x_36); +lean_dec(x_23); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_73 = !lean_is_exclusive(x_47); +if (x_73 == 0) +{ +return x_47; +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_47, 0); +x_75 = lean_ctor_get(x_47, 1); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_47); +x_76 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_76, 0, x_74); +lean_ctor_set(x_76, 1, x_75); +return x_76; +} +} +} +else +{ +uint8_t x_77; +lean_dec(x_40); +lean_dec(x_36); +lean_dec(x_23); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_77 = !lean_is_exclusive(x_42); +if (x_77 == 0) +{ +return x_42; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_42, 0); +x_79 = lean_ctor_get(x_42, 1); +lean_inc(x_79); +lean_inc(x_78); +lean_dec(x_42); +x_80 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_80, 0, x_78); +lean_ctor_set(x_80, 1, x_79); +return x_80; +} +} +} +else +{ +uint8_t x_81; +lean_dec(x_36); +lean_dec(x_23); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_81 = !lean_is_exclusive(x_39); +if (x_81 == 0) +{ +return x_39; +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_39, 0); +x_83 = lean_ctor_get(x_39, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_39); +x_84 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +return x_84; +} +} +} +} +else +{ +uint8_t x_89; +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_89 = !lean_is_exclusive(x_27); +if (x_89 == 0) +{ +return x_27; +} +else +{ +lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_90 = lean_ctor_get(x_27, 0); +x_91 = lean_ctor_get(x_27, 1); +lean_inc(x_91); +lean_inc(x_90); +lean_dec(x_27); +x_92 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_92, 0, x_90); +lean_ctor_set(x_92, 1, x_91); +return x_92; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Cannot derive partial correctness theorem (please report this issue)\n", 69, 69); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l_Lean_indentD(x_1); +x_3 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2; +x_4 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_4, 0, x_3); +lean_ctor_set(x_4, 1, x_2); +x_5 = l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4; +x_6 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_6, 0, x_4); +lean_ctor_set(x_6, 1, x_5); +return x_6; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3), 7, 2); +lean_closure_set(x_9, 0, x_1); +lean_closure_set(x_9, 1, x_2); +x_10 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1; +x_11 = l_Lean_Meta_mapErrorImp___rarg(x_9, x_10, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_11); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set(x_15, 1, x_14); +return x_15; +} +} +else +{ +uint8_t x_16; +x_16 = !lean_is_exclusive(x_11); +if (x_16 == 0) +{ +return x_11; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_11, 0); +x_18 = lean_ctor_get(x_11, 1); +lean_inc(x_18); +lean_inc(x_17); +lean_dec(x_11); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_7 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11; +lean_inc(x_1); +x_8 = l_Lean_Name_append(x_1, x_7); +x_9 = lean_st_ref_get(x_5, x_6); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +lean_inc(x_8); +x_13 = l_Lean_Environment_contains(x_12, x_8); +if (x_13 == 0) +{ +lean_object* x_14; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_14 = l_Lean_Elab_PartialFixpoint_deriveInduction(x_1, x_2, x_3, x_4, x_5, x_11); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5(x_1, x_8, x_15, x_2, x_3, x_4, x_5, x_16); +lean_dec(x_15); +return x_17; +} +else +{ +uint8_t x_18; +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_14); +if (x_18 == 0) +{ +return x_14; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_14, 0); +x_20 = lean_ctor_get(x_14, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_14); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +else +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_box(0); +x_23 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5(x_1, x_8, x_22, x_2, x_3, x_4, x_5, x_11); +return x_23; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__1(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__5(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__6(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +return x_11; +} +} +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_List_filterTR_loop___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__7(x_1, x_2, x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; lean_object* x_12; +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1(x_1, x_2, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; lean_object* x_13; +x_12 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_13 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__2(x_1, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_6); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_6 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14; +x_7 = lean_st_mk_ref(x_6, x_5); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10; +lean_inc(x_8); +x_11 = l_Lean_Elab_PartialFixpoint_derivePartialCorrectness(x_1, x_10, x_8, x_3, x_4, x_9); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +x_13 = lean_st_ref_get(x_8, x_12); +lean_dec(x_8); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; uint8_t x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +lean_dec(x_15); +x_16 = 0; +x_17 = lean_box(x_16); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = 0; +x_20 = lean_box(x_19); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_18); +return x_21; +} +} +else +{ +uint8_t x_22; +lean_dec(x_8); +x_22 = !lean_is_exclusive(x_11); +if (x_22 == 0) +{ +return x_11; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_11, 0); +x_24 = lean_ctor_get(x_11, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_11); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; uint8_t x_7; +x_6 = lean_st_ref_get(x_4, x_5); +x_7 = !lean_is_exclusive(x_6); +if (x_7 == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = lean_ctor_get(x_6, 0); +x_9 = lean_ctor_get(x_6, 1); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +lean_dec(x_8); +lean_inc(x_1); +x_11 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint(x_10, x_1); +if (x_11 == 0) +{ +uint8_t x_12; lean_object* x_13; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_12 = 0; +x_13 = lean_box(x_12); +lean_ctor_set(x_6, 0, x_13); +return x_6; +} +else +{ +lean_object* x_14; lean_object* x_15; +lean_free_object(x_6); +x_14 = lean_box(0); +x_15 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1(x_1, x_14, x_3, x_4, x_9); +return x_15; +} +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = lean_ctor_get(x_6, 0); +x_17 = lean_ctor_get(x_6, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_6); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +lean_dec(x_16); +lean_inc(x_1); +x_19 = l_Lean_Elab_PartialFixpoint_isOptionFixpoint(x_18, x_1); +if (x_19 == 0) +{ +uint8_t x_20; lean_object* x_21; lean_object* x_22; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_20 = 0; +x_21 = lean_box(x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_17); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_box(0); +x_24 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1(x_1, x_23, x_3, x_4, x_17); +return x_24; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +if (lean_obj_tag(x_1) == 1) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_5 = lean_ctor_get(x_1, 0); +lean_inc(x_5); +x_6 = lean_ctor_get(x_1, 1); +lean_inc(x_6); +lean_dec(x_1); +x_7 = l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1; +x_8 = lean_string_dec_eq(x_6, x_7); +lean_dec(x_6); +if (x_8 == 0) +{ +uint8_t x_9; lean_object* x_10; lean_object* x_11; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_9 = 0; +x_10 = lean_box(x_9); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_4); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_box(0); +x_13 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2(x_5, x_12, x_2, x_3, x_4); +return x_13; +} +} +else +{ +uint8_t x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_14 = 0; +x_15 = lean_box(x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_4); +return x_16; +} +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___boxed), 2, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__3), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1; +x_3 = l_Lean_registerReservedNamePredicate(x_2, x_1); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_3, 1); +lean_inc(x_4); +lean_dec(x_3); +x_5 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2; +x_6 = l_Lean_registerReservedNameAction(x_5, x_4); +return x_6; +} +else +{ +uint8_t x_7; +x_7 = !lean_is_exclusive(x_3); +if (x_7 == 0) +{ +return x_3; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_3, 0); +x_9 = lean_ctor_get(x_3, 1); +lean_inc(x_9); +lean_inc(x_8); +lean_dec(x_3); +x_10 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +return x_10; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__1(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____lambda__2(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("initFn", 6, 6); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_@", 2, 2); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4; +x_2 = l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5; +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PreDefinition", 13, 13); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PartialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Induction", 9, 9); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_hyg", 4, 4); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14; +x_2 = lean_unsigned_to_nat(4844u); +x_3 = l_Lean_Name_num___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844_(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9; +x_3 = 0; +x_4 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15; +x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); +return x_5; +} +} +lean_object* initialize_Lean_Meta_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Match_MatcherApp_Transform(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Check(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Subst(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Injective(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_ArgsPacker(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_PProdN(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Apply(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_Command(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_ElimInfo(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Induction(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Meta_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Match_MatcherApp_Transform(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Check(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Subst(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Injective(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_ArgsPacker(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_PProdN(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Apply(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_Command(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_ElimInfo(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__1); +l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__2); +l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__3); +l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmAnd___closed__4); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__1); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__2); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__3); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__1___closed__4); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__1); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__2); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__3); +l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___lambda__2___closed__4); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__1); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__2); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__3); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__4); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__5); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__6); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__7); +l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8 = _init_l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkAdmProj___closed__8); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_maskArray___rarg___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Induction_0__Lean_Elab_PartialFixpoint_numberNames___lambda__1___closed__1); +l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1 = _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1(); +lean_mark_persistent(l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__1); +l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2 = _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2(); +lean_mark_persistent(l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__2); +l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3 = _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3(); +lean_mark_persistent(l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__3); +l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4 = _init_l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4(); +lean_mark_persistent(l_Lean_getConstInfoDefn___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__1___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__7___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__9___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__11___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___lambda__1___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_deriveInduction___spec__16___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__3); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__4); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__5); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__6); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__7); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__8); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__9); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__10); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__4___closed__11); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__5___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__6___closed__3); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__7___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__8___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__9___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__3); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__4); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__5); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__6); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__7); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__8); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__9); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__10); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___closed__11); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__10___boxed__const__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__1); +l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___lambda__11___closed__2); +l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1 = _init_l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_deriveInduction___closed__1); +l_Lean_Elab_PartialFixpoint_isInductName___closed__1 = _init_l_Lean_Elab_PartialFixpoint_isInductName___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isInductName___closed__1); +l_Lean_Elab_PartialFixpoint_isInductName___closed__2 = _init_l_Lean_Elab_PartialFixpoint_isInductName___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isInductName___closed__2); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__2); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__3 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__3(); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__4); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__5); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__6); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__7); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__8); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__9); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__10); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__11); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__12); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__13); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____lambda__2___closed__14); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641____closed__2); +if (builtin) {res = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_2641_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__1); +l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2 = _init_l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__3___closed__2); +l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1(); +lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__1); +l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2(); +lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_PartialFixpoint_isOptionFixpoint___spec__4___closed__2); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__1___closed__1); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__1); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___lambda__2___closed__2); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__1); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__2); +l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3 = _init_l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isOptionFixpoint___closed__3); +l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1 = _init_l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_isPartialCorrectnessName___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_PartialFixpoint_mkOptionAdm___spec__1___closed__2); +l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1 = _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__1); +l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2 = _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__2); +l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3 = _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__3); +l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4 = _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__4); +l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5 = _init_l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_mkOptionAdm___lambda__1___closed__5); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__1___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__2___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__3___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___lambda__4___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__2___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__3___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_PartialFixpoint_derivePartialCorrectness___spec__4___lambda__1___closed__2); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__1); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__1___closed__2); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__1); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__2); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___closed__3); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__3___boxed__const__1); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__1); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__4___closed__2); +l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1 = _init_l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_derivePartialCorrectness___lambda__5___closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__1); +l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2 = _init_l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2(); +lean_mark_persistent(l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658____closed__2); +if (builtin) {res = l_Lean_Elab_PartialFixpoint_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4658_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__1); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__2); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__3); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__4); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__5); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__6); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__7); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__8); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__9); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__10); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__11); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__12); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__13); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__14); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844____closed__15); +if (builtin) {res = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Induction___hyg_4844_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Main.c b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Main.c new file mode 100644 index 0000000000..731eb5591d --- /dev/null +++ b/stage0/stdlib/Lean/Elab/PreDefinition/PartialFixpoint/Main.c @@ -0,0 +1,8378 @@ +// Lean compiler output +// Module: Lean.Elab.PreDefinition.PartialFixpoint.Main +// Imports: Lean.Elab.PreDefinition.MkInhabitant Lean.Elab.PreDefinition.Mutual Lean.Elab.PreDefinition.PartialFixpoint.Eqns Lean.Elab.Tactic.Monotonicity Init.Internal.Order.Basic Lean.Meta.PProdN +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkSorry(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10(lean_object*, lean_object*, lean_object*, size_t, lean_object*, uint8_t, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_Term_logUnassignedUsingErrorInfos(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___closed__3; +extern lean_object* l_Lean_Elab_instInhabitedPreDefinition; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14(lean_object*); +lean_object* l_Lean_Meta_mkAppOptM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_mk_empty_array_with_capacity(lean_object*); +lean_object* l_Lean_mkAppN(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13; +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8; +static lean_object* l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2; +lean_object* l_Lean_Elab_Mutual_addPreDefAttributes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4; +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2; +lean_object* l_Lean_indentD(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4; +uint8_t l_Lean_Exception_isInterrupt(lean_object*); +lean_object* l_panic___at_Lean_Elab_Term_reportStuckSyntheticMVar___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__6; +uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_mkInstCCPOPProd___closed__2; +uint8_t l_Lean_Expr_isApp(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1; +lean_object* l_Array_findIdx_x3f_loop___rarg(lean_object*, lean_object*, lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__4; +lean_object* l_Lean_getRecAppSyntax_x3f(lean_object*); +lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_usize_dec_eq(size_t, size_t); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___closed__1; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22; +lean_object* l_Lean_Meta_PProdN_pack(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_replaceRef(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1; +lean_object* l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2; +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__1___closed__1; +lean_object* l_Lean_Elab_Mutual_cleanPreDefs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__1___closed__1; +lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__2___closed__1; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___boxed(lean_object**); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +lean_object* l_Lean_stringToMessageData(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2(lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__5; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__3; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1; +lean_object* l_Lean_Elab_PartialFixpoint_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Level_ofNat(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1(lean_object*, lean_object*, lean_object*); +lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_Elab_Term_elabTermEnsuringType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3; +uint8_t l_Lean_Expr_isLambda(lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__7; +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__1___closed__3; +size_t lean_usize_of_nat(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12; +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1; +lean_object* l_instMonadControlTOfMonadControl___rarg(lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_reverse___rarg(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11; +lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_replace_expr(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17; +uint8_t lean_expr_eqv(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4; +lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofSyntax(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2; +lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3; +lean_object* l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_genMk___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofFormat(lean_object*); +lean_object* l_Lean_MessageData_andList(lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__7; +lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837_(lean_object*); +lean_object* l_outOfBounds___rarg(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__1; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7; +lean_object* l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__2___closed__2; +lean_object* lean_array_to_list(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps(lean_object*); +lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); +lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); +lean_object* l_Lean_Meta_synthInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_append(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_instInhabitedExpr; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8; +static lean_object* l_Lean_Elab_mkInstCCPOPProd___closed__4; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__8; +static lean_object* l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1; +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____spec__2___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_mkInstCCPOPProd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Elab_instInhabitedPartialFixpoint; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__8; +static lean_object* l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1; +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__3___closed__1; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2; +lean_object* l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5(lean_object*, size_t, size_t, lean_object*); +lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofExpr(lean_object*); +lean_object* l_instMonadControlTOfPure___rarg(lean_object*); +lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__1___closed__2; +static lean_object* l_Lean_Elab_partialFixpoint___closed__4; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_hasRecAppSyntax___boxed(lean_object*); +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4; +static lean_object* l_Lean_Elab_partialFixpoint___closed__2; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8(size_t, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__2___closed__2; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__1; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4; +lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17___boxed(lean_object**); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6; +lean_object* l_Lean_Elab_mkInhabitantFor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_Mutual_getFixedPrefix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mapErrorImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3; +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__4; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12; +lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__2___boxed(lean_object**); +lean_object* l_Lean_indentExpr(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10; +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14; +lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3; +lean_object* l_Lean_Elab_addAsAxiom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_panic_fn(lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20; +lean_object* lean_nat_sub(lean_object*, lean_object*); +lean_object* l_instMonadControlReaderT___lambda__2(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_mk(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_Core_instMonadCoreM; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_mkMonoPProd___lambda__1___closed__2; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2; +lean_object* l_List_reverse___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_mk(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___closed__6; +size_t lean_usize_add(size_t, size_t); +lean_object* l_Lean_Meta_getMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l_Lean_Elab_mkInstCCPOPProd___closed__3; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___boxed(lean_object**); +size_t lean_array_size(lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15(lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1; +LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5; +lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_string_append(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9; +lean_object* l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8; +lean_object* l_Lean_Meta_Monotonicity_solveMono(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_get_size(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10; +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_find_expr(lean_object*, lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +static lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1; +lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9; +lean_object* lean_nat_add(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Exception_isRuntime(lean_object*); +lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___lambda__3___closed__6; +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5; +lean_object* l_Lean_Expr_mvarId_x21(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_mkInstCCPOPProd___closed__1; +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +lean_object* l_Lean_MessageData_ofName(lean_object*); +lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_partialFixpoint___closed__5; +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_partialFixpoint___spec__11(lean_object*); +lean_object* l_ReaderT_instMonad___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14; +LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1(lean_object*, lean_object*, lean_object*); +uint8_t l_Array_isEmpty___rarg(lean_object*); +lean_object* l_instMonadControlReaderT___lambda__3___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT uint8_t l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = l_Lean_Expr_isAppOfArity(x_1, x_3, x_2); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1___boxed), 3, 2); +lean_closure_set(x_6, 0, x_5); +lean_closure_set(x_6, 1, x_1); +x_7 = lean_unsigned_to_nat(0u); +x_8 = l_Array_findIdx_x3f_loop___rarg(x_6, x_2, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; +lean_dec(x_4); +lean_dec(x_3); +x_9 = lean_box(0); +return x_9; +} +else +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_8, 0); +x_12 = lean_array_get_size(x_2); +x_13 = l_Lean_Meta_PProdN_proj(x_12, x_11, x_3, x_4); +lean_ctor_set(x_8, 0, x_13); +return x_8; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_8, 0); +lean_inc(x_14); +lean_dec(x_8); +x_15 = lean_array_get_size(x_2); +x_16 = l_Lean_Meta_PProdN_proj(x_15, x_14, x_3, x_4); +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_16); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +lean_inc(x_3); +x_10 = lean_infer_type(x_3, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2___boxed), 5, 4); +lean_closure_set(x_13, 0, x_2); +lean_closure_set(x_13, 1, x_1); +lean_closure_set(x_13, 2, x_12); +lean_closure_set(x_13, 3, x_3); +x_14 = lean_replace_expr(x_13, x_4); +lean_dec(x_13); +lean_ctor_set(x_10, 0, x_14); +return x_10; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_10, 0); +x_16 = lean_ctor_get(x_10, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_10); +x_17 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2___boxed), 5, 4); +lean_closure_set(x_17, 0, x_2); +lean_closure_set(x_17, 1, x_1); +lean_closure_set(x_17, 2, x_15); +lean_closure_set(x_17, 3, x_3); +x_18 = lean_replace_expr(x_17, x_4); +lean_dec(x_17); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_16); +return x_19; +} +} +else +{ +uint8_t x_20; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_20 = !lean_is_exclusive(x_10); +if (x_20 == 0) +{ +return x_10; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_10, 0); +x_22 = lean_ctor_get(x_10, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_10); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_1); +x_5 = lean_box(x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___lambda__2(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = lean_ctor_get(x_6, 3); +lean_inc(x_9); +x_10 = lean_ctor_get(x_6, 1); +lean_inc(x_10); +lean_dec(x_6); +x_11 = lean_box(0); +x_12 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_10, x_11); +x_13 = l_Lean_Expr_const___override(x_9, x_12); +x_14 = l_Lean_mkAppN(x_13, x_1); +x_15 = 1; +x_16 = lean_usize_add(x_3, x_15); +x_17 = lean_array_uset(x_8, x_3, x_14); +x_3 = x_16; +x_4 = x_17; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = lean_usize_dec_eq(x_2, x_3); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +lean_dec(x_4); +x_11 = lean_array_uget(x_1, x_2); +lean_inc(x_8); +lean_inc(x_7); +x_12 = l_Lean_Elab_addAsAxiom(x_11, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_11); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = 1; +x_16 = lean_usize_add(x_2, x_15); +x_2 = x_16; +x_4 = x_13; +x_9 = x_14; +goto _start; +} +else +{ +uint8_t x_18; +lean_dec(x_8); +lean_dec(x_7); +x_18 = !lean_is_exclusive(x_12); +if (x_18 == 0) +{ +return x_12; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_12, 0); +x_20 = lean_ctor_get(x_12, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_12); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +else +{ +lean_object* x_22; +lean_dec(x_8); +lean_dec(x_7); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_4); +lean_ctor_set(x_22, 1, x_9); +return x_22; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_expr_eqv(x_3, x_1); +if (x_4 == 0) +{ +lean_object* x_5; +lean_dec(x_2); +x_5 = lean_box(0); +return x_5; +} +else +{ +lean_object* x_6; +x_6 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_6, 0, x_2); +return x_6; +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_9 = lean_array_get_size(x_2); +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_lt(x_10, x_9); +lean_dec(x_9); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_12 = l_Lean_instInhabitedExpr; +x_13 = l_outOfBounds___rarg(x_12); +x_14 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1___boxed), 3, 2); +lean_closure_set(x_14, 0, x_13); +lean_closure_set(x_14, 1, x_1); +x_15 = lean_replace_expr(x_14, x_3); +lean_dec(x_14); +x_16 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1; +x_17 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2; +x_18 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_15, x_16, x_17, x_6, x_7, x_8); +if (lean_obj_tag(x_18) == 0) +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) +{ +return x_18; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_18, 0); +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_18); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +else +{ +uint8_t x_23; +x_23 = !lean_is_exclusive(x_18); +if (x_23 == 0) +{ +return x_18; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_18, 0); +x_25 = lean_ctor_get(x_18, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_18); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_27 = lean_array_fget(x_2, x_10); +x_28 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1___boxed), 3, 2); +lean_closure_set(x_28, 0, x_27); +lean_closure_set(x_28, 1, x_1); +x_29 = lean_replace_expr(x_28, x_3); +lean_dec(x_28); +x_30 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1; +x_31 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2; +x_32 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_29, x_30, x_31, x_6, x_7, x_8); +if (lean_obj_tag(x_32) == 0) +{ +uint8_t x_33; +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) +{ +return x_32; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 0); +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_32); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +else +{ +uint8_t x_37; +x_37 = !lean_is_exclusive(x_32); +if (x_37 == 0) +{ +return x_32; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_32, 0); +x_39 = lean_ctor_get(x_32, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_32); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Level_ofNat(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_11 = lean_array_get_size(x_1); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_lt(x_12, x_11); +x_14 = lean_st_ref_get(x_9, x_10); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +lean_dec(x_15); +if (x_13 == 0) +{ +lean_dec(x_11); +x_18 = x_16; +goto block_61; +} +else +{ +uint8_t x_62; +x_62 = lean_nat_dec_le(x_11, x_11); +if (x_62 == 0) +{ +lean_dec(x_11); +x_18 = x_16; +goto block_61; +} +else +{ +size_t x_63; size_t x_64; lean_object* x_65; lean_object* x_66; +x_63 = 0; +x_64 = lean_usize_of_nat(x_11); +lean_dec(x_11); +x_65 = lean_box(0); +lean_inc(x_9); +lean_inc(x_8); +x_66 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2(x_1, x_63, x_64, x_65, x_6, x_7, x_8, x_9, x_16); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; +x_67 = lean_ctor_get(x_66, 1); +lean_inc(x_67); +lean_dec(x_66); +x_18 = x_67; +goto block_61; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; uint8_t x_71; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_68 = lean_ctor_get(x_66, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_66, 1); +lean_inc(x_69); +lean_dec(x_66); +x_70 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_17, x_6, x_7, x_8, x_9, x_69); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_71 = !lean_is_exclusive(x_70); +if (x_71 == 0) +{ +lean_object* x_72; +x_72 = lean_ctor_get(x_70, 0); +lean_dec(x_72); +lean_ctor_set_tag(x_70, 1); +lean_ctor_set(x_70, 0, x_68); +return x_70; +} +else +{ +lean_object* x_73; lean_object* x_74; +x_73 = lean_ctor_get(x_70, 1); +lean_inc(x_73); +lean_dec(x_70); +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_68); +lean_ctor_set(x_74, 1, x_73); +return x_74; +} +} +} +} +block_61: +{ +size_t x_19; size_t x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = lean_array_size(x_1); +x_20 = 0; +x_21 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1(x_2, x_19, x_20, x_1); +x_22 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_23 = l_Lean_Meta_PProdN_mk(x_22, x_21, x_6, x_7, x_8, x_9, x_18); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___boxed), 8, 1); +lean_closure_set(x_26, 0, x_24); +x_27 = lean_unsigned_to_nat(1u); +x_28 = 0; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_29 = l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____spec__2___rarg(x_3, x_27, x_26, x_28, x_6, x_7, x_8, x_9, x_25); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_32 = lean_apply_6(x_4, x_30, x_6, x_7, x_8, x_9, x_31); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_17, x_6, x_7, x_8, x_9, x_34); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_36 = !lean_is_exclusive(x_35); +if (x_36 == 0) +{ +lean_object* x_37; +x_37 = lean_ctor_get(x_35, 0); +lean_dec(x_37); +lean_ctor_set(x_35, 0, x_33); +return x_35; +} +else +{ +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_35, 1); +lean_inc(x_38); +lean_dec(x_35); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_33); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_40 = lean_ctor_get(x_32, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_32, 1); +lean_inc(x_41); +lean_dec(x_32); +x_42 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_17, x_6, x_7, x_8, x_9, x_41); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 0) +{ +lean_object* x_44; +x_44 = lean_ctor_get(x_42, 0); +lean_dec(x_44); +lean_ctor_set_tag(x_42, 1); +lean_ctor_set(x_42, 0, x_40); +return x_42; +} +else +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_42, 1); +lean_inc(x_45); +lean_dec(x_42); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_40); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; +lean_dec(x_4); +x_47 = lean_ctor_get(x_29, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_29, 1); +lean_inc(x_48); +lean_dec(x_29); +x_49 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_17, x_6, x_7, x_8, x_9, x_48); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_50 = !lean_is_exclusive(x_49); +if (x_50 == 0) +{ +lean_object* x_51; +x_51 = lean_ctor_get(x_49, 0); +lean_dec(x_51); +lean_ctor_set_tag(x_49, 1); +lean_ctor_set(x_49, 0, x_47); +return x_49; +} +else +{ +lean_object* x_52; lean_object* x_53; +x_52 = lean_ctor_get(x_49, 1); +lean_inc(x_52); +lean_dec(x_49); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_47); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_4); +lean_dec(x_3); +x_54 = lean_ctor_get(x_23, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_23, 1); +lean_inc(x_55); +lean_dec(x_23); +x_56 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_17, x_6, x_7, x_8, x_9, x_55); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_57 = !lean_is_exclusive(x_56); +if (x_57 == 0) +{ +lean_object* x_58; +x_58 = lean_ctor_get(x_56, 0); +lean_dec(x_58); +lean_ctor_set_tag(x_56, 1); +lean_ctor_set(x_56, 0, x_54); +return x_56; +} +else +{ +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_56, 1); +lean_inc(x_59); +lean_dec(x_56); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_54); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Expected lambda:", 16, 16); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = l_Lean_Expr_isLambda(x_3); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +lean_dec(x_4); +lean_dec(x_1); +x_11 = l_Lean_indentExpr(x_3); +x_12 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2; +x_13 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_11); +x_14 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_15 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set(x_15, 1, x_14); +x_16 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_15, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) +{ +return x_16; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_16, 0); +x_19 = lean_ctor_get(x_16, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_16); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +return x_20; +} +} +else +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_box(0); +x_22 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3(x_1, x_2, x_3, x_4, x_21, x_5, x_6, x_7, x_8, x_9); +return x_22; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___boxed), 9, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__1(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +size_t x_10; size_t x_11; lean_object* x_12; +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___spec__2(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_5); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_2); +return x_10; +} +} +static lean_object* _init_l_Lean_Elab_mkInstCCPOPProd___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkInstCCPOPProd___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Order", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkInstCCPOPProd___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPOPProd", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkInstCCPOPProd___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Lean_Elab_mkInstCCPOPProd___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkInstCCPOPProd(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_8 = lean_box(0); +x_9 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_9, 0, x_1); +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_2); +x_11 = lean_box(0); +x_12 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_13, 0, x_9); +lean_ctor_set(x_13, 1, x_12); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_8); +lean_ctor_set(x_14, 1, x_13); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_14); +x_16 = lean_array_mk(x_15); +x_17 = l_Lean_Elab_mkInstCCPOPProd___closed__4; +x_18 = l_Lean_Meta_mkAppOptM(x_17, x_16, x_3, x_4, x_5, x_6, x_7); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PProd", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotone_mk", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Lean_Elab_mkMonoPProd___lambda__1___closed__1; +x_4 = l_Lean_Elab_mkMonoPProd___lambda__1___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_11 = lean_box(0); +x_12 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_12, 0, x_1); +x_13 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_13, 0, x_5); +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_2); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_3); +x_16 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_16, 0, x_4); +x_17 = lean_box(0); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_15); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_11); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_11); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_14); +lean_ctor_set(x_22, 1, x_21); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_13); +lean_ctor_set(x_23, 1, x_22); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_12); +lean_ctor_set(x_24, 1, x_23); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_11); +lean_ctor_set(x_25, 1, x_24); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_11); +lean_ctor_set(x_26, 1, x_25); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_11); +lean_ctor_set(x_27, 1, x_26); +x_28 = lean_array_mk(x_27); +x_29 = l_Lean_Elab_mkMonoPProd___lambda__1___closed__3; +x_30 = l_Lean_Meta_mkAppOptM(x_29, x_28, x_6, x_7, x_8, x_9, x_10); +return x_30; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("mkMonoPProd: unexpected type of", 31, 31); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_mkMonoPProd___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_8 = l_Lean_indentExpr(x_1); +x_9 = l_Lean_Elab_mkMonoPProd___lambda__2___closed__2; +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +x_11 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_12 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +x_13 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_12, x_3, x_4, x_5, x_6, x_7); +return x_13; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotone", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_mkMonoPProd___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Lean_Elab_mkMonoPProd___lambda__3___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_1); +x_10 = lean_infer_type(x_1, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = l_Lean_Expr_cleanupAnnotations(x_11); +x_14 = l_Lean_Expr_isApp(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_dec(x_13); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_15 = lean_box(0); +x_16 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_15, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_16; +} +else +{ +lean_object* x_17; uint8_t x_18; +x_17 = l_Lean_Expr_appFnCleanup(x_13, lean_box(0)); +x_18 = l_Lean_Expr_isApp(x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +lean_dec(x_17); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_19 = lean_box(0); +x_20 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_19, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = l_Lean_Expr_appArg(x_17, lean_box(0)); +x_22 = l_Lean_Expr_appFnCleanup(x_17, lean_box(0)); +x_23 = l_Lean_Expr_isApp(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_24 = lean_box(0); +x_25 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_24, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_25; +} +else +{ +lean_object* x_26; uint8_t x_27; +x_26 = l_Lean_Expr_appFnCleanup(x_22, lean_box(0)); +x_27 = l_Lean_Expr_isApp(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; +lean_dec(x_26); +lean_dec(x_21); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_28, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_29; +} +else +{ +lean_object* x_30; uint8_t x_31; +x_30 = l_Lean_Expr_appFnCleanup(x_26, lean_box(0)); +x_31 = l_Lean_Expr_isApp(x_30); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_30); +lean_dec(x_21); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_32 = lean_box(0); +x_33 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_32, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_33; +} +else +{ +lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_34 = l_Lean_Expr_appFnCleanup(x_30, lean_box(0)); +x_35 = l_Lean_Elab_mkMonoPProd___lambda__3___closed__2; +x_36 = l_Lean_Expr_isConstOf(x_34, x_35); +lean_dec(x_34); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_21); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_37 = lean_box(0); +x_38 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_37, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_38; +} +else +{ +lean_object* x_39; +x_39 = l_Lean_Elab_mkMonoPProd___lambda__1(x_4, x_3, x_2, x_1, x_21, x_5, x_6, x_7, x_8, x_12); +return x_39; +} +} +} +} +} +} +} +else +{ +uint8_t x_40; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_10); +if (x_40 == 0) +{ +return x_10; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_10, 0); +x_42 = lean_ctor_get(x_10, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_10); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_8 = lean_infer_type(x_1, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = l_Lean_Expr_cleanupAnnotations(x_9); +x_12 = l_Lean_Expr_isApp(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_11); +lean_dec(x_2); +x_13 = lean_box(0); +x_14 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_13, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_14; +} +else +{ +lean_object* x_15; uint8_t x_16; +x_15 = l_Lean_Expr_appFnCleanup(x_11, lean_box(0)); +x_16 = l_Lean_Expr_isApp(x_15); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +lean_dec(x_15); +lean_dec(x_2); +x_17 = lean_box(0); +x_18 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_17, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = l_Lean_Expr_appArg(x_15, lean_box(0)); +x_20 = l_Lean_Expr_appFnCleanup(x_15, lean_box(0)); +x_21 = l_Lean_Expr_isApp(x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_2); +x_22 = lean_box(0); +x_23 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_22, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_23; +} +else +{ +lean_object* x_24; uint8_t x_25; +x_24 = l_Lean_Expr_appFnCleanup(x_20, lean_box(0)); +x_25 = l_Lean_Expr_isApp(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_2); +x_26 = lean_box(0); +x_27 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_26, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = l_Lean_Expr_appArg(x_24, lean_box(0)); +x_29 = l_Lean_Expr_appFnCleanup(x_24, lean_box(0)); +x_30 = l_Lean_Expr_isApp(x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_29); +lean_dec(x_28); +lean_dec(x_19); +lean_dec(x_2); +x_31 = lean_box(0); +x_32 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_31, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = l_Lean_Expr_appFnCleanup(x_29, lean_box(0)); +x_34 = l_Lean_Elab_mkMonoPProd___lambda__3___closed__2; +x_35 = l_Lean_Expr_isConstOf(x_33, x_34); +lean_dec(x_33); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_28); +lean_dec(x_19); +lean_dec(x_2); +x_36 = lean_box(0); +x_37 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_36, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_37; +} +else +{ +lean_object* x_38; +x_38 = l_Lean_Elab_mkMonoPProd___lambda__3(x_2, x_1, x_28, x_19, x_3, x_4, x_5, x_6, x_10); +return x_38; +} +} +} +} +} +} +} +else +{ +uint8_t x_39; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_39 = !lean_is_exclusive(x_8); +if (x_39 == 0) +{ +return x_8; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_8, 0); +x_41 = lean_ctor_get(x_8, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_8); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); +return x_42; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_mkMonoPProd___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_mkMonoPProd___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_eq(x_2, x_3); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; +x_6 = lean_array_uget(x_1, x_2); +x_7 = lean_ctor_get(x_6, 6); +lean_inc(x_7); +lean_dec(x_6); +x_8 = lean_ctor_get(x_7, 3); +lean_inc(x_8); +lean_dec(x_7); +x_9 = 1; +x_10 = lean_usize_add(x_2, x_9); +if (lean_obj_tag(x_8) == 0) +{ +x_2 = x_10; +goto _start; +} +else +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_8, 0); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_array_push(x_4, x_12); +x_2 = x_10; +x_4 = x_13; +goto _start; +} +} +else +{ +return x_4; +} +} +} +static lean_object* _init_l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; +x_4 = lean_nat_dec_lt(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; +x_5 = l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1; +return x_5; +} +else +{ +lean_object* x_6; uint8_t x_7; +x_6 = lean_array_get_size(x_1); +x_7 = lean_nat_dec_le(x_3, x_6); +lean_dec(x_6); +if (x_7 == 0) +{ +lean_object* x_8; +x_8 = l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1; +return x_8; +} +else +{ +size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_usize_of_nat(x_2); +x_10 = lean_usize_of_nat(x_3); +x_11 = l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1; +x_12 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2(x_1, x_9, x_10, x_11); +return x_12; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = lean_apply_9(x_1, x_4, x_5, x_2, x_3, x_6, x_7, x_8, x_9, x_10); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; +x_11 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___lambda__1), 10, 3); +lean_closure_set(x_11, 0, x_2); +lean_closure_set(x_11, 1, x_4); +lean_closure_set(x_11, 2, x_5); +x_12 = lean_box(0); +x_13 = 0; +x_14 = l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(x_1, x_13, x_12, x_11, x_3, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +return x_14; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 0); +x_17 = lean_ctor_get(x_14, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_14); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +else +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_14); +if (x_19 == 0) +{ +return x_14; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_14, 0); +x_21 = lean_ctor_get(x_14, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_14); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___boxed), 10, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; uint8_t x_11; uint8_t x_12; lean_object* x_13; +x_10 = 0; +x_11 = 1; +x_12 = 1; +x_13 = l_Lean_Meta_mkLambdaFVars(x_1, x_2, x_10, x_11, x_10, x_12, x_5, x_6, x_7, x_8, x_9); +return x_13; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("failed to compile definition '", 30, 30); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' using `partial_fixpoint`", 26, 26); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Nonempty", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("intro", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Classical", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("ofNonempty", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("FlatOrder", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPO", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11; +x_4 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_13 = lean_ctor_get(x_1, 3); +lean_inc(x_13); +lean_dec(x_1); +x_14 = l_Lean_MessageData_ofName(x_13); +x_15 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +x_17 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +lean_inc(x_2); +x_19 = lean_array_mk(x_2); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_20 = l_Lean_Elab_mkInhabitantFor(x_18, x_19, x_3, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = l_Lean_mkAppN(x_21, x_4); +lean_inc(x_2); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_2); +x_25 = lean_array_mk(x_24); +x_26 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_27 = l_Lean_Meta_mkAppM(x_26, x_25, x_8, x_9, x_10, x_11, x_22); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_box(0); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_28); +lean_inc(x_2); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_2); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_30); +lean_ctor_set(x_33, 1, x_32); +x_34 = lean_array_mk(x_33); +x_35 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_36 = l_Lean_Meta_mkAppOptM(x_35, x_34, x_8, x_9, x_10, x_11, x_29); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +lean_dec(x_36); +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_37); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_2); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_30); +lean_ctor_set(x_41, 1, x_40); +x_42 = lean_array_mk(x_41); +x_43 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13; +x_44 = l_Lean_Meta_mkAppOptM(x_43, x_42, x_8, x_9, x_10, x_11, x_38); +return x_44; +} +else +{ +uint8_t x_45; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +x_45 = !lean_is_exclusive(x_36); +if (x_45 == 0) +{ +return x_36; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_36, 0); +x_47 = lean_ctor_get(x_36, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_36); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +uint8_t x_49; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +x_49 = !lean_is_exclusive(x_27); +if (x_49 == 0) +{ +return x_27; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_27, 0); +x_51 = lean_ctor_get(x_27, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_27); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +x_53 = !lean_is_exclusive(x_20); +if (x_53 == 0) +{ +return x_20; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_20, 0); +x_55 = lean_ctor_get(x_20, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_20); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("CCPO", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Elab", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("definition", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("No CCPO instance found for ", 27, 27); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", trying inhabitation", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_1, 4); +lean_inc(x_11); +x_12 = lean_unsigned_to_nat(0u); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_11); +x_13 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(x_2, x_12, x_11, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_87; lean_object* x_88; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +if (lean_is_exclusive(x_13)) { + lean_ctor_release(x_13, 0); + lean_ctor_release(x_13, 1); + x_16 = x_13; +} else { + lean_dec_ref(x_13); + x_16 = lean_box(0); +} +x_17 = lean_box(0); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_14); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_array_mk(x_18); +x_87 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_88 = l_Lean_Meta_mkAppM(x_87, x_19, x_6, x_7, x_8, x_9, x_15); +if (lean_obj_tag(x_88) == 0) +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 1); +lean_inc(x_90); +lean_dec(x_88); +x_91 = lean_box(0); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_92 = l_Lean_Meta_synthInstance(x_89, x_91, x_6, x_7, x_8, x_9, x_90); +if (lean_obj_tag(x_92) == 0) +{ +lean_object* x_93; lean_object* x_94; uint8_t x_95; uint8_t x_96; uint8_t x_97; lean_object* x_98; +lean_dec(x_16); +lean_dec(x_11); +lean_dec(x_1); +x_93 = lean_ctor_get(x_92, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_92, 1); +lean_inc(x_94); +lean_dec(x_92); +x_95 = 0; +x_96 = 1; +x_97 = 1; +x_98 = l_Lean_Meta_mkLambdaFVars(x_2, x_93, x_95, x_96, x_95, x_97, x_6, x_7, x_8, x_9, x_94); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_98; +} +else +{ +lean_object* x_99; lean_object* x_100; +x_99 = lean_ctor_get(x_92, 0); +lean_inc(x_99); +x_100 = lean_ctor_get(x_92, 1); +lean_inc(x_100); +lean_dec(x_92); +x_20 = x_99; +x_21 = x_100; +goto block_86; +} +} +else +{ +lean_object* x_101; lean_object* x_102; +x_101 = lean_ctor_get(x_88, 0); +lean_inc(x_101); +x_102 = lean_ctor_get(x_88, 1); +lean_inc(x_102); +lean_dec(x_88); +x_20 = x_101; +x_21 = x_102; +goto block_86; +} +block_86: +{ +uint8_t x_22; +x_22 = l_Lean_Exception_isInterrupt(x_20); +if (x_22 == 0) +{ +uint8_t x_23; +x_23 = l_Lean_Exception_isRuntime(x_20); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; +lean_dec(x_20); +lean_dec(x_16); +x_24 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6; +x_25 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_24, x_4, x_5, x_6, x_7, x_8, x_9, x_21); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_unbox(x_26); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_box(0); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_30 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(x_1, x_17, x_11, x_2, x_29, x_4, x_5, x_6, x_7, x_8, x_9, x_28); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; uint8_t x_34; uint8_t x_35; lean_object* x_36; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_30, 1); +lean_inc(x_32); +lean_dec(x_30); +x_33 = 0; +x_34 = 1; +x_35 = 1; +x_36 = l_Lean_Meta_mkLambdaFVars(x_2, x_31, x_33, x_34, x_33, x_35, x_6, x_7, x_8, x_9, x_32); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_36; +} +else +{ +uint8_t x_37; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_37 = !lean_is_exclusive(x_30); +if (x_37 == 0) +{ +return x_30; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_30, 0); +x_39 = lean_ctor_get(x_30, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_30); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +else +{ +uint8_t x_41; +x_41 = !lean_is_exclusive(x_25); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_42 = lean_ctor_get(x_25, 1); +x_43 = lean_ctor_get(x_25, 0); +lean_dec(x_43); +x_44 = lean_ctor_get(x_1, 3); +lean_inc(x_44); +x_45 = l_Lean_MessageData_ofName(x_44); +x_46 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8; +lean_ctor_set_tag(x_25, 7); +lean_ctor_set(x_25, 1, x_45); +lean_ctor_set(x_25, 0, x_46); +x_47 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10; +x_48 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_48, 0, x_25); +lean_ctor_set(x_48, 1, x_47); +x_49 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_24, x_48, x_4, x_5, x_6, x_7, x_8, x_9, x_42); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_49, 1); +lean_inc(x_51); +lean_dec(x_49); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_52 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(x_1, x_17, x_11, x_2, x_50, x_4, x_5, x_6, x_7, x_8, x_9, x_51); +lean_dec(x_50); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; lean_object* x_54; uint8_t x_55; uint8_t x_56; uint8_t x_57; lean_object* x_58; +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); +x_54 = lean_ctor_get(x_52, 1); +lean_inc(x_54); +lean_dec(x_52); +x_55 = 0; +x_56 = 1; +x_57 = 1; +x_58 = l_Lean_Meta_mkLambdaFVars(x_2, x_53, x_55, x_56, x_55, x_57, x_6, x_7, x_8, x_9, x_54); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_58; +} +else +{ +uint8_t x_59; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_59 = !lean_is_exclusive(x_52); +if (x_59 == 0) +{ +return x_52; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_52, 0); +x_61 = lean_ctor_get(x_52, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_52); +x_62 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +return x_62; +} +} +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_63 = lean_ctor_get(x_25, 1); +lean_inc(x_63); +lean_dec(x_25); +x_64 = lean_ctor_get(x_1, 3); +lean_inc(x_64); +x_65 = l_Lean_MessageData_ofName(x_64); +x_66 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8; +x_67 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_65); +x_68 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10; +x_69 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_69, 0, x_67); +lean_ctor_set(x_69, 1, x_68); +x_70 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_24, x_69, x_4, x_5, x_6, x_7, x_8, x_9, x_63); +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +lean_dec(x_70); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_73 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(x_1, x_17, x_11, x_2, x_71, x_4, x_5, x_6, x_7, x_8, x_9, x_72); +lean_dec(x_71); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; uint8_t x_76; uint8_t x_77; uint8_t x_78; lean_object* x_79; +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_73, 1); +lean_inc(x_75); +lean_dec(x_73); +x_76 = 0; +x_77 = 1; +x_78 = 1; +x_79 = l_Lean_Meta_mkLambdaFVars(x_2, x_74, x_76, x_77, x_76, x_78, x_6, x_7, x_8, x_9, x_75); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_79; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_80 = lean_ctor_get(x_73, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_73, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_73)) { + lean_ctor_release(x_73, 0); + lean_ctor_release(x_73, 1); + x_82 = x_73; +} else { + lean_dec_ref(x_73); + x_82 = lean_box(0); +} +if (lean_is_scalar(x_82)) { + x_83 = lean_alloc_ctor(1, 2, 0); +} else { + x_83 = x_82; +} +lean_ctor_set(x_83, 0, x_80); +lean_ctor_set(x_83, 1, x_81); +return x_83; +} +} +} +} +else +{ +lean_object* x_84; +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +if (lean_is_scalar(x_16)) { + x_84 = lean_alloc_ctor(1, 2, 0); +} else { + x_84 = x_16; + lean_ctor_set_tag(x_84, 1); +} +lean_ctor_set(x_84, 0, x_20); +lean_ctor_set(x_84, 1, x_21); +return x_84; +} +} +else +{ +lean_object* x_85; +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +if (lean_is_scalar(x_16)) { + x_85 = lean_alloc_ctor(1, 2, 0); +} else { + x_85 = x_16; + lean_ctor_set_tag(x_85, 1); +} +lean_ctor_set(x_85, 0, x_20); +lean_ctor_set(x_85, 1, x_21); +return x_85; +} +} +} +else +{ +uint8_t x_103; +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_103 = !lean_is_exclusive(x_13); +if (x_103 == 0) +{ +return x_13; +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; +x_104 = lean_ctor_get(x_13, 0); +x_105 = lean_ctor_get(x_13, 1); +lean_inc(x_105); +lean_inc(x_104); +lean_dec(x_13); +x_106 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_106, 0, x_104); +lean_ctor_set(x_106, 1, x_105); +return x_106; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_nat_dec_eq(x_5, x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_sub(x_5, x_18); +lean_dec(x_5); +x_20 = lean_array_fget(x_4, x_6); +x_21 = lean_nat_dec_lt(x_6, x_3); +x_22 = lean_ctor_get(x_20, 5); +lean_inc(x_22); +x_23 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___boxed), 10, 1); +lean_closure_set(x_23, 0, x_20); +if (x_21 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; lean_object* x_44; +x_24 = lean_ctor_get(x_13, 0); +x_25 = lean_ctor_get(x_13, 1); +x_26 = lean_ctor_get(x_13, 2); +x_27 = lean_ctor_get(x_13, 3); +x_28 = lean_ctor_get(x_13, 4); +x_29 = lean_ctor_get(x_13, 5); +x_30 = lean_ctor_get(x_13, 6); +x_31 = lean_ctor_get(x_13, 7); +x_32 = lean_ctor_get(x_13, 8); +x_33 = lean_ctor_get(x_13, 9); +x_34 = lean_ctor_get(x_13, 10); +x_35 = lean_ctor_get_uint8(x_13, sizeof(void*)*12); +x_36 = lean_ctor_get(x_13, 11); +x_37 = lean_ctor_get_uint8(x_13, sizeof(void*)*12 + 1); +x_38 = l_Lean_Elab_instInhabitedPartialFixpoint; +x_39 = l_outOfBounds___rarg(x_38); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +lean_dec(x_39); +x_41 = l_Lean_replaceRef(x_40, x_29); +lean_dec(x_40); +lean_inc(x_36); +lean_inc(x_34); +lean_inc(x_33); +lean_inc(x_32); +lean_inc(x_31); +lean_inc(x_30); +lean_inc(x_28); +lean_inc(x_27); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +x_42 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_42, 0, x_24); +lean_ctor_set(x_42, 1, x_25); +lean_ctor_set(x_42, 2, x_26); +lean_ctor_set(x_42, 3, x_27); +lean_ctor_set(x_42, 4, x_28); +lean_ctor_set(x_42, 5, x_41); +lean_ctor_set(x_42, 6, x_30); +lean_ctor_set(x_42, 7, x_31); +lean_ctor_set(x_42, 8, x_32); +lean_ctor_set(x_42, 9, x_33); +lean_ctor_set(x_42, 10, x_34); +lean_ctor_set(x_42, 11, x_36); +lean_ctor_set_uint8(x_42, sizeof(void*)*12, x_35); +lean_ctor_set_uint8(x_42, sizeof(void*)*12 + 1, x_37); +x_43 = 0; +lean_inc(x_14); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_44 = l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(x_22, x_23, x_43, x_9, x_10, x_11, x_12, x_42, x_14, x_15); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_dec(x_44); +x_47 = lean_nat_add(x_6, x_18); +lean_dec(x_6); +x_48 = lean_array_push(x_8, x_45); +x_5 = x_19; +x_6 = x_47; +x_7 = lean_box(0); +x_8 = x_48; +x_15 = x_46; +goto _start; +} +else +{ +uint8_t x_50; +lean_dec(x_19); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_50 = !lean_is_exclusive(x_44); +if (x_50 == 0) +{ +return x_44; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_44, 0); +x_52 = lean_ctor_get(x_44, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_44); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; uint8_t x_65; lean_object* x_66; uint8_t x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; +x_54 = lean_ctor_get(x_13, 0); +x_55 = lean_ctor_get(x_13, 1); +x_56 = lean_ctor_get(x_13, 2); +x_57 = lean_ctor_get(x_13, 3); +x_58 = lean_ctor_get(x_13, 4); +x_59 = lean_ctor_get(x_13, 5); +x_60 = lean_ctor_get(x_13, 6); +x_61 = lean_ctor_get(x_13, 7); +x_62 = lean_ctor_get(x_13, 8); +x_63 = lean_ctor_get(x_13, 9); +x_64 = lean_ctor_get(x_13, 10); +x_65 = lean_ctor_get_uint8(x_13, sizeof(void*)*12); +x_66 = lean_ctor_get(x_13, 11); +x_67 = lean_ctor_get_uint8(x_13, sizeof(void*)*12 + 1); +x_68 = lean_array_fget(x_2, x_6); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +lean_dec(x_68); +x_70 = l_Lean_replaceRef(x_69, x_59); +lean_dec(x_69); +lean_inc(x_66); +lean_inc(x_64); +lean_inc(x_63); +lean_inc(x_62); +lean_inc(x_61); +lean_inc(x_60); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +x_71 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_71, 0, x_54); +lean_ctor_set(x_71, 1, x_55); +lean_ctor_set(x_71, 2, x_56); +lean_ctor_set(x_71, 3, x_57); +lean_ctor_set(x_71, 4, x_58); +lean_ctor_set(x_71, 5, x_70); +lean_ctor_set(x_71, 6, x_60); +lean_ctor_set(x_71, 7, x_61); +lean_ctor_set(x_71, 8, x_62); +lean_ctor_set(x_71, 9, x_63); +lean_ctor_set(x_71, 10, x_64); +lean_ctor_set(x_71, 11, x_66); +lean_ctor_set_uint8(x_71, sizeof(void*)*12, x_65); +lean_ctor_set_uint8(x_71, sizeof(void*)*12 + 1, x_67); +x_72 = 0; +lean_inc(x_14); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_73 = l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(x_22, x_23, x_72, x_9, x_10, x_11, x_12, x_71, x_14, x_15); +if (lean_obj_tag(x_73) == 0) +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_73, 1); +lean_inc(x_75); +lean_dec(x_73); +x_76 = lean_nat_add(x_6, x_18); +lean_dec(x_6); +x_77 = lean_array_push(x_8, x_74); +x_5 = x_19; +x_6 = x_76; +x_7 = lean_box(0); +x_8 = x_77; +x_15 = x_75; +goto _start; +} +else +{ +uint8_t x_79; +lean_dec(x_19); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +x_79 = !lean_is_exclusive(x_73); +if (x_79 == 0) +{ +return x_73; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_73, 0); +x_81 = lean_ctor_get(x_73, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_73); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; +} +} +} +} +else +{ +lean_object* x_83; +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +x_83 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_83, 0, x_8); +lean_ctor_set(x_83, 1, x_15); +return x_83; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +lean_dec(x_1); +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +lean_inc(x_1); +x_9 = l_Lean_Expr_beta(x_6, x_1); +x_10 = 1; +x_11 = lean_usize_add(x_3, x_10); +x_12 = lean_array_uset(x_8, x_3, x_9); +x_3 = x_11; +x_4 = x_12; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; +x_12 = lean_usize_dec_lt(x_3, x_2); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_4); +lean_ctor_set(x_13, 1, x_11); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_array_uget(x_4, x_3); +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_array_uset(x_4, x_3, x_15); +x_17 = lean_ctor_get(x_14, 4); +lean_inc(x_17); +lean_dec(x_14); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_18 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(x_1, x_15, x_17, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; size_t x_21; size_t x_22; lean_object* x_23; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = 1; +x_22 = lean_usize_add(x_3, x_21); +x_23 = lean_array_uset(x_16, x_3, x_19); +x_3 = x_22; +x_4 = x_23; +x_11 = x_20; +goto _start; +} +else +{ +uint8_t x_25; +lean_dec(x_16); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_25 = !lean_is_exclusive(x_18); +if (x_25 == 0) +{ +return x_18; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_18, 0); +x_27 = lean_ctor_get(x_18, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_18); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("instCCPOPi", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_5, x_4); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_6); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_array_uget(x_3, x_5); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_16); +x_17 = lean_infer_type(x_16, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; uint8_t x_24; uint8_t x_25; lean_object* x_26; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = lean_box(0); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_16); +lean_ctor_set(x_21, 1, x_20); +x_22 = lean_array_mk(x_21); +x_23 = 0; +x_24 = 1; +x_25 = 1; +x_26 = l_Lean_Meta_mkLambdaFVars(x_22, x_6, x_23, x_24, x_23, x_25, x_9, x_10, x_11, x_12, x_19); +lean_dec(x_22); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_18); +x_30 = lean_box(0); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_27); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_20); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_30); +lean_ctor_set(x_33, 1, x_32); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_29); +lean_ctor_set(x_34, 1, x_33); +x_35 = lean_array_mk(x_34); +x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_37 = l_Lean_Meta_mkAppOptM(x_36, x_35, x_9, x_10, x_11, x_12, x_28); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; size_t x_40; size_t x_41; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = 1; +x_41 = lean_usize_add(x_5, x_40); +x_5 = x_41; +x_6 = x_38; +x_13 = x_39; +goto _start; +} +else +{ +uint8_t x_43; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_43 = !lean_is_exclusive(x_37); +if (x_43 == 0) +{ +return x_37; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_37, 0); +x_45 = lean_ctor_get(x_37, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_37); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +else +{ +uint8_t x_47; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_47 = !lean_is_exclusive(x_26); +if (x_47 == 0) +{ +return x_26; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_26, 0); +x_49 = lean_ctor_get(x_26, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_26); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; +} +} +} +else +{ +uint8_t x_51; +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +x_51 = !lean_is_exclusive(x_17); +if (x_51 == 0) +{ +return x_17; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_17, 0); +x_53 = lean_ctor_get(x_17, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_17); +x_54 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; size_t x_13; lean_object* x_14; +x_11 = l_Array_reverse___rarg(x_2); +x_12 = lean_box(0); +x_13 = lean_array_size(x_11); +x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7(x_11, x_12, x_11, x_13, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_11); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +return x_14; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 0); +x_17 = lean_ctor_get(x_14, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_14); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +else +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_14); +if (x_19 == 0) +{ +return x_14; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_14, 0); +x_21 = lean_ctor_get(x_14, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_14); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8(size_t x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; +x_12 = lean_usize_dec_lt(x_3, x_2); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_4); +lean_ctor_set(x_13, 1, x_11); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_14 = lean_array_uget(x_4, x_3); +x_15 = lean_unsigned_to_nat(0u); +x_16 = lean_array_uset(x_4, x_3, x_15); +x_17 = lean_box_usize(x_1); +x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1___boxed), 10, 1); +lean_closure_set(x_18, 0, x_17); +x_19 = 0; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_20 = l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(x_14, x_18, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; lean_object* x_25; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = 1; +x_24 = lean_usize_add(x_3, x_23); +x_25 = lean_array_uset(x_16, x_3, x_21); +x_3 = x_24; +x_4 = x_25; +x_11 = x_22; +goto _start; +} +else +{ +uint8_t x_27; +lean_dec(x_16); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_27 = !lean_is_exclusive(x_20); +if (x_27 == 0) +{ +return x_20; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_20, 0); +x_29 = lean_ctor_get(x_20, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_20); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; +x_12 = lean_usize_dec_eq(x_2, x_3); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_4); +x_13 = lean_array_uget(x_1, x_2); +lean_inc(x_10); +lean_inc(x_9); +x_14 = l_Lean_Elab_addAsAxiom(x_13, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_13); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = 1; +x_18 = lean_usize_add(x_2, x_17); +x_2 = x_18; +x_4 = x_15; +x_11 = x_16; +goto _start; +} +else +{ +uint8_t x_20; +lean_dec(x_10); +lean_dec(x_9); +x_20 = !lean_is_exclusive(x_14); +if (x_20 == 0) +{ +return x_14; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_14, 0); +x_22 = lean_ctor_get(x_14, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_14); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +} +else +{ +lean_object* x_24; +lean_dec(x_10); +lean_dec(x_9); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_4); +lean_ctor_set(x_24, 1, x_11); +return x_24; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_st_ref_get(x_14, x_15); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +lean_dec(x_17); +if (x_4 == 0) +{ +x_20 = x_18; +goto block_49; +} +else +{ +uint8_t x_50; +x_50 = lean_nat_dec_le(x_5, x_5); +if (x_50 == 0) +{ +x_20 = x_18; +goto block_49; +} +else +{ +size_t x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_usize_of_nat(x_5); +x_52 = lean_box(0); +lean_inc(x_14); +lean_inc(x_13); +x_53 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9(x_6, x_7, x_51, x_52, x_9, x_10, x_11, x_12, x_13, x_14, x_18); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; +x_54 = lean_ctor_get(x_53, 1); +lean_inc(x_54); +lean_dec(x_53); +x_20 = x_54; +goto block_49; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +lean_dec(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_55 = lean_ctor_get(x_53, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_53, 1); +lean_inc(x_56); +lean_dec(x_53); +x_57 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_19, x_9, x_10, x_11, x_12, x_13, x_14, x_56); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +x_58 = !lean_is_exclusive(x_57); +if (x_58 == 0) +{ +lean_object* x_59; +x_59 = lean_ctor_get(x_57, 0); +lean_dec(x_59); +lean_ctor_set_tag(x_57, 1); +lean_ctor_set(x_57, 0, x_55); +return x_57; +} +else +{ +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_57, 1); +lean_inc(x_60); +lean_dec(x_57); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_55); +lean_ctor_set(x_61, 1, x_60); +return x_61; +} +} +} +} +block_49: +{ +lean_object* x_21; +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_8); +x_21 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_replaceRecApps(x_1, x_2, x_8, x_3, x_11, x_12, x_13, x_14, x_20); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_19, x_9, x_10, x_11, x_12, x_13, x_14, x_23); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; uint8_t x_31; uint8_t x_32; lean_object* x_33; +x_26 = lean_ctor_get(x_24, 1); +x_27 = lean_ctor_get(x_24, 0); +lean_dec(x_27); +x_28 = lean_box(0); +lean_ctor_set_tag(x_24, 1); +lean_ctor_set(x_24, 1, x_28); +lean_ctor_set(x_24, 0, x_8); +x_29 = lean_array_mk(x_24); +x_30 = 0; +x_31 = 1; +x_32 = 1; +x_33 = l_Lean_Meta_mkLambdaFVars(x_29, x_22, x_30, x_31, x_30, x_32, x_11, x_12, x_13, x_14, x_26); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_29); +return x_33; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; uint8_t x_39; uint8_t x_40; lean_object* x_41; +x_34 = lean_ctor_get(x_24, 1); +lean_inc(x_34); +lean_dec(x_24); +x_35 = lean_box(0); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_8); +lean_ctor_set(x_36, 1, x_35); +x_37 = lean_array_mk(x_36); +x_38 = 0; +x_39 = 1; +x_40 = 1; +x_41 = l_Lean_Meta_mkLambdaFVars(x_37, x_22, x_38, x_39, x_38, x_40, x_11, x_12, x_13, x_14, x_34); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_37); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +lean_dec(x_8); +x_42 = lean_ctor_get(x_21, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_21, 1); +lean_inc(x_43); +lean_dec(x_21); +x_44 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_19, x_9, x_10, x_11, x_12, x_13, x_14, x_43); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +lean_object* x_46; +x_46 = lean_ctor_get(x_44, 0); +lean_dec(x_46); +lean_ctor_set_tag(x_44, 1); +lean_ctor_set(x_44, 0, x_42); +return x_44; +} +else +{ +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_44, 1); +lean_inc(x_47); +lean_dec(x_44); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_42); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("f", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, size_t x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +_start: +{ +uint8_t x_19; +x_19 = lean_usize_dec_lt(x_10, x_9); +if (x_19 == 0) +{ +lean_object* x_20; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_11); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_21 = lean_array_uget(x_11, x_10); +x_22 = lean_unsigned_to_nat(0u); +x_23 = lean_array_uset(x_11, x_10, x_22); +x_24 = lean_ctor_get(x_21, 5); +lean_inc(x_24); +lean_dec(x_21); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +x_25 = l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(x_7, x_22, x_24, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; uint8_t x_36; lean_object* x_37; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2; +x_29 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_28, x_16, x_17, x_27); +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_box(x_6); +x_33 = lean_box_usize(x_4); +lean_inc(x_1); +lean_inc(x_2); +lean_inc(x_3); +lean_inc(x_5); +x_34 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1___boxed), 15, 7); +lean_closure_set(x_34, 0, x_5); +lean_closure_set(x_34, 1, x_3); +lean_closure_set(x_34, 2, x_26); +lean_closure_set(x_34, 3, x_32); +lean_closure_set(x_34, 4, x_2); +lean_closure_set(x_34, 5, x_1); +lean_closure_set(x_34, 6, x_33); +x_35 = 0; +x_36 = 0; +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_8); +x_37 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___spec__1___rarg(x_30, x_35, x_8, x_34, x_36, x_12, x_13, x_14, x_15, x_16, x_17, x_31); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; size_t x_40; size_t x_41; lean_object* x_42; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = 1; +x_41 = lean_usize_add(x_10, x_40); +x_42 = lean_array_uset(x_23, x_10, x_38); +x_10 = x_41; +x_11 = x_42; +x_18 = x_39; +goto _start; +} +else +{ +uint8_t x_44; +lean_dec(x_23); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_37); +if (x_44 == 0) +{ +return x_37; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_37, 0); +x_46 = lean_ctor_get(x_37, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_37); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; +} +} +} +else +{ +uint8_t x_48; +lean_dec(x_23); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_48 = !lean_is_exclusive(x_25); +if (x_48 == 0) +{ +return x_25; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_25, 0); +x_50 = lean_ctor_get(x_25, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_25); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +} +} +static lean_object* _init_l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instInhabitedMetaM___boxed), 5, 1); +lean_closure_set(x_1, 0, lean_box(0)); +return x_1; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1; +x_8 = lean_panic_fn(x_7, x_1); +x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); +return x_9; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_partialFixpoint___spec__11(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_ctor_get(x_4, 5); +x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_7); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set_tag(x_8, 1); +lean_ctor_set(x_8, 0, x_11); +return x_8; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_8, 0); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_8); +lean_inc(x_7); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_12); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg___boxed), 6, 0); +return x_2; +} +} +static lean_object* _init_l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("'", 1, 1); +return x_1; +} +} +static lean_object* _init_l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_3; +x_3 = l_List_reverse___rarg(x_2); +return x_3; +} +else +{ +uint8_t x_4; +x_4 = !lean_is_exclusive(x_1); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_5 = lean_ctor_get(x_1, 0); +x_6 = lean_ctor_get(x_1, 1); +x_7 = 0; +x_8 = l_Lean_MessageData_ofConstName(x_5, x_7); +x_9 = l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2; +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +x_11 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_9); +lean_ctor_set(x_1, 1, x_2); +lean_ctor_set(x_1, 0, x_11); +{ +lean_object* _tmp_0 = x_6; +lean_object* _tmp_1 = x_1; +x_1 = _tmp_0; +x_2 = _tmp_1; +} +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_13 = lean_ctor_get(x_1, 0); +x_14 = lean_ctor_get(x_1, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_1); +x_15 = 0; +x_16 = l_Lean_MessageData_ofConstName(x_13, x_15); +x_17 = l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_2); +x_1 = x_14; +x_2 = x_20; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_ctor_get(x_4, 5); +x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_7); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set_tag(x_8, 1); +lean_ctor_set(x_8, 0, x_11); +return x_8; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_8, 0); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_8); +lean_inc(x_7); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_12); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg___boxed), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_ctor_get(x_4, 5); +x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_7); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_7); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set_tag(x_8, 1); +lean_ctor_set(x_8, 0, x_11); +return x_8; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_8, 0); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_8); +lean_inc(x_7); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_7); +lean_ctor_set(x_14, 1, x_12); +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg___boxed), 6, 0); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PreDefinition.PartialFixpoint.Main", 44, 44); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.partialFixpoint", 25, 25); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getRecAppSyntax\? failed", 23, 23); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2; +x_3 = lean_unsigned_to_nat(117u); +x_4 = lean_unsigned_to_nat(52u); +x_5 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Cannot eliminate recursive call `", 33, 33); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("` enclosed in", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\n", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_hasRecAppSyntax___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Tried to apply ", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(", but failed.\nPossible cause: A missing `", 41, 41); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("MonoBind", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17; +x_2 = 0; +x_3 = l_Lean_MessageData_ofConstName(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("` instance.\nUse `set_option trace.Elab.Tactic.partial_monotonicity true` to debug.", 82, 82); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Cannot eliminate recursive call in", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_48; lean_object* x_49; lean_object* x_50; +x_48 = l_Array_isEmpty___rarg(x_1); +x_49 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11; +x_50 = lean_find_expr(x_49, x_2); +if (x_48 == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_51 = lean_array_to_list(x_1); +x_52 = lean_box(0); +x_53 = l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13(x_51, x_52); +x_54 = l_Lean_MessageData_andList(x_53); +x_55 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13; +x_56 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_56, 0, x_55); +lean_ctor_set(x_56, 1, x_54); +x_57 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15; +x_58 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +x_59 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18; +x_60 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +x_61 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20; +x_62 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_63 = l_Lean_indentExpr(x_2); +x_64 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22; +x_65 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_63); +x_66 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10; +x_67 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +x_68 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_62); +x_69 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_70 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +x_71 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg(x_70, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_71; +} +else +{ +lean_object* x_72; +x_72 = lean_ctor_get(x_50, 0); +lean_inc(x_72); +lean_dec(x_50); +x_8 = x_62; +x_9 = x_72; +goto block_47; +} +} +else +{ +lean_dec(x_1); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_73 = l_Lean_indentExpr(x_2); +x_74 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22; +x_75 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_75, 0, x_74); +lean_ctor_set(x_75, 1, x_73); +x_76 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10; +x_77 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +x_78 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_79 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +x_80 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_78); +x_81 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg(x_80, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_81; +} +else +{ +lean_object* x_82; lean_object* x_83; +x_82 = lean_ctor_get(x_50, 0); +lean_inc(x_82); +lean_dec(x_50); +x_83 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_8 = x_83; +x_9 = x_82; +goto block_47; +} +} +block_47: +{ +lean_object* x_10; +x_10 = l_Lean_getRecAppSyntax_x3f(x_9); +lean_dec(x_9); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; +lean_dec(x_8); +lean_dec(x_2); +x_11 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4; +x_12 = l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg(x_11, x_3, x_4, x_5, x_6, x_7); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_13 = lean_ctor_get(x_10, 0); +lean_inc(x_13); +lean_dec(x_10); +lean_inc(x_13); +x_14 = l_Lean_MessageData_ofSyntax(x_13); +x_15 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +x_17 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +x_19 = l_Lean_indentExpr(x_2); +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10; +x_22 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_8); +x_24 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_25 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +x_26 = !lean_is_exclusive(x_5); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_5, 5); +x_28 = l_Lean_replaceRef(x_13, x_27); +lean_dec(x_27); +lean_dec(x_13); +lean_ctor_set(x_5, 5, x_28); +x_29 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg(x_25, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_29; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; uint8_t x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_30 = lean_ctor_get(x_5, 0); +x_31 = lean_ctor_get(x_5, 1); +x_32 = lean_ctor_get(x_5, 2); +x_33 = lean_ctor_get(x_5, 3); +x_34 = lean_ctor_get(x_5, 4); +x_35 = lean_ctor_get(x_5, 5); +x_36 = lean_ctor_get(x_5, 6); +x_37 = lean_ctor_get(x_5, 7); +x_38 = lean_ctor_get(x_5, 8); +x_39 = lean_ctor_get(x_5, 9); +x_40 = lean_ctor_get(x_5, 10); +x_41 = lean_ctor_get_uint8(x_5, sizeof(void*)*12); +x_42 = lean_ctor_get(x_5, 11); +x_43 = lean_ctor_get_uint8(x_5, sizeof(void*)*12 + 1); +lean_inc(x_42); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_inc(x_36); +lean_inc(x_35); +lean_inc(x_34); +lean_inc(x_33); +lean_inc(x_32); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_5); +x_44 = l_Lean_replaceRef(x_13, x_35); +lean_dec(x_35); +lean_dec(x_13); +x_45 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_45, 0, x_30); +lean_ctor_set(x_45, 1, x_31); +lean_ctor_set(x_45, 2, x_32); +lean_ctor_set(x_45, 3, x_33); +lean_ctor_set(x_45, 4, x_34); +lean_ctor_set(x_45, 5, x_44); +lean_ctor_set(x_45, 6, x_36); +lean_ctor_set(x_45, 7, x_37); +lean_ctor_set(x_45, 8, x_38); +lean_ctor_set(x_45, 9, x_39); +lean_ctor_set(x_45, 10, x_40); +lean_ctor_set(x_45, 11, x_42); +lean_ctor_set_uint8(x_45, sizeof(void*)*12, x_41); +lean_ctor_set_uint8(x_45, sizeof(void*)*12 + 1, x_43); +x_46 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg(x_25, x_3, x_4, x_45, x_6, x_7); +lean_dec(x_6); +lean_dec(x_45); +lean_dec(x_4); +lean_dec(x_3); +return x_46; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1), 7, 1); +lean_closure_set(x_11, 0, x_5); +x_12 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg(x_1, x_2, x_4, x_11, x_6, x_7, x_8, x_9, x_10); +return x_12; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Could not prove '", 17, 17); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' to be monotone in its recursive calls:", 40, 40); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_3 = lean_ctor_get(x_1, 3); +lean_inc(x_3); +lean_dec(x_1); +x_4 = l_Lean_MessageData_ofName(x_3); +x_5 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2; +x_6 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_6, 0, x_5); +lean_ctor_set(x_6, 1, x_4); +x_7 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4; +x_8 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_8, 0, x_6); +lean_ctor_set(x_8, 1, x_7); +x_9 = l_Lean_indentD(x_2); +x_10 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_10, 0, x_8); +lean_ctor_set(x_10, 1, x_9); +x_11 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_12 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_12, 0, x_10); +lean_ctor_set(x_12, 1, x_11); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +return x_10; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotonicity proof for ", 23, 23); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(": ", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24, lean_object* x_25, lean_object* x_26, lean_object* x_27) { +_start: +{ +lean_object* x_28; uint8_t x_29; +x_28 = lean_unsigned_to_nat(0u); +x_29 = lean_nat_dec_eq(x_17, x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_39; uint8_t x_40; lean_object* x_41; uint8_t x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_sub(x_17, x_30); +lean_dec(x_17); +x_32 = lean_array_fget(x_16, x_18); +x_39 = lean_array_get_size(x_9); +x_40 = lean_nat_dec_lt(x_18, x_39); +lean_dec(x_39); +x_41 = lean_array_get_size(x_15); +x_42 = lean_nat_dec_lt(x_18, x_41); +lean_dec(x_41); +x_43 = lean_array_get_size(x_11); +x_44 = lean_nat_dec_lt(x_18, x_43); +lean_dec(x_43); +if (x_40 == 0) +{ +lean_object* x_253; lean_object* x_254; +x_253 = l_Lean_instInhabitedExpr; +x_254 = l_outOfBounds___rarg(x_253); +x_45 = x_254; +goto block_252; +} +else +{ +lean_object* x_255; +x_255 = lean_array_fget(x_9, x_18); +x_45 = x_255; +goto block_252; +} +block_38: +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_nat_add(x_18, x_30); +lean_dec(x_18); +x_36 = lean_array_push(x_20, x_33); +x_17 = x_31; +x_18 = x_35; +x_19 = lean_box(0); +x_20 = x_36; +x_27 = x_34; +goto _start; +} +block_252: +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_46, 0, x_45); +if (x_42 == 0) +{ +lean_object* x_249; lean_object* x_250; +x_249 = l_Lean_instInhabitedExpr; +x_250 = l_outOfBounds___rarg(x_249); +x_47 = x_250; +goto block_248; +} +else +{ +lean_object* x_251; +x_251 = lean_array_fget(x_15, x_18); +x_47 = x_251; +goto block_248; +} +block_248: +{ +lean_object* x_48; +if (x_44 == 0) +{ +lean_object* x_245; lean_object* x_246; +x_245 = l_Lean_instInhabitedExpr; +x_246 = l_outOfBounds___rarg(x_245); +x_48 = x_246; +goto block_244; +} +else +{ +lean_object* x_247; +x_247 = lean_array_fget(x_11, x_18); +x_48 = x_247; +goto block_244; +} +block_244: +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_49, 0, x_48); +lean_inc(x_13); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_13); +lean_inc(x_46); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_46); +lean_ctor_set(x_51, 1, x_50); +x_52 = lean_array_mk(x_51); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_12); +x_53 = l_Lean_Meta_mkAppOptM(x_12, x_52, x_23, x_24, x_25, x_26, x_27); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +lean_inc(x_10); +x_56 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_56, 0, x_10); +lean_inc(x_14); +x_57 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_57, 0, x_14); +x_58 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_58, 0, x_54); +x_59 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_59, 0, x_47); +lean_inc(x_13); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_59); +lean_ctor_set(x_60, 1, x_13); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_58); +lean_ctor_set(x_61, 1, x_60); +x_62 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_62, 0, x_46); +lean_ctor_set(x_62, 1, x_61); +x_63 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_63, 0, x_57); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_56); +lean_ctor_set(x_64, 1, x_63); +x_65 = lean_array_mk(x_64); +x_66 = l_Lean_Elab_mkMonoPProd___lambda__3___closed__2; +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +x_67 = l_Lean_Meta_mkAppOptM(x_66, x_65, x_23, x_24, x_25, x_26, x_55); +if (lean_obj_tag(x_67) == 0) +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; uint8_t x_232; +x_68 = lean_ctor_get(x_67, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_67, 1); +lean_inc(x_69); +lean_dec(x_67); +x_232 = lean_nat_dec_lt(x_18, x_3); +if (x_232 == 0) +{ +lean_object* x_233; lean_object* x_234; +x_233 = l_Lean_Elab_instInhabitedPartialFixpoint; +x_234 = l_outOfBounds___rarg(x_233); +x_70 = x_234; +goto block_231; +} +else +{ +lean_object* x_235; +x_235 = lean_array_fget(x_2, x_18); +x_70 = x_235; +goto block_231; +} +block_231: +{ +lean_object* x_71; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_72 = lean_box(0); +lean_inc(x_23); +x_73 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_68, x_72, x_23, x_24, x_25, x_26, x_69); +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_75 = lean_ctor_get(x_73, 0); +x_76 = lean_ctor_get(x_73, 1); +lean_inc(x_8); +lean_inc(x_1); +x_77 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2___boxed), 10, 2); +lean_closure_set(x_77, 0, x_1); +lean_closure_set(x_77, 1, x_8); +x_78 = l_Lean_Expr_mvarId_x21(x_75); +lean_inc(x_32); +x_79 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3), 2, 1); +lean_closure_set(x_79, 0, x_32); +x_80 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMono), 7, 2); +lean_closure_set(x_80, 0, x_77); +lean_closure_set(x_80, 1, x_78); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +x_81 = l_Lean_Meta_mapErrorImp___rarg(x_80, x_79, x_23, x_24, x_25, x_26, x_76); +if (lean_obj_tag(x_81) == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +lean_dec(x_81); +lean_inc(x_4); +x_83 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_4, x_21, x_22, x_23, x_24, x_25, x_26, x_82); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_unbox(x_84); +lean_dec(x_84); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_free_object(x_73); +lean_dec(x_32); +x_86 = lean_ctor_get(x_83, 1); +lean_inc(x_86); +lean_dec(x_83); +x_87 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_75, x_21, x_22, x_23, x_24, x_25, x_26, x_86); +x_88 = lean_ctor_get(x_87, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_87, 1); +lean_inc(x_89); +lean_dec(x_87); +x_33 = x_88; +x_34 = x_89; +goto block_38; +} +else +{ +uint8_t x_90; +x_90 = !lean_is_exclusive(x_83); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_91 = lean_ctor_get(x_83, 1); +x_92 = lean_ctor_get(x_83, 0); +lean_dec(x_92); +x_93 = lean_ctor_get(x_32, 3); +lean_inc(x_93); +lean_dec(x_32); +x_94 = l_Lean_MessageData_ofName(x_93); +x_95 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2; +lean_ctor_set_tag(x_83, 7); +lean_ctor_set(x_83, 1, x_94); +lean_ctor_set(x_83, 0, x_95); +x_96 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4; +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_96); +lean_ctor_set(x_73, 0, x_83); +lean_inc(x_75); +x_97 = l_Lean_MessageData_ofExpr(x_75); +x_98 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_98, 0, x_73); +lean_ctor_set(x_98, 1, x_97); +x_99 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_100 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_100, 0, x_98); +lean_ctor_set(x_100, 1, x_99); +lean_inc(x_4); +x_101 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_4, x_100, x_21, x_22, x_23, x_24, x_25, x_26, x_91); +x_102 = lean_ctor_get(x_101, 1); +lean_inc(x_102); +lean_dec(x_101); +x_103 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_75, x_21, x_22, x_23, x_24, x_25, x_26, x_102); +x_104 = lean_ctor_get(x_103, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_103, 1); +lean_inc(x_105); +lean_dec(x_103); +x_33 = x_104; +x_34 = x_105; +goto block_38; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_106 = lean_ctor_get(x_83, 1); +lean_inc(x_106); +lean_dec(x_83); +x_107 = lean_ctor_get(x_32, 3); +lean_inc(x_107); +lean_dec(x_32); +x_108 = l_Lean_MessageData_ofName(x_107); +x_109 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2; +x_110 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_110, 0, x_109); +lean_ctor_set(x_110, 1, x_108); +x_111 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4; +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_111); +lean_ctor_set(x_73, 0, x_110); +lean_inc(x_75); +x_112 = l_Lean_MessageData_ofExpr(x_75); +x_113 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_113, 0, x_73); +lean_ctor_set(x_113, 1, x_112); +x_114 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_115 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_115, 0, x_113); +lean_ctor_set(x_115, 1, x_114); +lean_inc(x_4); +x_116 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_4, x_115, x_21, x_22, x_23, x_24, x_25, x_26, x_106); +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +lean_dec(x_116); +x_118 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_75, x_21, x_22, x_23, x_24, x_25, x_26, x_117); +x_119 = lean_ctor_get(x_118, 0); +lean_inc(x_119); +x_120 = lean_ctor_get(x_118, 1); +lean_inc(x_120); +lean_dec(x_118); +x_33 = x_119; +x_34 = x_120; +goto block_38; +} +} +} +else +{ +uint8_t x_121; +lean_free_object(x_73); +lean_dec(x_75); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_121 = !lean_is_exclusive(x_81); +if (x_121 == 0) +{ +return x_81; +} +else +{ +lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_122 = lean_ctor_get(x_81, 0); +x_123 = lean_ctor_get(x_81, 1); +lean_inc(x_123); +lean_inc(x_122); +lean_dec(x_81); +x_124 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_124, 0, x_122); +lean_ctor_set(x_124, 1, x_123); +return x_124; +} +} +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; +x_125 = lean_ctor_get(x_73, 0); +x_126 = lean_ctor_get(x_73, 1); +lean_inc(x_126); +lean_inc(x_125); +lean_dec(x_73); +lean_inc(x_8); +lean_inc(x_1); +x_127 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2___boxed), 10, 2); +lean_closure_set(x_127, 0, x_1); +lean_closure_set(x_127, 1, x_8); +x_128 = l_Lean_Expr_mvarId_x21(x_125); +lean_inc(x_32); +x_129 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3), 2, 1); +lean_closure_set(x_129, 0, x_32); +x_130 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMono), 7, 2); +lean_closure_set(x_130, 0, x_127); +lean_closure_set(x_130, 1, x_128); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +x_131 = l_Lean_Meta_mapErrorImp___rarg(x_130, x_129, x_23, x_24, x_25, x_26, x_126); +if (lean_obj_tag(x_131) == 0) +{ +lean_object* x_132; lean_object* x_133; lean_object* x_134; uint8_t x_135; +x_132 = lean_ctor_get(x_131, 1); +lean_inc(x_132); +lean_dec(x_131); +lean_inc(x_4); +x_133 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_4, x_21, x_22, x_23, x_24, x_25, x_26, x_132); +x_134 = lean_ctor_get(x_133, 0); +lean_inc(x_134); +x_135 = lean_unbox(x_134); +lean_dec(x_134); +if (x_135 == 0) +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; +lean_dec(x_32); +x_136 = lean_ctor_get(x_133, 1); +lean_inc(x_136); +lean_dec(x_133); +x_137 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_125, x_21, x_22, x_23, x_24, x_25, x_26, x_136); +x_138 = lean_ctor_get(x_137, 0); +lean_inc(x_138); +x_139 = lean_ctor_get(x_137, 1); +lean_inc(x_139); +lean_dec(x_137); +x_33 = x_138; +x_34 = x_139; +goto block_38; +} +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; +x_140 = lean_ctor_get(x_133, 1); +lean_inc(x_140); +if (lean_is_exclusive(x_133)) { + lean_ctor_release(x_133, 0); + lean_ctor_release(x_133, 1); + x_141 = x_133; +} else { + lean_dec_ref(x_133); + x_141 = lean_box(0); +} +x_142 = lean_ctor_get(x_32, 3); +lean_inc(x_142); +lean_dec(x_32); +x_143 = l_Lean_MessageData_ofName(x_142); +x_144 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2; +if (lean_is_scalar(x_141)) { + x_145 = lean_alloc_ctor(7, 2, 0); +} else { + x_145 = x_141; + lean_ctor_set_tag(x_145, 7); +} +lean_ctor_set(x_145, 0, x_144); +lean_ctor_set(x_145, 1, x_143); +x_146 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4; +x_147 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_147, 0, x_145); +lean_ctor_set(x_147, 1, x_146); +lean_inc(x_125); +x_148 = l_Lean_MessageData_ofExpr(x_125); +x_149 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_149, 0, x_147); +lean_ctor_set(x_149, 1, x_148); +x_150 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_151 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_151, 0, x_149); +lean_ctor_set(x_151, 1, x_150); +lean_inc(x_4); +x_152 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_4, x_151, x_21, x_22, x_23, x_24, x_25, x_26, x_140); +x_153 = lean_ctor_get(x_152, 1); +lean_inc(x_153); +lean_dec(x_152); +x_154 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_125, x_21, x_22, x_23, x_24, x_25, x_26, x_153); +x_155 = lean_ctor_get(x_154, 0); +lean_inc(x_155); +x_156 = lean_ctor_get(x_154, 1); +lean_inc(x_156); +lean_dec(x_154); +x_33 = x_155; +x_34 = x_156; +goto block_38; +} +} +else +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; +lean_dec(x_125); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_157 = lean_ctor_get(x_131, 0); +lean_inc(x_157); +x_158 = lean_ctor_get(x_131, 1); +lean_inc(x_158); +if (lean_is_exclusive(x_131)) { + lean_ctor_release(x_131, 0); + lean_ctor_release(x_131, 1); + x_159 = x_131; +} else { + lean_dec_ref(x_131); + x_159 = lean_box(0); +} +if (lean_is_scalar(x_159)) { + x_160 = lean_alloc_ctor(1, 2, 0); +} else { + x_160 = x_159; +} +lean_ctor_set(x_160, 0, x_157); +lean_ctor_set(x_160, 1, x_158); +return x_160; +} +} +} +else +{ +uint8_t x_161; +lean_dec(x_32); +x_161 = !lean_is_exclusive(x_71); +if (x_161 == 0) +{ +lean_object* x_162; lean_object* x_163; uint8_t x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; uint8_t x_168; lean_object* x_169; +x_162 = lean_ctor_get(x_71, 0); +lean_inc(x_68); +lean_ctor_set(x_71, 0, x_68); +x_163 = lean_box(0); +x_164 = 1; +x_165 = lean_box(x_164); +x_166 = lean_box(x_164); +x_167 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabTermEnsuringType___boxed), 12, 5); +lean_closure_set(x_167, 0, x_162); +lean_closure_set(x_167, 1, x_71); +lean_closure_set(x_167, 2, x_165); +lean_closure_set(x_167, 3, x_166); +lean_closure_set(x_167, 4, x_163); +x_168 = 1; +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +x_169 = l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(x_167, x_168, x_21, x_22, x_23, x_24, x_25, x_26, x_69); +if (lean_obj_tag(x_169) == 0) +{ +lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; uint8_t x_178; +x_170 = lean_ctor_get(x_169, 0); +lean_inc(x_170); +x_171 = lean_ctor_get(x_169, 1); +lean_inc(x_171); +lean_dec(x_169); +x_172 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_170, x_21, x_22, x_23, x_24, x_25, x_26, x_171); +x_173 = lean_ctor_get(x_172, 0); +lean_inc(x_173); +x_174 = lean_ctor_get(x_172, 1); +lean_inc(x_174); +lean_dec(x_172); +lean_inc(x_173); +x_175 = l_Lean_Meta_getMVars(x_173, x_23, x_24, x_25, x_26, x_174); +x_176 = lean_ctor_get(x_175, 0); +lean_inc(x_176); +x_177 = lean_ctor_get(x_175, 1); +lean_inc(x_177); +lean_dec(x_175); +x_178 = l_Array_isEmpty___rarg(x_176); +if (x_178 == 0) +{ +lean_object* x_179; +lean_dec(x_173); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +x_179 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_176, x_163, x_21, x_22, x_23, x_24, x_25, x_26, x_177); +lean_dec(x_176); +if (lean_obj_tag(x_179) == 0) +{ +lean_object* x_180; lean_object* x_181; +x_180 = lean_ctor_get(x_179, 1); +lean_inc(x_180); +lean_dec(x_179); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +x_181 = l_Lean_Meta_mkSorry(x_68, x_164, x_23, x_24, x_25, x_26, x_180); +if (lean_obj_tag(x_181) == 0) +{ +lean_object* x_182; lean_object* x_183; +x_182 = lean_ctor_get(x_181, 0); +lean_inc(x_182); +x_183 = lean_ctor_get(x_181, 1); +lean_inc(x_183); +lean_dec(x_181); +x_33 = x_182; +x_34 = x_183; +goto block_38; +} +else +{ +uint8_t x_184; +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_184 = !lean_is_exclusive(x_181); +if (x_184 == 0) +{ +return x_181; +} +else +{ +lean_object* x_185; lean_object* x_186; lean_object* x_187; +x_185 = lean_ctor_get(x_181, 0); +x_186 = lean_ctor_get(x_181, 1); +lean_inc(x_186); +lean_inc(x_185); +lean_dec(x_181); +x_187 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_187, 0, x_185); +lean_ctor_set(x_187, 1, x_186); +return x_187; +} +} +} +else +{ +uint8_t x_188; +lean_dec(x_68); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_188 = !lean_is_exclusive(x_179); +if (x_188 == 0) +{ +return x_179; +} +else +{ +lean_object* x_189; lean_object* x_190; lean_object* x_191; +x_189 = lean_ctor_get(x_179, 0); +x_190 = lean_ctor_get(x_179, 1); +lean_inc(x_190); +lean_inc(x_189); +lean_dec(x_179); +x_191 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_191, 0, x_189); +lean_ctor_set(x_191, 1, x_190); +return x_191; +} +} +} +else +{ +lean_dec(x_176); +lean_dec(x_68); +x_33 = x_173; +x_34 = x_177; +goto block_38; +} +} +else +{ +uint8_t x_192; +lean_dec(x_68); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_192 = !lean_is_exclusive(x_169); +if (x_192 == 0) +{ +return x_169; +} +else +{ +lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_193 = lean_ctor_get(x_169, 0); +x_194 = lean_ctor_get(x_169, 1); +lean_inc(x_194); +lean_inc(x_193); +lean_dec(x_169); +x_195 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_195, 0, x_193); +lean_ctor_set(x_195, 1, x_194); +return x_195; +} +} +} +else +{ +lean_object* x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; uint8_t x_203; lean_object* x_204; +x_196 = lean_ctor_get(x_71, 0); +lean_inc(x_196); +lean_dec(x_71); +lean_inc(x_68); +x_197 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_197, 0, x_68); +x_198 = lean_box(0); +x_199 = 1; +x_200 = lean_box(x_199); +x_201 = lean_box(x_199); +x_202 = lean_alloc_closure((void*)(l_Lean_Elab_Term_elabTermEnsuringType___boxed), 12, 5); +lean_closure_set(x_202, 0, x_196); +lean_closure_set(x_202, 1, x_197); +lean_closure_set(x_202, 2, x_200); +lean_closure_set(x_202, 3, x_201); +lean_closure_set(x_202, 4, x_198); +x_203 = 1; +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +x_204 = l___private_Lean_Elab_SyntheticMVars_0__Lean_Elab_Term_withSynthesizeImp___rarg(x_202, x_203, x_21, x_22, x_23, x_24, x_25, x_26, x_69); +if (lean_obj_tag(x_204) == 0) +{ +lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; uint8_t x_213; +x_205 = lean_ctor_get(x_204, 0); +lean_inc(x_205); +x_206 = lean_ctor_get(x_204, 1); +lean_inc(x_206); +lean_dec(x_204); +x_207 = l_Lean_instantiateMVars___at_Lean_Elab_Term_MVarErrorInfo_logError___spec__1(x_205, x_21, x_22, x_23, x_24, x_25, x_26, x_206); +x_208 = lean_ctor_get(x_207, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_207, 1); +lean_inc(x_209); +lean_dec(x_207); +lean_inc(x_208); +x_210 = l_Lean_Meta_getMVars(x_208, x_23, x_24, x_25, x_26, x_209); +x_211 = lean_ctor_get(x_210, 0); +lean_inc(x_211); +x_212 = lean_ctor_get(x_210, 1); +lean_inc(x_212); +lean_dec(x_210); +x_213 = l_Array_isEmpty___rarg(x_211); +if (x_213 == 0) +{ +lean_object* x_214; +lean_dec(x_208); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +x_214 = l_Lean_Elab_Term_logUnassignedUsingErrorInfos(x_211, x_198, x_21, x_22, x_23, x_24, x_25, x_26, x_212); +lean_dec(x_211); +if (lean_obj_tag(x_214) == 0) +{ +lean_object* x_215; lean_object* x_216; +x_215 = lean_ctor_get(x_214, 1); +lean_inc(x_215); +lean_dec(x_214); +lean_inc(x_26); +lean_inc(x_25); +lean_inc(x_24); +lean_inc(x_23); +x_216 = l_Lean_Meta_mkSorry(x_68, x_199, x_23, x_24, x_25, x_26, x_215); +if (lean_obj_tag(x_216) == 0) +{ +lean_object* x_217; lean_object* x_218; +x_217 = lean_ctor_get(x_216, 0); +lean_inc(x_217); +x_218 = lean_ctor_get(x_216, 1); +lean_inc(x_218); +lean_dec(x_216); +x_33 = x_217; +x_34 = x_218; +goto block_38; +} +else +{ +lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_219 = lean_ctor_get(x_216, 0); +lean_inc(x_219); +x_220 = lean_ctor_get(x_216, 1); +lean_inc(x_220); +if (lean_is_exclusive(x_216)) { + lean_ctor_release(x_216, 0); + lean_ctor_release(x_216, 1); + x_221 = x_216; +} else { + lean_dec_ref(x_216); + x_221 = lean_box(0); +} +if (lean_is_scalar(x_221)) { + x_222 = lean_alloc_ctor(1, 2, 0); +} else { + x_222 = x_221; +} +lean_ctor_set(x_222, 0, x_219); +lean_ctor_set(x_222, 1, x_220); +return x_222; +} +} +else +{ +lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; +lean_dec(x_68); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_223 = lean_ctor_get(x_214, 0); +lean_inc(x_223); +x_224 = lean_ctor_get(x_214, 1); +lean_inc(x_224); +if (lean_is_exclusive(x_214)) { + lean_ctor_release(x_214, 0); + lean_ctor_release(x_214, 1); + x_225 = x_214; +} else { + lean_dec_ref(x_214); + x_225 = lean_box(0); +} +if (lean_is_scalar(x_225)) { + x_226 = lean_alloc_ctor(1, 2, 0); +} else { + x_226 = x_225; +} +lean_ctor_set(x_226, 0, x_223); +lean_ctor_set(x_226, 1, x_224); +return x_226; +} +} +else +{ +lean_dec(x_211); +lean_dec(x_68); +x_33 = x_208; +x_34 = x_212; +goto block_38; +} +} +else +{ +lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; +lean_dec(x_68); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_227 = lean_ctor_get(x_204, 0); +lean_inc(x_227); +x_228 = lean_ctor_get(x_204, 1); +lean_inc(x_228); +if (lean_is_exclusive(x_204)) { + lean_ctor_release(x_204, 0); + lean_ctor_release(x_204, 1); + x_229 = x_204; +} else { + lean_dec_ref(x_204); + x_229 = lean_box(0); +} +if (lean_is_scalar(x_229)) { + x_230 = lean_alloc_ctor(1, 2, 0); +} else { + x_230 = x_229; +} +lean_ctor_set(x_230, 0, x_227); +lean_ctor_set(x_230, 1, x_228); +return x_230; +} +} +} +} +} +else +{ +uint8_t x_236; +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_236 = !lean_is_exclusive(x_67); +if (x_236 == 0) +{ +return x_67; +} +else +{ +lean_object* x_237; lean_object* x_238; lean_object* x_239; +x_237 = lean_ctor_get(x_67, 0); +x_238 = lean_ctor_get(x_67, 1); +lean_inc(x_238); +lean_inc(x_237); +lean_dec(x_67); +x_239 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_239, 0, x_237); +lean_ctor_set(x_239, 1, x_238); +return x_239; +} +} +} +else +{ +uint8_t x_240; +lean_dec(x_47); +lean_dec(x_46); +lean_dec(x_32); +lean_dec(x_31); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_240 = !lean_is_exclusive(x_53); +if (x_240 == 0) +{ +return x_53; +} +else +{ +lean_object* x_241; lean_object* x_242; lean_object* x_243; +x_241 = lean_ctor_get(x_53, 0); +x_242 = lean_ctor_get(x_53, 1); +lean_inc(x_242); +lean_inc(x_241); +lean_dec(x_53); +x_243 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_243, 0, x_241); +lean_ctor_set(x_243, 1, x_242); +return x_243; +} +} +} +} +} +} +else +{ +lean_object* x_256; +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +lean_dec(x_1); +x_256 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_256, 0, x_20); +lean_ctor_set(x_256, 1, x_27); +return x_256; +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +_start: +{ +lean_object* x_19; uint8_t x_20; +x_19 = lean_unsigned_to_nat(0u); +x_20 = lean_nat_dec_eq(x_8, x_19); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; uint8_t x_30; uint8_t x_31; lean_object* x_32; +x_21 = lean_unsigned_to_nat(1u); +x_22 = lean_nat_sub(x_8, x_21); +lean_dec(x_8); +x_23 = lean_array_fget(x_7, x_9); +x_24 = lean_box(0); +lean_inc(x_6); +x_25 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_6, x_24); +lean_inc(x_5); +x_26 = l_Lean_Expr_const___override(x_5, x_25); +x_27 = l_Lean_mkAppN(x_26, x_3); +lean_inc(x_4); +lean_inc(x_9); +lean_inc(x_2); +x_28 = l_Lean_Meta_PProdN_proj(x_2, x_9, x_4, x_27); +x_29 = 0; +x_30 = 1; +x_31 = 1; +x_32 = l_Lean_Meta_mkLambdaFVars(x_3, x_28, x_29, x_30, x_29, x_31, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = !lean_is_exclusive(x_23); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_23, 5); +lean_dec(x_36); +lean_ctor_set(x_23, 5, x_33); +x_37 = lean_nat_add(x_9, x_21); +lean_dec(x_9); +x_38 = lean_array_push(x_11, x_23); +x_8 = x_22; +x_9 = x_37; +x_10 = lean_box(0); +x_11 = x_38; +x_18 = x_34; +goto _start; +} +else +{ +lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_40 = lean_ctor_get(x_23, 0); +x_41 = lean_ctor_get_uint8(x_23, sizeof(void*)*7); +x_42 = lean_ctor_get(x_23, 1); +x_43 = lean_ctor_get(x_23, 2); +x_44 = lean_ctor_get(x_23, 3); +x_45 = lean_ctor_get(x_23, 4); +x_46 = lean_ctor_get(x_23, 6); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_43); +lean_inc(x_42); +lean_inc(x_40); +lean_dec(x_23); +x_47 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_47, 0, x_40); +lean_ctor_set(x_47, 1, x_42); +lean_ctor_set(x_47, 2, x_43); +lean_ctor_set(x_47, 3, x_44); +lean_ctor_set(x_47, 4, x_45); +lean_ctor_set(x_47, 5, x_33); +lean_ctor_set(x_47, 6, x_46); +lean_ctor_set_uint8(x_47, sizeof(void*)*7, x_41); +x_48 = lean_nat_add(x_9, x_21); +lean_dec(x_9); +x_49 = lean_array_push(x_11, x_47); +x_8 = x_22; +x_9 = x_48; +x_10 = lean_box(0); +x_11 = x_49; +x_18 = x_34; +goto _start; +} +} +else +{ +uint8_t x_51; +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_51 = !lean_is_exclusive(x_32); +if (x_51 == 0) +{ +return x_32; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_32, 0); +x_53 = lean_ctor_get(x_32, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_32); +x_54 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; +} +} +} +else +{ +lean_object* x_55; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_11); +lean_ctor_set(x_55, 1, x_18); +return x_55; +} +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("mutual", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_partialFixpoint___lambda__1___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_98; uint8_t x_99; uint8_t x_100; uint8_t x_101; uint8_t x_102; lean_object* x_103; +x_98 = lean_unsigned_to_nat(1u); +x_99 = lean_nat_dec_eq(x_5, x_98); +x_100 = 0; +x_101 = 1; +x_102 = 1; +lean_inc(x_6); +x_103 = l_Lean_Meta_mkForallFVars(x_1, x_6, x_100, x_101, x_102, x_12, x_13, x_14, x_15, x_16); +if (x_99 == 0) +{ +if (lean_obj_tag(x_103) == 0) +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_104 = lean_ctor_get(x_103, 0); +lean_inc(x_104); +x_105 = lean_ctor_get(x_103, 1); +lean_inc(x_105); +lean_dec(x_103); +x_106 = lean_ctor_get(x_3, 3); +lean_inc(x_106); +x_107 = l_Lean_Elab_partialFixpoint___lambda__1___closed__2; +x_108 = l_Lean_Name_append(x_106, x_107); +x_17 = x_108; +x_18 = x_104; +x_19 = x_105; +goto block_97; +} +else +{ +uint8_t x_109; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_109 = !lean_is_exclusive(x_103); +if (x_109 == 0) +{ +return x_103; +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; +x_110 = lean_ctor_get(x_103, 0); +x_111 = lean_ctor_get(x_103, 1); +lean_inc(x_111); +lean_inc(x_110); +lean_dec(x_103); +x_112 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_112, 0, x_110); +lean_ctor_set(x_112, 1, x_111); +return x_112; +} +} +} +else +{ +if (lean_obj_tag(x_103) == 0) +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_113 = lean_ctor_get(x_103, 0); +lean_inc(x_113); +x_114 = lean_ctor_get(x_103, 1); +lean_inc(x_114); +lean_dec(x_103); +x_115 = lean_ctor_get(x_3, 3); +lean_inc(x_115); +x_17 = x_115; +x_18 = x_113; +x_19 = x_114; +goto block_97; +} +else +{ +uint8_t x_116; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_116 = !lean_is_exclusive(x_103); +if (x_116 == 0) +{ +return x_103; +} +else +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; +x_117 = lean_ctor_get(x_103, 0); +x_118 = lean_ctor_get(x_103, 1); +lean_inc(x_118); +lean_inc(x_117); +lean_dec(x_103); +x_119 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_119, 0, x_117); +lean_ctor_set(x_119, 1, x_118); +return x_119; +} +} +} +block_97: +{ +uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; +x_20 = 0; +x_21 = 1; +x_22 = 1; +x_23 = l_Lean_Meta_mkLambdaFVars(x_1, x_2, x_20, x_21, x_20, x_22, x_12, x_13, x_14, x_15, x_19); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = !lean_is_exclusive(x_3); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_27 = lean_ctor_get(x_3, 1); +x_28 = lean_ctor_get(x_3, 5); +lean_dec(x_28); +x_29 = lean_ctor_get(x_3, 4); +lean_dec(x_29); +x_30 = lean_ctor_get(x_3, 3); +lean_dec(x_30); +lean_inc(x_17); +lean_inc(x_27); +lean_ctor_set(x_3, 5, x_24); +lean_ctor_set(x_3, 4, x_18); +lean_ctor_set(x_3, 3, x_17); +x_31 = lean_unsigned_to_nat(0u); +lean_inc(x_17); +lean_inc(x_5); +x_32 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17(x_4, x_5, x_1, x_6, x_17, x_27, x_4, x_5, x_31, lean_box(0), x_7, x_10, x_11, x_12, x_13, x_14, x_15, x_25); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_4); +x_35 = l_Lean_Elab_Mutual_addPreDefsFromUnary(x_4, x_33, x_3, x_10, x_11, x_12, x_13, x_14, x_15, x_34); +lean_dec(x_33); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_37 = l_Lean_Elab_Mutual_cleanPreDefs(x_4, x_10, x_11, x_12, x_13, x_14, x_15, x_36); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_38); +x_40 = l_Lean_Elab_PartialFixpoint_registerEqnsInfo(x_38, x_17, x_8, x_12, x_13, x_14, x_15, x_39); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +lean_dec(x_40); +x_42 = l_Lean_Elab_Mutual_addPreDefAttributes(x_38, x_10, x_11, x_12, x_13, x_14, x_15, x_41); +lean_dec(x_38); +return x_42; +} +else +{ +uint8_t x_43; +lean_dec(x_38); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +x_43 = !lean_is_exclusive(x_40); +if (x_43 == 0) +{ +return x_40; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_40, 0); +x_45 = lean_ctor_get(x_40, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_40); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +else +{ +uint8_t x_47; +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +x_47 = !lean_is_exclusive(x_37); +if (x_47 == 0) +{ +return x_37; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_37, 0); +x_49 = lean_ctor_get(x_37, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_37); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; +} +} +} +else +{ +uint8_t x_51; +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +x_51 = !lean_is_exclusive(x_35); +if (x_51 == 0) +{ +return x_35; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_35, 0); +x_53 = lean_ctor_get(x_35, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_35); +x_54 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; +} +} +} +else +{ +uint8_t x_55; +lean_dec(x_3); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +x_55 = !lean_is_exclusive(x_32); +if (x_55 == 0) +{ +return x_32; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_32, 0); +x_57 = lean_ctor_get(x_32, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_32); +x_58 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +return x_58; +} +} +} +else +{ +lean_object* x_59; uint8_t x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_59 = lean_ctor_get(x_3, 0); +x_60 = lean_ctor_get_uint8(x_3, sizeof(void*)*7); +x_61 = lean_ctor_get(x_3, 1); +x_62 = lean_ctor_get(x_3, 2); +x_63 = lean_ctor_get(x_3, 6); +lean_inc(x_63); +lean_inc(x_62); +lean_inc(x_61); +lean_inc(x_59); +lean_dec(x_3); +lean_inc(x_17); +lean_inc(x_61); +x_64 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_64, 0, x_59); +lean_ctor_set(x_64, 1, x_61); +lean_ctor_set(x_64, 2, x_62); +lean_ctor_set(x_64, 3, x_17); +lean_ctor_set(x_64, 4, x_18); +lean_ctor_set(x_64, 5, x_24); +lean_ctor_set(x_64, 6, x_63); +lean_ctor_set_uint8(x_64, sizeof(void*)*7, x_60); +x_65 = lean_unsigned_to_nat(0u); +lean_inc(x_17); +lean_inc(x_5); +x_66 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17(x_4, x_5, x_1, x_6, x_17, x_61, x_4, x_5, x_65, lean_box(0), x_7, x_10, x_11, x_12, x_13, x_14, x_15, x_25); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +x_68 = lean_ctor_get(x_66, 1); +lean_inc(x_68); +lean_dec(x_66); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_4); +x_69 = l_Lean_Elab_Mutual_addPreDefsFromUnary(x_4, x_67, x_64, x_10, x_11, x_12, x_13, x_14, x_15, x_68); +lean_dec(x_67); +if (lean_obj_tag(x_69) == 0) +{ +lean_object* x_70; lean_object* x_71; +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +lean_dec(x_69); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_71 = l_Lean_Elab_Mutual_cleanPreDefs(x_4, x_10, x_11, x_12, x_13, x_14, x_15, x_70); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +x_73 = lean_ctor_get(x_71, 1); +lean_inc(x_73); +lean_dec(x_71); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_72); +x_74 = l_Lean_Elab_PartialFixpoint_registerEqnsInfo(x_72, x_17, x_8, x_12, x_13, x_14, x_15, x_73); +if (lean_obj_tag(x_74) == 0) +{ +lean_object* x_75; lean_object* x_76; +x_75 = lean_ctor_get(x_74, 1); +lean_inc(x_75); +lean_dec(x_74); +x_76 = l_Lean_Elab_Mutual_addPreDefAttributes(x_72, x_10, x_11, x_12, x_13, x_14, x_15, x_75); +lean_dec(x_72); +return x_76; +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; +lean_dec(x_72); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +x_77 = lean_ctor_get(x_74, 0); +lean_inc(x_77); +x_78 = lean_ctor_get(x_74, 1); +lean_inc(x_78); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_79 = x_74; +} else { + lean_dec_ref(x_74); + x_79 = lean_box(0); +} +if (lean_is_scalar(x_79)) { + x_80 = lean_alloc_ctor(1, 2, 0); +} else { + x_80 = x_79; +} +lean_ctor_set(x_80, 0, x_77); +lean_ctor_set(x_80, 1, x_78); +return x_80; +} +} +else +{ +lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +x_81 = lean_ctor_get(x_71, 0); +lean_inc(x_81); +x_82 = lean_ctor_get(x_71, 1); +lean_inc(x_82); +if (lean_is_exclusive(x_71)) { + lean_ctor_release(x_71, 0); + lean_ctor_release(x_71, 1); + x_83 = x_71; +} else { + lean_dec_ref(x_71); + x_83 = lean_box(0); +} +if (lean_is_scalar(x_83)) { + x_84 = lean_alloc_ctor(1, 2, 0); +} else { + x_84 = x_83; +} +lean_ctor_set(x_84, 0, x_81); +lean_ctor_set(x_84, 1, x_82); +return x_84; +} +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +x_85 = lean_ctor_get(x_69, 0); +lean_inc(x_85); +x_86 = lean_ctor_get(x_69, 1); +lean_inc(x_86); +if (lean_is_exclusive(x_69)) { + lean_ctor_release(x_69, 0); + lean_ctor_release(x_69, 1); + x_87 = x_69; +} else { + lean_dec_ref(x_69); + x_87 = lean_box(0); +} +if (lean_is_scalar(x_87)) { + x_88 = lean_alloc_ctor(1, 2, 0); +} else { + x_88 = x_87; +} +lean_ctor_set(x_88, 0, x_85); +lean_ctor_set(x_88, 1, x_86); +return x_88; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +lean_dec(x_64); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_4); +x_89 = lean_ctor_get(x_66, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_66, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_66)) { + lean_ctor_release(x_66, 0); + lean_ctor_release(x_66, 1); + x_91 = x_66; +} else { + lean_dec_ref(x_66); + x_91 = lean_box(0); +} +if (lean_is_scalar(x_91)) { + x_92 = lean_alloc_ctor(1, 2, 0); +} else { + x_92 = x_91; +} +lean_ctor_set(x_92, 0, x_89); +lean_ctor_set(x_92, 1, x_90); +return x_92; +} +} +} +else +{ +uint8_t x_93; +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_93 = !lean_is_exclusive(x_23); +if (x_93 == 0) +{ +return x_23; +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_94 = lean_ctor_get(x_23, 0); +x_95 = lean_ctor_get(x_23, 1); +lean_inc(x_95); +lean_inc(x_94); +lean_dec(x_23); +x_96 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_96, 0, x_94); +lean_ctor_set(x_96, 1, x_95); +return x_96; +} +} +} +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_mkInstCCPOPProd), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("toPartialOrder", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1; +x_4 = l_Lean_Elab_partialFixpoint___lambda__2___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_mkMonoPProd), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix", 3, 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__2; +x_3 = l_Lean_Elab_partialFixpoint___lambda__2___closed__5; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("packedValue: ", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_partialFixpoint___lambda__2___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, uint8_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24) { +_start: +{ +size_t x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_array_size(x_1); +lean_inc(x_16); +x_26 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5(x_16, x_25, x_2, x_1); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_4); +x_27 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6(x_16, x_3, x_2, x_4, x_18, x_19, x_20, x_21, x_22, x_23, x_24); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1; +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_28); +x_31 = l_Lean_Meta_PProdN_pack(x_30, x_28, x_20, x_21, x_22, x_23, x_29); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; size_t x_34; lean_object* x_35; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = lean_array_size(x_26); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +x_35 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8(x_2, x_34, x_2, x_26, x_18, x_19, x_20, x_21, x_22, x_23, x_33); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = l_Lean_instInhabitedExpr; +x_39 = l_Lean_Elab_partialFixpoint___lambda__2___closed__1; +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_36); +x_40 = l_Lean_Meta_PProdN_genMk___rarg(x_38, x_39, x_36, x_20, x_21, x_22, x_23, x_37); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = lean_box(0); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_41); +x_45 = lean_box(0); +lean_inc(x_44); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_43); +lean_ctor_set(x_47, 1, x_46); +x_48 = lean_array_mk(x_47); +x_49 = l_Lean_Elab_partialFixpoint___lambda__2___closed__3; +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +x_50 = l_Lean_Meta_mkAppOptM(x_49, x_48, x_20, x_21, x_22, x_23, x_42); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_32); +lean_inc(x_6); +lean_inc(x_5); +lean_inc_n(x_4, 2); +x_53 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10(x_4, x_5, x_6, x_2, x_7, x_8, x_16, x_32, x_3, x_2, x_4, x_18, x_19, x_20, x_21, x_22, x_23, x_52); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +x_56 = lean_unsigned_to_nat(0u); +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_14); +lean_inc(x_5); +lean_inc(x_32); +lean_inc(x_16); +lean_inc(x_11); +lean_inc(x_4); +x_57 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16(x_4, x_9, x_10, x_11, x_12, x_12, x_13, x_16, x_28, x_32, x_36, x_49, x_45, x_51, x_54, x_4, x_5, x_56, lean_box(0), x_14, x_18, x_19, x_20, x_21, x_22, x_23, x_55); +lean_dec(x_54); +lean_dec(x_36); +lean_dec(x_28); +if (lean_obj_tag(x_57) == 0) +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_ctor_get(x_57, 1); +lean_inc(x_59); +lean_dec(x_57); +x_60 = l_Lean_Elab_partialFixpoint___lambda__2___closed__4; +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +x_61 = l_Lean_Meta_PProdN_genMk___rarg(x_38, x_60, x_58, x_20, x_21, x_22, x_23, x_59); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +lean_dec(x_61); +lean_inc(x_32); +x_64 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_64, 0, x_32); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_62); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_45); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_43); +lean_ctor_set(x_67, 1, x_66); +x_68 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_68, 0, x_44); +lean_ctor_set(x_68, 1, x_67); +x_69 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_69, 0, x_64); +lean_ctor_set(x_69, 1, x_68); +x_70 = lean_array_mk(x_69); +x_71 = l_Lean_Elab_partialFixpoint___lambda__2___closed__6; +lean_inc(x_23); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +x_72 = l_Lean_Meta_mkAppOptM(x_71, x_70, x_20, x_21, x_22, x_23, x_63); +if (lean_obj_tag(x_72) == 0) +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; uint8_t x_77; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +lean_dec(x_72); +lean_inc(x_11); +x_75 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_11, x_18, x_19, x_20, x_21, x_22, x_23, x_74); +x_76 = lean_ctor_get(x_75, 0); +lean_inc(x_76); +x_77 = lean_unbox(x_76); +lean_dec(x_76); +if (x_77 == 0) +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +lean_dec(x_11); +x_78 = lean_ctor_get(x_75, 1); +lean_inc(x_78); +lean_dec(x_75); +x_79 = lean_box(0); +x_80 = l_Lean_Elab_partialFixpoint___lambda__1(x_16, x_73, x_15, x_4, x_5, x_32, x_14, x_6, x_79, x_18, x_19, x_20, x_21, x_22, x_23, x_78); +lean_dec(x_16); +return x_80; +} +else +{ +uint8_t x_81; +x_81 = !lean_is_exclusive(x_75); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_82 = lean_ctor_get(x_75, 1); +x_83 = lean_ctor_get(x_75, 0); +lean_dec(x_83); +lean_inc(x_73); +x_84 = l_Lean_MessageData_ofExpr(x_73); +x_85 = l_Lean_Elab_partialFixpoint___lambda__2___closed__8; +lean_ctor_set_tag(x_75, 7); +lean_ctor_set(x_75, 1, x_84); +lean_ctor_set(x_75, 0, x_85); +x_86 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_87 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_87, 0, x_75); +lean_ctor_set(x_87, 1, x_86); +x_88 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_11, x_87, x_18, x_19, x_20, x_21, x_22, x_23, x_82); +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 1); +lean_inc(x_90); +lean_dec(x_88); +x_91 = l_Lean_Elab_partialFixpoint___lambda__1(x_16, x_73, x_15, x_4, x_5, x_32, x_14, x_6, x_89, x_18, x_19, x_20, x_21, x_22, x_23, x_90); +lean_dec(x_89); +lean_dec(x_16); +return x_91; +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_92 = lean_ctor_get(x_75, 1); +lean_inc(x_92); +lean_dec(x_75); +lean_inc(x_73); +x_93 = l_Lean_MessageData_ofExpr(x_73); +x_94 = l_Lean_Elab_partialFixpoint___lambda__2___closed__8; +x_95 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_95, 0, x_94); +lean_ctor_set(x_95, 1, x_93); +x_96 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_97 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_97, 0, x_95); +lean_ctor_set(x_97, 1, x_96); +x_98 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_11, x_97, x_18, x_19, x_20, x_21, x_22, x_23, x_92); +x_99 = lean_ctor_get(x_98, 0); +lean_inc(x_99); +x_100 = lean_ctor_get(x_98, 1); +lean_inc(x_100); +lean_dec(x_98); +x_101 = l_Lean_Elab_partialFixpoint___lambda__1(x_16, x_73, x_15, x_4, x_5, x_32, x_14, x_6, x_99, x_18, x_19, x_20, x_21, x_22, x_23, x_100); +lean_dec(x_99); +lean_dec(x_16); +return x_101; +} +} +} +else +{ +uint8_t x_102; +lean_dec(x_32); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_102 = !lean_is_exclusive(x_72); +if (x_102 == 0) +{ +return x_72; +} +else +{ +lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_103 = lean_ctor_get(x_72, 0); +x_104 = lean_ctor_get(x_72, 1); +lean_inc(x_104); +lean_inc(x_103); +lean_dec(x_72); +x_105 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_105, 0, x_103); +lean_ctor_set(x_105, 1, x_104); +return x_105; +} +} +} +else +{ +uint8_t x_106; +lean_dec(x_44); +lean_dec(x_32); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_106 = !lean_is_exclusive(x_61); +if (x_106 == 0) +{ +return x_61; +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_61, 0); +x_108 = lean_ctor_get(x_61, 1); +lean_inc(x_108); +lean_inc(x_107); +lean_dec(x_61); +x_109 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_109, 0, x_107); +lean_ctor_set(x_109, 1, x_108); +return x_109; +} +} +} +else +{ +uint8_t x_110; +lean_dec(x_44); +lean_dec(x_32); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_110 = !lean_is_exclusive(x_57); +if (x_110 == 0) +{ +return x_57; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_111 = lean_ctor_get(x_57, 0); +x_112 = lean_ctor_get(x_57, 1); +lean_inc(x_112); +lean_inc(x_111); +lean_dec(x_57); +x_113 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_113, 0, x_111); +lean_ctor_set(x_113, 1, x_112); +return x_113; +} +} +} +else +{ +uint8_t x_114; +lean_dec(x_51); +lean_dec(x_44); +lean_dec(x_36); +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_114 = !lean_is_exclusive(x_53); +if (x_114 == 0) +{ +return x_53; +} +else +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_115 = lean_ctor_get(x_53, 0); +x_116 = lean_ctor_get(x_53, 1); +lean_inc(x_116); +lean_inc(x_115); +lean_dec(x_53); +x_117 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_117, 0, x_115); +lean_ctor_set(x_117, 1, x_116); +return x_117; +} +} +} +else +{ +uint8_t x_118; +lean_dec(x_44); +lean_dec(x_36); +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_118 = !lean_is_exclusive(x_50); +if (x_118 == 0) +{ +return x_50; +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_119 = lean_ctor_get(x_50, 0); +x_120 = lean_ctor_get(x_50, 1); +lean_inc(x_120); +lean_inc(x_119); +lean_dec(x_50); +x_121 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_121, 0, x_119); +lean_ctor_set(x_121, 1, x_120); +return x_121; +} +} +} +else +{ +uint8_t x_122; +lean_dec(x_36); +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_122 = !lean_is_exclusive(x_40); +if (x_122 == 0) +{ +return x_40; +} +else +{ +lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_123 = lean_ctor_get(x_40, 0); +x_124 = lean_ctor_get(x_40, 1); +lean_inc(x_124); +lean_inc(x_123); +lean_dec(x_40); +x_125 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_125, 0, x_123); +lean_ctor_set(x_125, 1, x_124); +return x_125; +} +} +} +else +{ +uint8_t x_126; +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_126 = !lean_is_exclusive(x_35); +if (x_126 == 0) +{ +return x_35; +} +else +{ +lean_object* x_127; lean_object* x_128; lean_object* x_129; +x_127 = lean_ctor_get(x_35, 0); +x_128 = lean_ctor_get(x_35, 1); +lean_inc(x_128); +lean_inc(x_127); +lean_dec(x_35); +x_129 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_129, 0, x_127); +lean_ctor_set(x_129, 1, x_128); +return x_129; +} +} +} +else +{ +uint8_t x_130; +lean_dec(x_28); +lean_dec(x_26); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_130 = !lean_is_exclusive(x_31); +if (x_130 == 0) +{ +return x_31; +} +else +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_131 = lean_ctor_get(x_31, 0); +x_132 = lean_ctor_get(x_31, 1); +lean_inc(x_132); +lean_inc(x_131); +lean_dec(x_31); +x_133 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_133, 0, x_131); +lean_ctor_set(x_133, 1, x_132); +return x_133; +} +} +} +else +{ +uint8_t x_134; +lean_dec(x_26); +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_134 = !lean_is_exclusive(x_27); +if (x_134 == 0) +{ +return x_27; +} +else +{ +lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_135 = lean_ctor_get(x_27, 0); +x_136 = lean_ctor_get(x_27, 1); +lean_inc(x_136); +lean_inc(x_135); +lean_dec(x_27); +x_137 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_137, 0, x_135); +lean_ctor_set(x_137, 1, x_136); +return x_137; +} +} +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_instMonadControlReaderT___lambda__2), 3, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_instMonadControlReaderT___lambda__3___boxed), 3, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_partialFixpoint___lambda__3___closed__1; +x_2 = l_Lean_Elab_partialFixpoint___lambda__3___closed__2; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Core_instMonadCoreM; +x_2 = l_ReaderT_instMonad___rarg(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_partialFixpoint___lambda__3___closed__4; +x_2 = l_ReaderT_instApplicativeOfMonad___rarg(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_partialFixpoint___lambda__3___closed__5; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_instMonadControlTOfPure___rarg(x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_partialFixpoint___lambda__3___closed__3; +x_2 = l_Lean_Elab_partialFixpoint___lambda__3___closed__6; +x_3 = l_instMonadControlTOfMonadControl___rarg(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_partialFixpoint___lambda__3___closed__3; +x_2 = l_Lean_Elab_partialFixpoint___lambda__3___closed__7; +x_3 = l_instMonadControlTOfMonadControl___rarg(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1() { +_start: +{ +size_t x_1; lean_object* x_2; +x_1 = 0; +x_2 = lean_box_usize(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +size_t x_17; size_t x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_17 = lean_array_size(x_1); +x_18 = 0; +lean_inc(x_1); +x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_PartialFixpoint_registerEqnsInfo___spec__2(x_17, x_18, x_1); +x_20 = lean_unsigned_to_nat(0u); +x_21 = lean_nat_dec_lt(x_20, x_2); +lean_inc(x_3); +x_22 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_22, 0, x_3); +if (x_21 == 0) +{ +lean_object* x_34; lean_object* x_35; +x_34 = l_Lean_Elab_instInhabitedPreDefinition; +x_35 = l_outOfBounds___rarg(x_34); +x_23 = x_35; +goto block_33; +} +else +{ +lean_object* x_36; +x_36 = lean_array_fget(x_1, x_20); +x_23 = x_36; +goto block_33; +} +block_33: +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; +x_24 = lean_ctor_get(x_23, 4); +lean_inc(x_24); +x_25 = l_Lean_Elab_partialFixpoint___lambda__3___closed__3; +x_26 = l_Lean_Elab_partialFixpoint___lambda__3___closed__8; +x_27 = l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1; +x_28 = lean_box_usize(x_17); +x_29 = lean_box(x_21); +x_30 = lean_alloc_closure((void*)(l_Lean_Elab_partialFixpoint___lambda__2___boxed), 24, 15); +lean_closure_set(x_30, 0, x_4); +lean_closure_set(x_30, 1, x_27); +lean_closure_set(x_30, 2, x_28); +lean_closure_set(x_30, 3, x_1); +lean_closure_set(x_30, 4, x_2); +lean_closure_set(x_30, 5, x_3); +lean_closure_set(x_30, 6, x_19); +lean_closure_set(x_30, 7, x_29); +lean_closure_set(x_30, 8, x_5); +lean_closure_set(x_30, 9, x_6); +lean_closure_set(x_30, 10, x_7); +lean_closure_set(x_30, 11, x_25); +lean_closure_set(x_30, 12, x_26); +lean_closure_set(x_30, 13, x_8); +lean_closure_set(x_30, 14, x_23); +x_31 = 0; +x_32 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_24, x_22, x_30, x_31, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_32; +} +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("preDefs.size = hints.size\n -- For every function of type `∀ x y, r x y`, an CCPO instance\n -- ∀ x y, CCPO (r x y), but crucially constructed using `instCCPOPi`\n ", 168, 164); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_partialFixpoint___closed__1; +x_2 = l_Lean_Elab_partialFixpoint___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2; +x_3 = lean_unsigned_to_nat(66u); +x_4 = lean_unsigned_to_nat(2u); +x_5 = l_Lean_Elab_partialFixpoint___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fixed prefix size: ", 19, 19); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_partialFixpoint___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_partialFixpoint___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_9 = lean_array_get_size(x_1); +x_10 = lean_unsigned_to_nat(0u); +x_11 = l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1(x_1, x_10, x_9); +x_12 = lean_array_get_size(x_11); +x_13 = lean_nat_dec_eq(x_9, x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_1); +x_14 = l_Lean_Elab_partialFixpoint___closed__4; +x_15 = l_panic___at_Lean_Elab_Term_reportStuckSyntheticMVar___spec__1(x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_mk_empty_array_with_capacity(x_9); +lean_inc(x_7); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_16); +lean_inc(x_9); +x_17 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4(x_1, x_11, x_12, x_1, x_9, x_10, lean_box(0), x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_20 = l_Lean_Elab_Mutual_getFixedPrefix(x_1, x_4, x_5, x_6, x_7, x_19); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6; +x_24 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_23, x_2, x_3, x_4, x_5, x_6, x_7, x_22); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_unbox(x_25); +lean_dec(x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_dec(x_24); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_partialFixpoint___lambda__3(x_1, x_9, x_21, x_18, x_11, x_12, x_23, x_16, x_28, x_2, x_3, x_4, x_5, x_6, x_7, x_27); +return x_29; +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_24); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_31 = lean_ctor_get(x_24, 1); +x_32 = lean_ctor_get(x_24, 0); +lean_dec(x_32); +lean_inc(x_21); +x_33 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); +x_34 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_34, 0, x_33); +x_35 = l_Lean_MessageData_ofFormat(x_34); +x_36 = l_Lean_Elab_partialFixpoint___closed__6; +lean_ctor_set_tag(x_24, 7); +lean_ctor_set(x_24, 1, x_35); +lean_ctor_set(x_24, 0, x_36); +x_37 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_24); +lean_ctor_set(x_38, 1, x_37); +x_39 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_23, x_38, x_2, x_3, x_4, x_5, x_6, x_7, x_31); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_39, 1); +lean_inc(x_41); +lean_dec(x_39); +x_42 = l_Lean_Elab_partialFixpoint___lambda__3(x_1, x_9, x_21, x_18, x_11, x_12, x_23, x_16, x_40, x_2, x_3, x_4, x_5, x_6, x_7, x_41); +lean_dec(x_40); +return x_42; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_43 = lean_ctor_get(x_24, 1); +lean_inc(x_43); +lean_dec(x_24); +lean_inc(x_21); +x_44 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); +x_45 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_45, 0, x_44); +x_46 = l_Lean_MessageData_ofFormat(x_45); +x_47 = l_Lean_Elab_partialFixpoint___closed__6; +x_48 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +x_49 = l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4; +x_50 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +x_51 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_23, x_50, x_2, x_3, x_4, x_5, x_6, x_7, x_43); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = l_Lean_Elab_partialFixpoint___lambda__3(x_1, x_9, x_21, x_18, x_11, x_12, x_23, x_16, x_52, x_2, x_3, x_4, x_5, x_6, x_7, x_53); +lean_dec(x_52); +return x_54; +} +} +} +else +{ +uint8_t x_55; +lean_dec(x_18); +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_55 = !lean_is_exclusive(x_20); +if (x_55 == 0) +{ +return x_20; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_20, 0); +x_57 = lean_ctor_get(x_20, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_20); +x_58 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +return x_58; +} +} +} +else +{ +uint8_t x_59; +lean_dec(x_16); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_59 = !lean_is_exclusive(x_17); +if (x_59 == 0) +{ +return x_17; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_17, 0); +x_61 = lean_ctor_get(x_17, 1); +lean_inc(x_61); +lean_inc(x_60); +lean_dec(x_17); +x_62 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +return x_62; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__2(x_1, x_5, x_6, x_4); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; lean_object* x_12; +x_11 = lean_unbox(x_3); +lean_dec(x_3); +x_12 = l_Lean_Meta_lambdaTelescope___at_Lean_Elab_partialFixpoint___spec__3___rarg(x_1, x_2, x_11, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +lean_object* x_16; +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +lean_dec(x_13); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__5(x_1, x_5, x_6, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; size_t x_13; lean_object* x_14; +x_12 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_13 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__6(x_1, x_12, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_15 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; lean_object* x_12; +x_11 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___lambda__1(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_5); +lean_dec(x_4); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; size_t x_13; size_t x_14; lean_object* x_15; +x_12 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_13 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_14 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__8(x_12, x_13, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +size_t x_12; size_t x_13; lean_object* x_14; +x_12 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_13 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_14 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_partialFixpoint___spec__9(x_1, x_12, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +uint8_t x_16; size_t x_17; lean_object* x_18; +x_16 = lean_unbox(x_4); +lean_dec(x_4); +x_17 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_18 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___lambda__1(x_1, x_2, x_3, x_16, x_5, x_6, x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +return x_18; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +_start: +{ +size_t x_19; uint8_t x_20; size_t x_21; size_t x_22; lean_object* x_23; +x_19 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_20 = lean_unbox(x_6); +lean_dec(x_6); +x_21 = lean_unbox_usize(x_9); +lean_dec(x_9); +x_22 = lean_unbox_usize(x_10); +lean_dec(x_10); +x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10(x_1, x_2, x_3, x_19, x_5, x_20, x_7, x_8, x_21, x_22, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +lean_dec(x_7); +return x_23; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__12___rarg(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__14___rarg(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_throwError___at_Lean_Elab_partialFixpoint___spec__15___rarg(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +lean_object* x_21 = _args[20]; +lean_object* x_22 = _args[21]; +lean_object* x_23 = _args[22]; +lean_object* x_24 = _args[23]; +lean_object* x_25 = _args[24]; +lean_object* x_26 = _args[25]; +lean_object* x_27 = _args[26]; +_start: +{ +lean_object* x_28; +x_28 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23, x_24, x_25, x_26, x_27); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_11); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +return x_28; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +_start: +{ +lean_object* x_19; +x_19 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_1); +return x_19; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; +x_17 = l_Lean_Elab_partialFixpoint___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_9); +lean_dec(x_1); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__2___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +lean_object* x_21 = _args[20]; +lean_object* x_22 = _args[21]; +lean_object* x_23 = _args[22]; +lean_object* x_24 = _args[23]; +_start: +{ +size_t x_25; size_t x_26; uint8_t x_27; lean_object* x_28; +x_25 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_26 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_27 = lean_unbox(x_8); +lean_dec(x_8); +x_28 = l_Lean_Elab_partialFixpoint___lambda__2(x_1, x_25, x_26, x_4, x_5, x_6, x_7, x_27, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23, x_24); +lean_dec(x_17); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +return x_28; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_partialFixpoint___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; +x_17 = l_Lean_Elab_partialFixpoint___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_9); +return x_17; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("initFn", 6, 6); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_@", 2, 2); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4; +x_2 = l_Lean_Elab_mkInstCCPOPProd___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PreDefinition", 13, 13); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PartialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Main", 4, 4); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_hyg", 4, 4); +return x_1; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12; +x_2 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14; +x_2 = lean_unsigned_to_nat(2837u); +x_3 = l_Lean_Name_num___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837_(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6; +x_3 = 0; +x_4 = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15; +x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); +return x_5; +} +} +lean_object* initialize_Lean_Elab_PreDefinition_MkInhabitant(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_Mutual(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_Tactic_Monotonicity(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Internal_Order_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_PProdN(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_PartialFixpoint_Main(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Elab_PreDefinition_MkInhabitant(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_Mutual(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_PartialFixpoint_Eqns(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Elab_Tactic_Monotonicity(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Internal_Order_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_PProdN(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__2___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___lambda__3___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__1); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__2); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__3); +l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4 = _init_l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_PartialFixpoint_Main_0__Lean_Elab_unReplaceRecApps___rarg___closed__4); +l_Lean_Elab_mkInstCCPOPProd___closed__1 = _init_l_Lean_Elab_mkInstCCPOPProd___closed__1(); +lean_mark_persistent(l_Lean_Elab_mkInstCCPOPProd___closed__1); +l_Lean_Elab_mkInstCCPOPProd___closed__2 = _init_l_Lean_Elab_mkInstCCPOPProd___closed__2(); +lean_mark_persistent(l_Lean_Elab_mkInstCCPOPProd___closed__2); +l_Lean_Elab_mkInstCCPOPProd___closed__3 = _init_l_Lean_Elab_mkInstCCPOPProd___closed__3(); +lean_mark_persistent(l_Lean_Elab_mkInstCCPOPProd___closed__3); +l_Lean_Elab_mkInstCCPOPProd___closed__4 = _init_l_Lean_Elab_mkInstCCPOPProd___closed__4(); +lean_mark_persistent(l_Lean_Elab_mkInstCCPOPProd___closed__4); +l_Lean_Elab_mkMonoPProd___lambda__1___closed__1 = _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__1___closed__1); +l_Lean_Elab_mkMonoPProd___lambda__1___closed__2 = _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__1___closed__2); +l_Lean_Elab_mkMonoPProd___lambda__1___closed__3 = _init_l_Lean_Elab_mkMonoPProd___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__1___closed__3); +l_Lean_Elab_mkMonoPProd___lambda__2___closed__1 = _init_l_Lean_Elab_mkMonoPProd___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__2___closed__1); +l_Lean_Elab_mkMonoPProd___lambda__2___closed__2 = _init_l_Lean_Elab_mkMonoPProd___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__2___closed__2); +l_Lean_Elab_mkMonoPProd___lambda__3___closed__1 = _init_l_Lean_Elab_mkMonoPProd___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__3___closed__1); +l_Lean_Elab_mkMonoPProd___lambda__3___closed__2 = _init_l_Lean_Elab_mkMonoPProd___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Elab_mkMonoPProd___lambda__3___closed__2); +l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1 = _init_l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1(); +lean_mark_persistent(l_Array_filterMapM___at_Lean_Elab_partialFixpoint___spec__1___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__5); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__6); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__7); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__8); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__9); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__10); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__11); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__12); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__2___closed__13); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__5); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__6); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__7); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__8); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__9); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__4___lambda__3___closed__10); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_partialFixpoint___spec__7___closed__2); +l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_partialFixpoint___spec__10___closed__2); +l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1 = _init_l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1(); +lean_mark_persistent(l_panic___at_Lean_Elab_partialFixpoint___spec__11___rarg___closed__1); +l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1 = _init_l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1(); +lean_mark_persistent(l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__1); +l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2 = _init_l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2(); +lean_mark_persistent(l_List_mapTR_loop___at_Lean_Elab_partialFixpoint___spec__13___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__5); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__6); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__7); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__8); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__9); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__10); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__11); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__12); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__13); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__14); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__15); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__16); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__17); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__18); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__19); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__20); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__21); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__1___closed__22); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___lambda__3___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_partialFixpoint___spec__16___closed__4); +l_Lean_Elab_partialFixpoint___lambda__1___closed__1 = _init_l_Lean_Elab_partialFixpoint___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__1___closed__1); +l_Lean_Elab_partialFixpoint___lambda__1___closed__2 = _init_l_Lean_Elab_partialFixpoint___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__1___closed__2); +l_Lean_Elab_partialFixpoint___lambda__2___closed__1 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__1); +l_Lean_Elab_partialFixpoint___lambda__2___closed__2 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__2); +l_Lean_Elab_partialFixpoint___lambda__2___closed__3 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__3); +l_Lean_Elab_partialFixpoint___lambda__2___closed__4 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__4); +l_Lean_Elab_partialFixpoint___lambda__2___closed__5 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__5); +l_Lean_Elab_partialFixpoint___lambda__2___closed__6 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__6); +l_Lean_Elab_partialFixpoint___lambda__2___closed__7 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__7); +l_Lean_Elab_partialFixpoint___lambda__2___closed__8 = _init_l_Lean_Elab_partialFixpoint___lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__2___closed__8); +l_Lean_Elab_partialFixpoint___lambda__3___closed__1 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__1); +l_Lean_Elab_partialFixpoint___lambda__3___closed__2 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__2); +l_Lean_Elab_partialFixpoint___lambda__3___closed__3 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__3); +l_Lean_Elab_partialFixpoint___lambda__3___closed__4 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__4(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__4); +l_Lean_Elab_partialFixpoint___lambda__3___closed__5 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__5(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__5); +l_Lean_Elab_partialFixpoint___lambda__3___closed__6 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__6(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__6); +l_Lean_Elab_partialFixpoint___lambda__3___closed__7 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__7(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__7); +l_Lean_Elab_partialFixpoint___lambda__3___closed__8 = _init_l_Lean_Elab_partialFixpoint___lambda__3___closed__8(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___closed__8); +l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1 = _init_l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___lambda__3___boxed__const__1); +l_Lean_Elab_partialFixpoint___closed__1 = _init_l_Lean_Elab_partialFixpoint___closed__1(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__1); +l_Lean_Elab_partialFixpoint___closed__2 = _init_l_Lean_Elab_partialFixpoint___closed__2(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__2); +l_Lean_Elab_partialFixpoint___closed__3 = _init_l_Lean_Elab_partialFixpoint___closed__3(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__3); +l_Lean_Elab_partialFixpoint___closed__4 = _init_l_Lean_Elab_partialFixpoint___closed__4(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__4); +l_Lean_Elab_partialFixpoint___closed__5 = _init_l_Lean_Elab_partialFixpoint___closed__5(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__5); +l_Lean_Elab_partialFixpoint___closed__6 = _init_l_Lean_Elab_partialFixpoint___closed__6(); +lean_mark_persistent(l_Lean_Elab_partialFixpoint___closed__6); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__1); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__2); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__3); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__4); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__5); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__6); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__7); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__8); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__9); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__10); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__11); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__12); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__13); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__14); +l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15 = _init_l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837____closed__15); +if (builtin) {res = l_initFn____x40_Lean_Elab_PreDefinition_PartialFixpoint_Main___hyg_2837_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Structural/BRecOn.c b/stage0/stdlib/Lean/Elab/PreDefinition/Structural/BRecOn.c index 03a6c0346c..6693fc2c49 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/Structural/BRecOn.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Structural/BRecOn.c @@ -124,6 +124,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0 LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__36___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__22___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_projM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__12___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__9___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_withBelowDict___spec__5___closed__2; @@ -216,7 +217,6 @@ static lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lea LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_toBelow___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__41___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_withBelowDict___spec__8(lean_object*); -lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___private_Lean_Elab_PreDefinition_Structural_BRecOn_0__Lean_Elab_Structural_replaceRecApps_loop___spec__29___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -18525,7 +18525,7 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_58 = l_Lean_Meta_PProdN_proj(x_56, x_57, x_46, x_8, x_9, x_10, x_11, x_28); +x_58 = l_Lean_Meta_PProdN_projM(x_56, x_57, x_46, x_8, x_9, x_10, x_11, x_28); lean_dec(x_56); if (lean_obj_tag(x_58) == 0) { @@ -18609,7 +18609,7 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_75 = l_Lean_Meta_PProdN_proj(x_73, x_74, x_46, x_8, x_9, x_10, x_11, x_28); +x_75 = l_Lean_Meta_PProdN_projM(x_73, x_74, x_46, x_8, x_9, x_10, x_11, x_28); lean_dec(x_73); if (lean_obj_tag(x_75) == 0) { diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/Structural/Main.c b/stage0/stdlib/Lean/Elab/PreDefinition/Structural/Main.c index 9d7e2a9797..8afd805d12 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/Structural/Main.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/Structural/Main.c @@ -14332,7 +14332,7 @@ lean_inc(x_24); x_25 = lean_ctor_get(x_23, 1); lean_inc(x_25); lean_dec(x_23); -x_26 = lean_ctor_get(x_8, 4); +x_26 = lean_ctor_get(x_8, 5); lean_inc(x_26); lean_dec(x_8); lean_inc(x_6); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/TerminationHint.c b/stage0/stdlib/Lean/Elab/PreDefinition/TerminationHint.c index 09e7973537..0003e64879 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/TerminationHint.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/TerminationHint.c @@ -13,13 +13,18 @@ #ifdef __cplusplus extern "C" { #endif +static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__11; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_TerminationBy_checkVars___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2; lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationBy_checkVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3; lean_object* lean_mk_empty_array_with_capacity(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Syntax_matchesIdent(lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters___closed__4; static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Elab_TerminationHints_isNotNone(lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__10; LEAN_EXPORT uint8_t l_Lean_Elab_elabTerminationHints___rarg___lambda__1(lean_object*); @@ -27,107 +32,126 @@ static lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters___closed__5; static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__9; static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__1; lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__3; lean_object* l_Lean_Name_toString(lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Syntax_getId(lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_ensureNone(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getArgs(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2; lean_object* l_Lean_replaceRef(lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_ensureNone___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3; lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__8; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3; +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__9; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints(lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__5; +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1; +static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__12; static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__7; LEAN_EXPORT lean_object* l_Lean_throwErrorAt___at_Lean_Elab_TerminationBy_checkVars___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_isNotNone___boxed(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1; static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__10; +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__4; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_instInhabitedTerminationHints; lean_object* l_Lean_Syntax_getKind(lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__2; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1; -static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1; static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__6; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__12; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__5; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__7; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__11; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationBy_checkVars___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationBy_checkVars___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__6; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_instInhabitedPartialFixpoint; LEAN_EXPORT lean_object* l_Lean_Elab_instInhabitedDecreasingBy; static lean_object* l_Lean_Elab_instInhabitedDecreasingBy___closed__1; static lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters___closed__2; extern lean_object* l_Std_Format_defWidth; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_none; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_rememberExtraParams(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwErrorAt___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_instInhabitedTerminationBy___closed__1; static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__3; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationBy_checkVars___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__1; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__3; static lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__3(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_rememberExtraParams___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; uint8_t l_Lean_Syntax_isNone(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5; static lean_object* l_Lean_Elab_TerminationBy_checkVars___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__1___boxed(lean_object*); lean_object* lean_array_mk(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2; static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7; +static lean_object* l_Lean_Elab_instInhabitedPartialFixpoint___closed__1; static lean_object* l_Lean_Elab_instInhabitedTerminationHints___closed__1; lean_object* l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7(lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); uint8_t l_Lean_Name_isSuffixOf(lean_object*, lean_object*); static lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_TerminationBy_checkVars_parameters(lean_object*); lean_object* lean_array_get_size(lean_object*); +static lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_instInhabitedTerminationBy; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__13(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_instInhabitedTerminationBy___closed__2; lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getNumHeadLambdas(lean_object*); static lean_object* l_Lean_Elab_TerminationHints_ensureNone___closed__8; static lean_object* _init_l_Lean_Elab_instInhabitedTerminationBy___closed__1() { @@ -182,6 +206,26 @@ x_1 = l_Lean_Elab_instInhabitedDecreasingBy___closed__1; return x_1; } } +static lean_object* _init_l_Lean_Elab_instInhabitedPartialFixpoint___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_instInhabitedPartialFixpoint() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_instInhabitedPartialFixpoint___closed__1; +return x_1; +} +} static lean_object* _init_l_Lean_Elab_instInhabitedTerminationHints___closed__1() { _start: { @@ -189,12 +233,13 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(0); x_2 = lean_box(0); x_3 = lean_unsigned_to_nat(0u); -x_4 = lean_alloc_ctor(0, 5, 0); +x_4 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_4, 0, x_2); lean_ctor_set(x_4, 1, x_1); lean_ctor_set(x_4, 2, x_1); lean_ctor_set(x_4, 3, x_1); -lean_ctor_set(x_4, 4, x_3); +lean_ctor_set(x_4, 4, x_1); +lean_ctor_set(x_4, 5, x_3); return x_4; } } @@ -218,7 +263,7 @@ static lean_object* _init_l_Lean_Elab_TerminationHints_ensureNone___closed__1() _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("unused `decreasing_by`, function is ", 36, 36); +x_1 = lean_mk_string_unchecked("unused `partial_fixpoint`, function is ", 39, 39); return x_1; } } @@ -252,7 +297,7 @@ static lean_object* _init_l_Lean_Elab_TerminationHints_ensureNone___closed__5() _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("unused `termination_by`, function is ", 37, 37); +x_1 = lean_mk_string_unchecked("unused `decreasing_by`, function is ", 36, 36); return x_1; } } @@ -286,7 +331,7 @@ static lean_object* _init_l_Lean_Elab_TerminationHints_ensureNone___closed__9() _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("unused `termination_by\?`, function is ", 38, 38); +x_1 = lean_mk_string_unchecked("unused `termination_by`, function is ", 37, 37); return x_1; } } @@ -299,6 +344,23 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_Elab_TerminationHints_ensureNone___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unused `termination_by\?`, function is ", 38, 38); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_TerminationHints_ensureNone___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_TerminationHints_ensureNone___closed__11; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_ensureNone(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { @@ -311,136 +373,225 @@ x_7 = lean_ctor_get(x_1, 2); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; -x_8 = lean_ctor_get(x_1, 3); +x_8 = lean_ctor_get(x_1, 4); if (lean_obj_tag(x_8) == 0) { -lean_object* x_9; lean_object* x_10; +lean_object* x_9; +x_9 = lean_ctor_get(x_1, 3); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_dec(x_3); -x_9 = lean_box(0); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_5); -return x_10; +x_10 = lean_box(0); +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_5); +return x_11; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; -x_11 = lean_ctor_get(x_8, 0); -x_12 = lean_ctor_get(x_11, 0); -x_13 = l_Lean_stringToMessageData(x_2); -x_14 = l_Lean_Elab_TerminationHints_ensureNone___closed__2; -x_15 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_15, 0, x_14); -lean_ctor_set(x_15, 1, x_13); -x_16 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; -x_17 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_17, 0, x_15); -lean_ctor_set(x_17, 1, x_16); -x_18 = 1; -x_19 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_12, x_17, x_18, x_3, x_4, x_5); -return x_19; +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_12 = lean_ctor_get(x_9, 0); +x_13 = lean_ctor_get(x_12, 0); +x_14 = l_Lean_stringToMessageData(x_2); +x_15 = l_Lean_Elab_TerminationHints_ensureNone___closed__2; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +x_17 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +x_19 = 1; +x_20 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_13, x_18, x_19, x_3, x_4, x_5); +return x_20; } } else { -lean_object* x_20; -x_20 = lean_ctor_get(x_1, 3); -if (lean_obj_tag(x_20) == 0) +lean_object* x_21; +x_21 = lean_ctor_get(x_1, 3); +if (lean_obj_tag(x_21) == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; -x_21 = lean_ctor_get(x_7, 0); -x_22 = lean_ctor_get(x_21, 0); -x_23 = l_Lean_stringToMessageData(x_2); -x_24 = l_Lean_Elab_TerminationHints_ensureNone___closed__6; -x_25 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -x_26 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; -x_27 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -x_28 = 1; -x_29 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_22, x_27, x_28, x_3, x_4, x_5); -return x_29; +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; +x_22 = lean_ctor_get(x_8, 0); +x_23 = lean_ctor_get(x_22, 0); +x_24 = l_Lean_stringToMessageData(x_2); +x_25 = l_Lean_Elab_TerminationHints_ensureNone___closed__6; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +x_27 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_28 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +x_29 = 1; +x_30 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_23, x_28, x_29, x_3, x_4, x_5); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; -x_30 = lean_ctor_get(x_1, 0); -x_31 = l_Lean_stringToMessageData(x_2); -x_32 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; -x_33 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_31); -x_34 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; -x_35 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); -x_36 = 1; -x_37 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_30, x_35, x_36, x_3, x_4, x_5); -return x_37; +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; +x_31 = lean_ctor_get(x_1, 0); +x_32 = l_Lean_stringToMessageData(x_2); +x_33 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +x_35 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +x_37 = 1; +x_38 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_31, x_36, x_37, x_3, x_4, x_5); +return x_38; } } } else { -lean_object* x_38; -x_38 = lean_ctor_get(x_1, 2); -if (lean_obj_tag(x_38) == 0) -{ lean_object* x_39; -x_39 = lean_ctor_get(x_1, 3); +x_39 = lean_ctor_get(x_1, 4); if (lean_obj_tag(x_39) == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; lean_object* x_47; -x_40 = lean_ctor_get(x_6, 0); -x_41 = l_Lean_stringToMessageData(x_2); -x_42 = l_Lean_Elab_TerminationHints_ensureNone___closed__10; -x_43 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_43, 0, x_42); -lean_ctor_set(x_43, 1, x_41); -x_44 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +lean_object* x_40; +x_40 = lean_ctor_get(x_1, 3); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; lean_object* x_49; +x_41 = lean_ctor_get(x_7, 0); +x_42 = lean_ctor_get(x_41, 0); +x_43 = l_Lean_stringToMessageData(x_2); +x_44 = l_Lean_Elab_TerminationHints_ensureNone___closed__10; x_45 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_44); -x_46 = 1; -x_47 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_40, x_45, x_46, x_3, x_4, x_5); -return x_47; +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_43); +x_46 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_47 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +x_48 = 1; +x_49 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_42, x_47, x_48, x_3, x_4, x_5); +return x_49; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; -x_48 = lean_ctor_get(x_1, 0); -x_49 = l_Lean_stringToMessageData(x_2); -x_50 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; -x_51 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_49); -x_52 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; +x_50 = lean_ctor_get(x_1, 0); +x_51 = l_Lean_stringToMessageData(x_2); +x_52 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; x_53 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); -x_54 = 1; -x_55 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_48, x_53, x_54, x_3, x_4, x_5); -return x_55; +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_51); +x_54 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_55 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +x_56 = 1; +x_57 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_50, x_55, x_56, x_3, x_4, x_5); +return x_57; } } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; lean_object* x_63; -x_56 = lean_ctor_get(x_1, 0); -x_57 = l_Lean_stringToMessageData(x_2); -x_58 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -x_60 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; lean_object* x_65; +x_58 = lean_ctor_get(x_1, 0); +x_59 = l_Lean_stringToMessageData(x_2); +x_60 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; x_61 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -x_62 = 1; -x_63 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_56, x_61, x_62, x_3, x_4, x_5); -return x_63; +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_59); +x_62 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_63 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_62); +x_64 = 1; +x_65 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_58, x_63, x_64, x_3, x_4, x_5); +return x_65; +} +} +} +else +{ +lean_object* x_66; +x_66 = lean_ctor_get(x_1, 2); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; +x_67 = lean_ctor_get(x_1, 4); +if (lean_obj_tag(x_67) == 0) +{ +lean_object* x_68; +x_68 = lean_ctor_get(x_1, 3); +if (lean_obj_tag(x_68) == 0) +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; lean_object* x_76; +x_69 = lean_ctor_get(x_6, 0); +x_70 = l_Lean_stringToMessageData(x_2); +x_71 = l_Lean_Elab_TerminationHints_ensureNone___closed__12; +x_72 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_70); +x_73 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_74 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +x_75 = 1; +x_76 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_69, x_74, x_75, x_3, x_4, x_5); +return x_76; +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; uint8_t x_83; lean_object* x_84; +x_77 = lean_ctor_get(x_1, 0); +x_78 = l_Lean_stringToMessageData(x_2); +x_79 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; +x_80 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_78); +x_81 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_82 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +x_83 = 1; +x_84 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_77, x_82, x_83, x_3, x_4, x_5); +return x_84; +} +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; uint8_t x_91; lean_object* x_92; +x_85 = lean_ctor_get(x_1, 0); +x_86 = l_Lean_stringToMessageData(x_2); +x_87 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; +x_88 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_86); +x_89 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_90 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_90, 0, x_88); +lean_ctor_set(x_90, 1, x_89); +x_91 = 1; +x_92 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_85, x_90, x_91, x_3, x_4, x_5); +return x_92; +} +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; uint8_t x_99; lean_object* x_100; +x_93 = lean_ctor_get(x_1, 0); +x_94 = l_Lean_stringToMessageData(x_2); +x_95 = l_Lean_Elab_TerminationHints_ensureNone___closed__8; +x_96 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_96, 0, x_95); +lean_ctor_set(x_96, 1, x_94); +x_97 = l_Lean_Elab_TerminationHints_ensureNone___closed__4; +x_98 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_98, 0, x_96); +lean_ctor_set(x_98, 1, x_97); +x_99 = 1; +x_100 = l_Lean_logAt___at_Lean_Core_wrapAsyncAsSnapshot___spec__14(x_93, x_98, x_99, x_3, x_4, x_5); +return x_100; } } } @@ -468,20 +619,17 @@ x_3 = lean_ctor_get(x_1, 2); if (lean_obj_tag(x_3) == 0) { lean_object* x_4; -x_4 = lean_ctor_get(x_1, 3); +x_4 = lean_ctor_get(x_1, 4); if (lean_obj_tag(x_4) == 0) { -uint8_t x_5; -x_5 = 0; -return x_5; -} -else +lean_object* x_5; +x_5 = lean_ctor_get(x_1, 3); +if (lean_obj_tag(x_5) == 0) { uint8_t x_6; -x_6 = 1; +x_6 = 0; return x_6; } -} else { uint8_t x_7; @@ -496,6 +644,20 @@ x_8 = 1; return x_8; } } +else +{ +uint8_t x_9; +x_9 = 1; +return x_9; +} +} +else +{ +uint8_t x_10; +x_10 = 1; +return x_10; +} +} } LEAN_EXPORT lean_object* l_Lean_Elab_TerminationHints_isNotNone___boxed(lean_object* x_1) { _start: @@ -515,36 +677,39 @@ x_4 = !lean_is_exclusive(x_2); if (x_4 == 0) { lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_5 = lean_ctor_get(x_2, 4); +x_5 = lean_ctor_get(x_2, 5); lean_dec(x_5); x_6 = l_Lean_Expr_getNumHeadLambdas(x_3); x_7 = lean_nat_sub(x_6, x_1); lean_dec(x_6); -lean_ctor_set(x_2, 4, x_7); +lean_ctor_set(x_2, 5, x_7); return x_2; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_8 = lean_ctor_get(x_2, 0); x_9 = lean_ctor_get(x_2, 1); x_10 = lean_ctor_get(x_2, 2); x_11 = lean_ctor_get(x_2, 3); +x_12 = lean_ctor_get(x_2, 4); +lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_dec(x_2); -x_12 = l_Lean_Expr_getNumHeadLambdas(x_3); -x_13 = lean_nat_sub(x_12, x_1); -lean_dec(x_12); -x_14 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_14, 0, x_8); -lean_ctor_set(x_14, 1, x_9); -lean_ctor_set(x_14, 2, x_10); -lean_ctor_set(x_14, 3, x_11); -lean_ctor_set(x_14, 4, x_13); -return x_14; +x_13 = l_Lean_Expr_getNumHeadLambdas(x_3); +x_14 = lean_nat_sub(x_13, x_1); +lean_dec(x_13); +x_15 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_9); +lean_ctor_set(x_15, 2, x_10); +lean_ctor_set(x_15, 3, x_11); +lean_ctor_set(x_15, 4, x_12); +lean_ctor_set(x_15, 5, x_14); +return x_15; } } } @@ -987,69 +1152,72 @@ x_2 = 0; return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { if (lean_obj_tag(x_2) == 0) { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_6 = lean_ctor_get(x_1, 0); -lean_inc(x_6); -lean_dec(x_1); -x_7 = lean_ctor_get(x_6, 1); +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_7 = lean_ctor_get(x_1, 0); lean_inc(x_7); -lean_dec(x_6); -x_8 = lean_box(0); -x_9 = lean_unsigned_to_nat(0u); -x_10 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_10, 0, x_3); -lean_ctor_set(x_10, 1, x_8); -lean_ctor_set(x_10, 2, x_4); -lean_ctor_set(x_10, 3, x_5); -lean_ctor_set(x_10, 4, x_9); -x_11 = lean_apply_2(x_7, lean_box(0), x_10); -return x_11; -} -else -{ -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_ctor_get(x_1, 0); -lean_inc(x_12); lean_dec(x_1); -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = !lean_is_exclusive(x_2); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_unsigned_to_nat(0u); -x_16 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_16, 0, x_3); -lean_ctor_set(x_16, 1, x_2); -lean_ctor_set(x_16, 2, x_4); -lean_ctor_set(x_16, 3, x_5); -lean_ctor_set(x_16, 4, x_15); -x_17 = lean_apply_2(x_13, lean_box(0), x_16); -return x_17; +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +lean_dec(x_7); +x_9 = lean_box(0); +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_11, 0, x_3); +lean_ctor_set(x_11, 1, x_9); +lean_ctor_set(x_11, 2, x_4); +lean_ctor_set(x_11, 3, x_5); +lean_ctor_set(x_11, 4, x_6); +lean_ctor_set(x_11, 5, x_10); +x_12 = lean_apply_2(x_8, lean_box(0), x_11); +return x_12; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_18 = lean_ctor_get(x_2, 0); -lean_inc(x_18); +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_1, 0); +lean_inc(x_13); +lean_dec(x_1); +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = !lean_is_exclusive(x_2); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_17, 0, x_3); +lean_ctor_set(x_17, 1, x_2); +lean_ctor_set(x_17, 2, x_4); +lean_ctor_set(x_17, 3, x_5); +lean_ctor_set(x_17, 4, x_6); +lean_ctor_set(x_17, 5, x_16); +x_18 = lean_apply_2(x_14, lean_box(0), x_17); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_19 = lean_ctor_get(x_2, 0); +lean_inc(x_19); lean_dec(x_2); -x_19 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_19, 0, x_18); -x_20 = lean_unsigned_to_nat(0u); -x_21 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_21, 0, x_3); -lean_ctor_set(x_21, 1, x_19); -lean_ctor_set(x_21, 2, x_4); -lean_ctor_set(x_21, 3, x_5); -lean_ctor_set(x_21, 4, x_20); -x_22 = lean_apply_2(x_13, lean_box(0), x_21); -return x_22; +x_20 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_20, 0, x_19); +x_21 = lean_unsigned_to_nat(0u); +x_22 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_22, 0, x_3); +lean_ctor_set(x_22, 1, x_20); +lean_ctor_set(x_22, 2, x_4); +lean_ctor_set(x_22, 3, x_5); +lean_ctor_set(x_22, 4, x_6); +lean_ctor_set(x_22, 5, x_21); +x_23 = lean_apply_2(x_14, lean_box(0), x_22); +return x_23; } } } @@ -1131,356 +1299,107 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_7; lean_object* x_8; -x_7 = lean_ctor_get(x_1, 1); -lean_inc(x_7); -lean_inc(x_1); -x_8 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__2), 5, 4); -lean_closure_set(x_8, 0, x_1); -lean_closure_set(x_8, 1, x_2); -lean_closure_set(x_8, 2, x_3); -lean_closure_set(x_8, 3, x_6); -if (lean_obj_tag(x_4) == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -lean_dec(x_5); -x_9 = lean_ctor_get(x_1, 0); -lean_inc(x_9); -lean_dec(x_1); -x_10 = lean_ctor_get(x_9, 1); -lean_inc(x_10); -lean_dec(x_9); -x_11 = lean_box(0); -x_12 = lean_apply_2(x_10, lean_box(0), x_11); -x_13 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_12, x_8); -return x_13; -} -else -{ -lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_4, 0); -lean_inc(x_14); -lean_dec(x_4); -x_15 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__5; -lean_inc(x_14); -x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); -lean_inc(x_1); -x_17 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__3), 2, 1); -lean_closure_set(x_17, 0, x_1); -if (x_16 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7; -x_19 = l_Lean_throwErrorAt___rarg(x_1, x_5, x_14, x_18); -lean_inc(x_7); -x_20 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_19, x_17); -x_21 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_20, x_8); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_5); -x_22 = lean_unsigned_to_nat(1u); -x_23 = l_Lean_Syntax_getArg(x_14, x_22); -x_24 = lean_ctor_get(x_1, 0); -lean_inc(x_24); -lean_dec(x_1); -x_25 = lean_ctor_get(x_24, 1); -lean_inc(x_25); -lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_14); -lean_ctor_set(x_26, 1, x_23); -x_27 = lean_apply_2(x_25, lean_box(0), x_26); -lean_inc(x_7); -x_28 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_27, x_17); -x_29 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_28, x_8); -return x_29; -} -} -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_7 = lean_unsigned_to_nat(2u); -x_8 = l_Lean_Syntax_getArg(x_1, x_7); +lean_object* x_8; lean_object* x_9; +x_8 = lean_ctor_get(x_1, 1); lean_inc(x_8); -x_9 = l_Lean_Syntax_matchesNull(x_8, x_7); -if (x_9 == 0) +lean_inc(x_1); +x_9 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__2), 6, 5); +lean_closure_set(x_9, 0, x_1); +lean_closure_set(x_9, 1, x_2); +lean_closure_set(x_9, 2, x_3); +lean_closure_set(x_9, 3, x_4); +lean_closure_set(x_9, 4, x_7); +if (lean_obj_tag(x_5) == 0) { -lean_object* x_10; uint8_t x_11; -x_10 = lean_unsigned_to_nat(0u); -x_11 = l_Lean_Syntax_matchesNull(x_8, x_10); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_dec(x_6); -x_12 = lean_ctor_get(x_2, 1); -lean_inc(x_12); -x_13 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -x_14 = l_Lean_throwErrorAt___rarg(x_2, x_3, x_1, x_13); -x_15 = lean_apply_4(x_12, lean_box(0), lean_box(0), x_14, x_4); -return x_15; +x_10 = lean_ctor_get(x_1, 0); +lean_inc(x_10); +lean_dec(x_1); +x_11 = lean_ctor_get(x_10, 1); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_box(0); +x_13 = lean_apply_2(x_11, lean_box(0), x_12); +x_14 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_13, x_9); +return x_14; } else { -lean_object* x_16; lean_object* x_17; -lean_dec(x_3); -x_16 = lean_unsigned_to_nat(3u); -x_17 = l_Lean_Syntax_getArg(x_1, x_16); -if (lean_obj_tag(x_6) == 0) +lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_5, 0); +lean_inc(x_15); +lean_dec(x_5); +x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__5; +lean_inc(x_15); +x_17 = l_Lean_Syntax_isOfKind(x_15, x_16); +lean_inc(x_1); +x_18 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__3), 2, 1); +lean_closure_set(x_18, 0, x_1); +if (x_17 == 0) { -lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_18 = lean_ctor_get(x_2, 1); -lean_inc(x_18); -x_19 = lean_ctor_get(x_2, 0); -lean_inc(x_19); -lean_dec(x_2); -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); -lean_dec(x_19); -x_21 = 0; -x_22 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3; -x_23 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_23, 0, x_1); -lean_ctor_set(x_23, 1, x_22); -lean_ctor_set(x_23, 2, x_17); -lean_ctor_set_uint8(x_23, sizeof(void*)*3, x_21); -lean_ctor_set_uint8(x_23, sizeof(void*)*3 + 1, x_21); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_23); -x_25 = lean_apply_2(x_20, lean_box(0), x_24); -x_26 = lean_apply_4(x_18, lean_box(0), lean_box(0), x_25, x_4); -return x_26; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7; +x_20 = l_Lean_throwErrorAt___rarg(x_1, x_6, x_15, x_19); +lean_inc(x_8); +x_21 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_20, x_18); +x_22 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_21, x_9); +return x_22; } else { -uint8_t x_27; -x_27 = !lean_is_exclusive(x_6); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_28 = lean_ctor_get(x_6, 0); -lean_dec(x_28); -x_29 = lean_ctor_get(x_2, 1); -lean_inc(x_29); -x_30 = lean_ctor_get(x_2, 0); -lean_inc(x_30); -lean_dec(x_2); -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = 1; -x_33 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3; -x_34 = 0; -x_35 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_35, 0, x_1); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_35, 2, x_17); -lean_ctor_set_uint8(x_35, sizeof(void*)*3, x_32); -lean_ctor_set_uint8(x_35, sizeof(void*)*3 + 1, x_34); -lean_ctor_set(x_6, 0, x_35); -x_36 = lean_apply_2(x_31, lean_box(0), x_6); -x_37 = lean_apply_4(x_29, lean_box(0), lean_box(0), x_36, x_4); -return x_37; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; uint8_t x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_dec(x_6); -x_38 = lean_ctor_get(x_2, 1); -lean_inc(x_38); -x_39 = lean_ctor_get(x_2, 0); -lean_inc(x_39); -lean_dec(x_2); -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -lean_dec(x_39); -x_41 = 1; -x_42 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3; -x_43 = 0; -x_44 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_44, 0, x_1); -lean_ctor_set(x_44, 1, x_42); -lean_ctor_set(x_44, 2, x_17); -lean_ctor_set_uint8(x_44, sizeof(void*)*3, x_41); -lean_ctor_set_uint8(x_44, sizeof(void*)*3 + 1, x_43); -x_45 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_45, 0, x_44); -x_46 = lean_apply_2(x_40, lean_box(0), x_45); -x_47 = lean_apply_4(x_38, lean_box(0), lean_box(0), x_46, x_4); -return x_47; +x_23 = lean_unsigned_to_nat(1u); +x_24 = l_Lean_Syntax_getArg(x_15, x_23); +x_25 = lean_ctor_get(x_1, 0); +lean_inc(x_25); +lean_dec(x_1); +x_26 = lean_ctor_get(x_25, 1); +lean_inc(x_26); +lean_dec(x_25); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_15); +lean_ctor_set(x_27, 1, x_24); +x_28 = lean_apply_2(x_26, lean_box(0), x_27); +lean_inc(x_8); +x_29 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_28, x_18); +x_30 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_29, x_9); +return x_30; } } } } -else +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: { -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_unsigned_to_nat(0u); -x_49 = l_Lean_Syntax_getArg(x_8, x_48); -lean_dec(x_8); -lean_inc(x_49); -x_50 = l_Lean_Syntax_matchesNull(x_49, x_48); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; -lean_dec(x_3); -x_51 = lean_unsigned_to_nat(3u); -x_52 = l_Lean_Syntax_getArg(x_1, x_51); -x_53 = l_Lean_Syntax_getArgs(x_49); -lean_dec(x_49); -if (lean_obj_tag(x_6) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_54 = lean_ctor_get(x_2, 1); -lean_inc(x_54); -x_55 = lean_ctor_get(x_2, 0); -lean_inc(x_55); -lean_dec(x_2); -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = 0; -x_58 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_58, 0, x_1); -lean_ctor_set(x_58, 1, x_53); -lean_ctor_set(x_58, 2, x_52); -lean_ctor_set_uint8(x_58, sizeof(void*)*3, x_57); -lean_ctor_set_uint8(x_58, sizeof(void*)*3 + 1, x_57); -x_59 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_59, 0, x_58); -x_60 = lean_apply_2(x_56, lean_box(0), x_59); -x_61 = lean_apply_4(x_54, lean_box(0), lean_box(0), x_60, x_4); -return x_61; -} -else -{ -uint8_t x_62; -x_62 = !lean_is_exclusive(x_6); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; uint8_t x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_63 = lean_ctor_get(x_6, 0); -lean_dec(x_63); -x_64 = lean_ctor_get(x_2, 1); -lean_inc(x_64); -x_65 = lean_ctor_get(x_2, 0); -lean_inc(x_65); -lean_dec(x_2); -x_66 = lean_ctor_get(x_65, 1); -lean_inc(x_66); -lean_dec(x_65); -x_67 = 1; -x_68 = 0; -x_69 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_69, 0, x_1); -lean_ctor_set(x_69, 1, x_53); -lean_ctor_set(x_69, 2, x_52); -lean_ctor_set_uint8(x_69, sizeof(void*)*3, x_67); -lean_ctor_set_uint8(x_69, sizeof(void*)*3 + 1, x_68); -lean_ctor_set(x_6, 0, x_69); -x_70 = lean_apply_2(x_66, lean_box(0), x_6); -x_71 = lean_apply_4(x_64, lean_box(0), lean_box(0), x_70, x_4); -return x_71; -} -else -{ -lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; uint8_t x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -lean_dec(x_6); -x_72 = lean_ctor_get(x_2, 1); -lean_inc(x_72); -x_73 = lean_ctor_get(x_2, 0); -lean_inc(x_73); -lean_dec(x_2); -x_74 = lean_ctor_get(x_73, 1); -lean_inc(x_74); -lean_dec(x_73); -x_75 = 1; -x_76 = 0; -x_77 = lean_alloc_ctor(0, 3, 2); -lean_ctor_set(x_77, 0, x_1); -lean_ctor_set(x_77, 1, x_53); -lean_ctor_set(x_77, 2, x_52); -lean_ctor_set_uint8(x_77, sizeof(void*)*3, x_75); -lean_ctor_set_uint8(x_77, sizeof(void*)*3 + 1, x_76); -x_78 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_78, 0, x_77); -x_79 = lean_apply_2(x_74, lean_box(0), x_78); -x_80 = lean_apply_4(x_72, lean_box(0), lean_box(0), x_79, x_4); -return x_80; -} -} -} -else -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -lean_dec(x_49); -lean_dec(x_6); -x_81 = lean_ctor_get(x_2, 1); -lean_inc(x_81); -x_82 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5; -x_83 = l_Lean_throwErrorAt___rarg(x_2, x_3, x_1, x_82); -x_84 = lean_apply_4(x_81, lean_box(0), lean_box(0), x_83, x_4); -return x_84; -} -} +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_6 = lean_ctor_get(x_1, 1); +lean_inc(x_6); +x_7 = lean_ctor_get(x_1, 0); +lean_inc(x_7); +lean_dec(x_1); +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +lean_dec(x_7); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_2); +lean_ctor_set(x_9, 1, x_5); +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_9); +x_11 = lean_apply_2(x_8, lean_box(0), x_10); +x_12 = lean_apply_4(x_6, lean_box(0), lean_box(0), x_11, x_3); +return x_12; } } static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); return x_1; } } @@ -1496,7 +1415,653 @@ x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3() { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_1); +x_8 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__4), 7, 6); +lean_closure_set(x_8, 0, x_1); +lean_closure_set(x_8, 1, x_2); +lean_closure_set(x_8, 2, x_3); +lean_closure_set(x_8, 3, x_7); +lean_closure_set(x_8, 4, x_4); +lean_closure_set(x_8, 5, x_5); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_9 = lean_ctor_get(x_1, 1); +lean_inc(x_9); +x_10 = lean_ctor_get(x_1, 0); +lean_inc(x_10); +lean_dec(x_1); +x_11 = lean_ctor_get(x_10, 1); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_box(0); +x_13 = lean_apply_2(x_11, lean_box(0), x_12); +x_14 = lean_apply_4(x_9, lean_box(0), lean_box(0), x_13, x_8); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_6); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_16 = lean_ctor_get(x_6, 0); +x_17 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; +lean_inc(x_16); +x_18 = l_Lean_Syntax_isOfKind(x_16, x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_free_object(x_6); +lean_dec(x_16); +x_19 = lean_ctor_get(x_1, 1); +lean_inc(x_19); +x_20 = lean_ctor_get(x_1, 0); +lean_inc(x_20); +lean_dec(x_1); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_box(0); +x_23 = lean_apply_2(x_21, lean_box(0), x_22); +x_24 = lean_apply_4(x_19, lean_box(0), lean_box(0), x_23, x_8); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_unsigned_to_nat(1u); +x_26 = l_Lean_Syntax_getArg(x_16, x_25); +x_27 = l_Lean_Syntax_isNone(x_26); +if (x_27 == 0) +{ +lean_object* x_28; uint8_t x_29; +x_28 = lean_unsigned_to_nat(2u); +lean_inc(x_26); +x_29 = l_Lean_Syntax_matchesNull(x_26, x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_26); +lean_free_object(x_6); +lean_dec(x_16); +x_30 = lean_ctor_get(x_1, 1); +lean_inc(x_30); +x_31 = lean_ctor_get(x_1, 0); +lean_inc(x_31); +lean_dec(x_1); +x_32 = lean_ctor_get(x_31, 1); +lean_inc(x_32); +lean_dec(x_31); +x_33 = lean_box(0); +x_34 = lean_apply_2(x_32, lean_box(0), x_33); +x_35 = lean_apply_4(x_30, lean_box(0), lean_box(0), x_34, x_8); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = l_Lean_Syntax_getArg(x_26, x_25); +lean_dec(x_26); +lean_ctor_set(x_6, 0, x_36); +x_37 = lean_box(0); +x_38 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_16, x_8, x_37, x_6); +return x_38; +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_26); +lean_free_object(x_6); +x_39 = lean_box(0); +x_40 = lean_box(0); +x_41 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_16, x_8, x_40, x_39); +return x_41; +} +} +} +else +{ +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_6, 0); +lean_inc(x_42); +lean_dec(x_6); +x_43 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; +lean_inc(x_42); +x_44 = l_Lean_Syntax_isOfKind(x_42, x_43); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +lean_dec(x_42); +x_45 = lean_ctor_get(x_1, 1); +lean_inc(x_45); +x_46 = lean_ctor_get(x_1, 0); +lean_inc(x_46); +lean_dec(x_1); +x_47 = lean_ctor_get(x_46, 1); +lean_inc(x_47); +lean_dec(x_46); +x_48 = lean_box(0); +x_49 = lean_apply_2(x_47, lean_box(0), x_48); +x_50 = lean_apply_4(x_45, lean_box(0), lean_box(0), x_49, x_8); +return x_50; +} +else +{ +lean_object* x_51; lean_object* x_52; uint8_t x_53; +x_51 = lean_unsigned_to_nat(1u); +x_52 = l_Lean_Syntax_getArg(x_42, x_51); +x_53 = l_Lean_Syntax_isNone(x_52); +if (x_53 == 0) +{ +lean_object* x_54; uint8_t x_55; +x_54 = lean_unsigned_to_nat(2u); +lean_inc(x_52); +x_55 = l_Lean_Syntax_matchesNull(x_52, x_54); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_52); +lean_dec(x_42); +x_56 = lean_ctor_get(x_1, 1); +lean_inc(x_56); +x_57 = lean_ctor_get(x_1, 0); +lean_inc(x_57); +lean_dec(x_1); +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +lean_dec(x_57); +x_59 = lean_box(0); +x_60 = lean_apply_2(x_58, lean_box(0), x_59); +x_61 = lean_apply_4(x_56, lean_box(0), lean_box(0), x_60, x_8); +return x_61; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_62 = l_Lean_Syntax_getArg(x_52, x_51); +lean_dec(x_52); +x_63 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_63, 0, x_62); +x_64 = lean_box(0); +x_65 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_42, x_8, x_64, x_63); +return x_65; +} +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_52); +x_66 = lean_box(0); +x_67 = lean_box(0); +x_68 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_42, x_8, x_67, x_66); +return x_68; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_4 = lean_ctor_get(x_1, 1); +lean_inc(x_4); +x_5 = lean_ctor_get(x_1, 0); +lean_inc(x_5); +lean_dec(x_1); +x_6 = lean_ctor_get(x_5, 1); +lean_inc(x_6); +lean_dec(x_5); +x_7 = lean_box(0); +x_8 = lean_apply_2(x_6, lean_box(0), x_7); +x_9 = lean_apply_4(x_4, lean_box(0), lean_box(0), x_8, x_2); +return x_9; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unexpected `termination_by` syntax", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_6 = lean_ctor_get(x_1, 1); +lean_inc(x_6); +x_7 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_8 = l_Lean_throwErrorAt___rarg(x_1, x_2, x_3, x_7); +x_9 = lean_apply_4(x_6, lean_box(0), lean_box(0), x_8, x_4); +return x_9; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_6 = lean_ctor_get(x_1, 1); +lean_inc(x_6); +x_7 = lean_ctor_get(x_1, 0); +lean_inc(x_7); +lean_dec(x_1); +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +lean_dec(x_7); +x_9 = 0; +x_10 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_11 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_11, 0, x_3); +lean_ctor_set(x_11, 1, x_10); +lean_ctor_set(x_11, 2, x_5); +lean_ctor_set_uint8(x_11, sizeof(void*)*3, x_9); +lean_ctor_set_uint8(x_11, sizeof(void*)*3 + 1, x_9); +x_12 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_12, 0, x_11); +x_13 = lean_apply_2(x_8, lean_box(0), x_12); +x_14 = lean_apply_4(x_6, lean_box(0), lean_box(0), x_13, x_2); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_4); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_16 = lean_ctor_get(x_4, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_1, 1); +lean_inc(x_17); +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); +lean_dec(x_1); +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +x_20 = 1; +x_21 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_22 = 0; +x_23 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_23, 0, x_3); +lean_ctor_set(x_23, 1, x_21); +lean_ctor_set(x_23, 2, x_5); +lean_ctor_set_uint8(x_23, sizeof(void*)*3, x_20); +lean_ctor_set_uint8(x_23, sizeof(void*)*3 + 1, x_22); +lean_ctor_set(x_4, 0, x_23); +x_24 = lean_apply_2(x_19, lean_box(0), x_4); +x_25 = lean_apply_4(x_17, lean_box(0), lean_box(0), x_24, x_2); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_4); +x_26 = lean_ctor_get(x_1, 1); +lean_inc(x_26); +x_27 = lean_ctor_get(x_1, 0); +lean_inc(x_27); +lean_dec(x_1); +x_28 = lean_ctor_get(x_27, 1); +lean_inc(x_28); +lean_dec(x_27); +x_29 = 1; +x_30 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_31 = 0; +x_32 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_32, 0, x_3); +lean_ctor_set(x_32, 1, x_30); +lean_ctor_set(x_32, 2, x_5); +lean_ctor_set_uint8(x_32, sizeof(void*)*3, x_29); +lean_ctor_set_uint8(x_32, sizeof(void*)*3 + 1, x_31); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_32); +x_34 = lean_apply_2(x_28, lean_box(0), x_33); +x_35 = lean_apply_4(x_26, lean_box(0), lean_box(0), x_34, x_2); +return x_35; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +if (lean_obj_tag(x_4) == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_7 = lean_ctor_get(x_1, 1); +lean_inc(x_7); +x_8 = lean_ctor_get(x_1, 0); +lean_inc(x_8); +lean_dec(x_1); +x_9 = lean_ctor_get(x_8, 1); +lean_inc(x_9); +lean_dec(x_8); +x_10 = 0; +x_11 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_11, 0, x_3); +lean_ctor_set(x_11, 1, x_5); +lean_ctor_set(x_11, 2, x_6); +lean_ctor_set_uint8(x_11, sizeof(void*)*3, x_10); +lean_ctor_set_uint8(x_11, sizeof(void*)*3 + 1, x_10); +x_12 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_12, 0, x_11); +x_13 = lean_apply_2(x_9, lean_box(0), x_12); +x_14 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_13, x_2); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_4); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_16 = lean_ctor_get(x_4, 0); +lean_dec(x_16); +x_17 = lean_ctor_get(x_1, 1); +lean_inc(x_17); +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); +lean_dec(x_1); +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +x_20 = 1; +x_21 = 0; +x_22 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_22, 0, x_3); +lean_ctor_set(x_22, 1, x_5); +lean_ctor_set(x_22, 2, x_6); +lean_ctor_set_uint8(x_22, sizeof(void*)*3, x_20); +lean_ctor_set_uint8(x_22, sizeof(void*)*3 + 1, x_21); +lean_ctor_set(x_4, 0, x_22); +x_23 = lean_apply_2(x_19, lean_box(0), x_4); +x_24 = lean_apply_4(x_17, lean_box(0), lean_box(0), x_23, x_2); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_dec(x_4); +x_25 = lean_ctor_get(x_1, 1); +lean_inc(x_25); +x_26 = lean_ctor_get(x_1, 0); +lean_inc(x_26); +lean_dec(x_1); +x_27 = lean_ctor_get(x_26, 1); +lean_inc(x_27); +lean_dec(x_26); +x_28 = 1; +x_29 = 0; +x_30 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_30, 0, x_3); +lean_ctor_set(x_30, 1, x_5); +lean_ctor_set(x_30, 2, x_6); +lean_ctor_set_uint8(x_30, sizeof(void*)*3, x_28); +lean_ctor_set_uint8(x_30, sizeof(void*)*3 + 1, x_29); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_30); +x_32 = lean_apply_2(x_27, lean_box(0), x_31); +x_33 = lean_apply_4(x_25, lean_box(0), lean_box(0), x_32, x_2); +return x_33; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("no extra parameters bounds, please omit the `=>`", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_7 = lean_ctor_get(x_1, 1); +lean_inc(x_7); +x_8 = l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2; +x_9 = l_Lean_throwErrorAt___rarg(x_1, x_2, x_3, x_8); +x_10 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_9, x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_8 = lean_unsigned_to_nat(2u); +x_9 = l_Lean_Syntax_getArg(x_1, x_8); +lean_inc(x_9); +x_10 = l_Lean_Syntax_matchesNull(x_9, x_8); +if (x_10 == 0) +{ +lean_object* x_11; uint8_t x_12; +lean_dec(x_5); +lean_dec(x_4); +x_11 = lean_unsigned_to_nat(0u); +x_12 = l_Lean_Syntax_matchesNull(x_9, x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_7); +lean_dec(x_3); +x_13 = lean_box(0); +x_14 = lean_apply_1(x_2, x_13); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_2); +x_15 = lean_unsigned_to_nat(3u); +x_16 = l_Lean_Syntax_getArg(x_1, x_15); +x_17 = lean_apply_2(x_3, x_7, x_16); +return x_17; +} +} +else +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +lean_dec(x_3); +lean_dec(x_2); +x_18 = lean_unsigned_to_nat(0u); +x_19 = l_Lean_Syntax_getArg(x_9, x_18); +lean_dec(x_9); +lean_inc(x_19); +x_20 = l_Lean_Syntax_matchesNull(x_19, x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_5); +x_21 = lean_unsigned_to_nat(3u); +x_22 = l_Lean_Syntax_getArg(x_1, x_21); +x_23 = l_Lean_Syntax_getArgs(x_19); +lean_dec(x_19); +x_24 = lean_apply_3(x_4, x_7, x_23, x_22); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_dec(x_19); +lean_dec(x_4); +x_25 = lean_unsigned_to_nat(3u); +x_26 = l_Lean_Syntax_getArg(x_1, x_25); +x_27 = lean_apply_2(x_5, x_7, x_26); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__13(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_11 = l_Lean_Syntax_matchesNull(x_1, x_10); +if (x_11 == 0) +{ +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +if (x_2 == 0) +{ +lean_object* x_12; lean_object* x_13; +lean_dec(x_9); +lean_dec(x_5); +lean_dec(x_4); +x_12 = lean_box(0); +x_13 = lean_apply_1(x_3, x_12); +return x_13; +} +else +{ +lean_object* x_14; +lean_dec(x_3); +x_14 = lean_apply_2(x_4, x_9, x_5); +return x_14; +} +} +else +{ +lean_object* x_15; lean_object* x_16; uint8_t x_17; +lean_dec(x_4); +lean_dec(x_3); +x_15 = lean_unsigned_to_nat(0u); +x_16 = l_Lean_Syntax_getArg(x_1, x_15); +lean_dec(x_1); +lean_inc(x_16); +x_17 = l_Lean_Syntax_matchesNull(x_16, x_15); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_7); +x_18 = l_Lean_Syntax_getArgs(x_16); +lean_dec(x_16); +x_19 = lean_apply_3(x_6, x_9, x_18, x_5); +return x_19; +} +else +{ +lean_object* x_20; +lean_dec(x_16); +lean_dec(x_6); +x_20 = lean_apply_2(x_7, x_9, x_5); +return x_20; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_unsigned_to_nat(2u); +lean_inc(x_1); +x_9 = l_Lean_Syntax_matchesNull(x_1, x_8); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_10 = lean_apply_2(x_2, x_7, x_3); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +lean_dec(x_2); +x_11 = lean_unsigned_to_nat(0u); +x_12 = l_Lean_Syntax_getArg(x_1, x_11); +lean_dec(x_1); +lean_inc(x_12); +x_13 = l_Lean_Syntax_matchesNull(x_12, x_11); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_5); +x_14 = l_Lean_Syntax_getArgs(x_12); +lean_dec(x_12); +x_15 = lean_apply_3(x_4, x_7, x_14, x_3); +return x_15; +} +else +{ +lean_object* x_16; +lean_dec(x_12); +lean_dec(x_4); +x_16 = lean_apply_2(x_5, x_7, x_3); +return x_16; +} +} +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("terminationBy", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__1; +x_2 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__2; +x_3 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__3; +x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3() { _start: { lean_object* x_1; @@ -1504,30 +2069,50 @@ x_1 = lean_mk_string_unchecked("terminationBy\?", 14, 14); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__1; x_2 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__2; x_3 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__3; -x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3; +x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpointursion", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; +lean_inc(x_5); lean_inc(x_4); lean_inc(x_1); -x_7 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__4), 6, 5); +x_7 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__6), 7, 6); lean_closure_set(x_7, 0, x_1); lean_closure_set(x_7, 1, x_6); lean_closure_set(x_7, 2, x_2); lean_closure_set(x_7, 3, x_3); lean_closure_set(x_7, 4, x_4); +lean_closure_set(x_7, 5, x_5); if (lean_obj_tag(x_5) == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; @@ -1553,192 +2138,699 @@ if (x_14 == 0) { lean_object* x_15; lean_object* x_16; uint8_t x_17; x_15 = lean_ctor_get(x_5, 0); -x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; +x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2; lean_inc(x_15); x_17 = l_Lean_Syntax_isOfKind(x_15, x_16); if (x_17 == 0) { lean_object* x_18; uint8_t x_19; lean_free_object(x_5); -x_18 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4; +x_18 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4; lean_inc(x_15); x_19 = l_Lean_Syntax_isOfKind(x_15, x_18); if (x_19 == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = lean_ctor_get(x_1, 1); -lean_inc(x_20); -x_21 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -x_22 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_15, x_21); -x_23 = lean_apply_4(x_20, lean_box(0), lean_box(0), x_22, x_7); -return x_23; +lean_object* x_20; uint8_t x_21; +x_20 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; +lean_inc(x_15); +x_21 = l_Lean_Syntax_isOfKind(x_15, x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_1, 1); +lean_inc(x_22); +x_23 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_24 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_15, x_23); +x_25 = lean_apply_4(x_22, lean_box(0), lean_box(0), x_24, x_7); +return x_25; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_unsigned_to_nat(1u); +x_27 = l_Lean_Syntax_getArg(x_15, x_26); +x_28 = l_Lean_Syntax_isNone(x_27); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; +x_29 = lean_unsigned_to_nat(2u); +x_30 = l_Lean_Syntax_matchesNull(x_27, x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_31 = lean_ctor_get(x_1, 1); +lean_inc(x_31); +x_32 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_33 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_15, x_32); +x_34 = lean_apply_4(x_31, lean_box(0), lean_box(0), x_33, x_7); +return x_34; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_dec(x_15); lean_dec(x_4); -x_24 = lean_ctor_get(x_1, 1); -lean_inc(x_24); -x_25 = lean_ctor_get(x_1, 0); -lean_inc(x_25); +x_35 = lean_box(0); +x_36 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_7, x_35); +return x_36; +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_27); +lean_dec(x_15); +lean_dec(x_4); +x_37 = lean_box(0); +x_38 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_7, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_15); +lean_dec(x_4); +x_39 = lean_ctor_get(x_1, 1); +lean_inc(x_39); +x_40 = lean_ctor_get(x_1, 0); +lean_inc(x_40); lean_dec(x_1); -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = lean_box(0); -x_28 = lean_apply_2(x_26, lean_box(0), x_27); -x_29 = lean_apply_4(x_24, lean_box(0), lean_box(0), x_28, x_7); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_30 = lean_unsigned_to_nat(1u); -x_31 = l_Lean_Syntax_getArg(x_15, x_30); -x_32 = l_Lean_Syntax_isNone(x_31); -if (x_32 == 0) -{ -uint8_t x_33; -lean_inc(x_31); -x_33 = l_Lean_Syntax_matchesNull(x_31, x_30); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -lean_dec(x_31); -lean_free_object(x_5); -x_34 = lean_ctor_get(x_1, 1); -lean_inc(x_34); -x_35 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -x_36 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_15, x_35); -x_37 = lean_apply_4(x_34, lean_box(0), lean_box(0), x_36, x_7); -return x_37; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_38 = lean_unsigned_to_nat(0u); -x_39 = l_Lean_Syntax_getArg(x_31, x_38); -lean_dec(x_31); -lean_ctor_set(x_5, 0, x_39); -x_40 = lean_box(0); -x_41 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_15, x_1, x_4, x_7, x_40, x_5); -return x_41; -} -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_31); -lean_free_object(x_5); +x_41 = lean_ctor_get(x_40, 1); +lean_inc(x_41); +lean_dec(x_40); x_42 = lean_box(0); -x_43 = lean_box(0); -x_44 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_15, x_1, x_4, x_7, x_43, x_42); +x_43 = lean_apply_2(x_41, lean_box(0), x_42); +x_44 = lean_apply_4(x_39, lean_box(0), lean_box(0), x_43, x_7); return x_44; } } +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_45 = lean_unsigned_to_nat(1u); +x_46 = l_Lean_Syntax_getArg(x_15, x_45); +lean_inc(x_7); +lean_inc(x_15); +lean_inc(x_4); +lean_inc(x_1); +x_47 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__8___boxed), 5, 4); +lean_closure_set(x_47, 0, x_1); +lean_closure_set(x_47, 1, x_4); +lean_closure_set(x_47, 2, x_15); +lean_closure_set(x_47, 3, x_7); +lean_inc(x_15); +lean_inc(x_7); +lean_inc(x_1); +x_48 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__9), 5, 3); +lean_closure_set(x_48, 0, x_1); +lean_closure_set(x_48, 1, x_7); +lean_closure_set(x_48, 2, x_15); +lean_inc(x_15); +lean_inc(x_7); +lean_inc(x_1); +x_49 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__10), 6, 3); +lean_closure_set(x_49, 0, x_1); +lean_closure_set(x_49, 1, x_7); +lean_closure_set(x_49, 2, x_15); +lean_inc(x_7); +lean_inc(x_15); +lean_inc(x_4); +lean_inc(x_1); +x_50 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__11___boxed), 6, 4); +lean_closure_set(x_50, 0, x_1); +lean_closure_set(x_50, 1, x_4); +lean_closure_set(x_50, 2, x_15); +lean_closure_set(x_50, 3, x_7); +x_51 = lean_unsigned_to_nat(0u); +lean_inc(x_46); +x_52 = l_Lean_Syntax_matchesNull(x_46, x_51); +if (x_52 == 0) +{ +uint8_t x_53; +x_53 = l_Lean_Syntax_isNone(x_46); +if (x_53 == 0) +{ +uint8_t x_54; +lean_inc(x_46); +x_54 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +lean_free_object(x_5); +x_55 = lean_box(0); +x_56 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_15, x_7, x_55); +return x_56; } else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_45 = lean_ctor_get(x_5, 0); -lean_inc(x_45); -lean_dec(x_5); -x_46 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; -lean_inc(x_45); -x_47 = l_Lean_Syntax_isOfKind(x_45, x_46); -if (x_47 == 0) -{ -lean_object* x_48; uint8_t x_49; -x_48 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4; -lean_inc(x_45); -x_49 = l_Lean_Syntax_isOfKind(x_45, x_48); -if (x_49 == 0) -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_50 = lean_ctor_get(x_1, 1); -lean_inc(x_50); -x_51 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -x_52 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_45, x_51); -x_53 = lean_apply_4(x_50, lean_box(0), lean_box(0), x_52, x_7); -return x_53; -} -else -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_45); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_7); lean_dec(x_4); -x_54 = lean_ctor_get(x_1, 1); -lean_inc(x_54); -x_55 = lean_ctor_get(x_1, 0); -lean_inc(x_55); lean_dec(x_1); -x_56 = lean_ctor_get(x_55, 1); -lean_inc(x_56); -lean_dec(x_55); -x_57 = lean_box(0); -x_58 = lean_apply_2(x_56, lean_box(0), x_57); -x_59 = lean_apply_4(x_54, lean_box(0), lean_box(0), x_58, x_7); +x_57 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_5, 0, x_57); +x_58 = lean_box(0); +x_59 = l_Lean_Elab_elabTerminationHints___rarg___lambda__12(x_15, x_47, x_48, x_49, x_50, x_58, x_5); +lean_dec(x_15); return x_59; } } else { -lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_60 = lean_unsigned_to_nat(1u); -x_61 = l_Lean_Syntax_getArg(x_45, x_60); -x_62 = l_Lean_Syntax_isNone(x_61); -if (x_62 == 0) +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_46); +lean_free_object(x_5); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_60 = lean_box(0); +x_61 = lean_box(0); +x_62 = l_Lean_Elab_elabTerminationHints___rarg___lambda__12(x_15, x_47, x_48, x_49, x_50, x_61, x_60); +lean_dec(x_15); +return x_62; +} +} +else { -uint8_t x_63; -lean_inc(x_61); -x_63 = l_Lean_Syntax_matchesNull(x_61, x_60); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_dec(x_61); -x_64 = lean_ctor_get(x_1, 1); +lean_object* x_63; lean_object* x_64; uint8_t x_65; +x_63 = lean_unsigned_to_nat(2u); +x_64 = l_Lean_Syntax_getArg(x_15, x_63); lean_inc(x_64); -x_65 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2; -x_66 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_45, x_65); -x_67 = lean_apply_4(x_64, lean_box(0), lean_box(0), x_66, x_7); -return x_67; +x_65 = l_Lean_Syntax_matchesNull(x_64, x_51); +if (x_65 == 0) +{ +lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_66 = lean_unsigned_to_nat(3u); +x_67 = l_Lean_Syntax_getArg(x_15, x_66); +x_68 = l_Lean_Syntax_isNone(x_46); +if (x_68 == 0) +{ +uint8_t x_69; +lean_inc(x_46); +x_69 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_69 == 0) +{ +lean_object* x_70; lean_object* x_71; +lean_dec(x_67); +lean_dec(x_64); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_46); +lean_free_object(x_5); +x_70 = lean_box(0); +x_71 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_15, x_7, x_70); +return x_71; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_68 = lean_unsigned_to_nat(0u); -x_69 = l_Lean_Syntax_getArg(x_61, x_68); -lean_dec(x_61); -x_70 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_70, 0, x_69); -x_71 = lean_box(0); -x_72 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_45, x_1, x_4, x_7, x_71, x_70); -return x_72; -} -} -else -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; -lean_dec(x_61); +lean_object* x_72; lean_object* x_73; lean_object* x_74; +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_72 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_5, 0, x_72); x_73 = lean_box(0); -x_74 = lean_box(0); -x_75 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_45, x_1, x_4, x_7, x_74, x_73); -return x_75; +x_74 = l_Lean_Elab_elabTerminationHints___rarg___lambda__13(x_64, x_65, x_47, x_48, x_67, x_49, x_50, x_73, x_5); +return x_74; +} +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_46); +lean_free_object(x_5); +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_75 = lean_box(0); +x_76 = lean_box(0); +x_77 = l_Lean_Elab_elabTerminationHints___rarg___lambda__13(x_64, x_65, x_47, x_48, x_67, x_49, x_50, x_76, x_75); +return x_77; +} +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; uint8_t x_81; +lean_dec(x_47); +x_78 = lean_unsigned_to_nat(3u); +x_79 = l_Lean_Syntax_getArg(x_15, x_78); +x_80 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6; +x_81 = l_Lean_Syntax_matchesIdent(x_79, x_80); +if (x_81 == 0) +{ +uint8_t x_82; +x_82 = l_Lean_Syntax_isNone(x_46); +if (x_82 == 0) +{ +uint8_t x_83; +lean_inc(x_46); +x_83 = l_Lean_Syntax_matchesNull(x_46, x_45); +if (x_83 == 0) +{ +lean_object* x_84; lean_object* x_85; +lean_dec(x_79); +lean_dec(x_64); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +lean_free_object(x_5); +x_84 = lean_box(0); +x_85 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_15, x_7, x_84); +return x_85; +} +else +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_86 = l_Lean_Syntax_getArg(x_46, x_51); +lean_dec(x_46); +lean_ctor_set(x_5, 0, x_86); +x_87 = lean_box(0); +x_88 = l_Lean_Elab_elabTerminationHints___rarg___lambda__14(x_64, x_48, x_79, x_49, x_50, x_87, x_5); +return x_88; +} +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_46); +lean_free_object(x_5); +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_89 = lean_box(0); +x_90 = lean_box(0); +x_91 = l_Lean_Elab_elabTerminationHints___rarg___lambda__14(x_64, x_48, x_79, x_49, x_50, x_90, x_89); +return x_91; +} +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; uint8_t x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_dec(x_79); +lean_dec(x_64); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_46); +lean_dec(x_4); +x_92 = lean_ctor_get(x_1, 1); +lean_inc(x_92); +x_93 = lean_ctor_get(x_1, 0); +lean_inc(x_93); +lean_dec(x_1); +x_94 = lean_ctor_get(x_93, 1); +lean_inc(x_94); +lean_dec(x_93); +x_95 = 0; +x_96 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_97 = lean_box(0); +x_98 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_98, 0, x_15); +lean_ctor_set(x_98, 1, x_96); +lean_ctor_set(x_98, 2, x_97); +lean_ctor_set_uint8(x_98, sizeof(void*)*3, x_95); +lean_ctor_set_uint8(x_98, sizeof(void*)*3 + 1, x_95); +lean_ctor_set(x_5, 0, x_98); +x_99 = lean_apply_2(x_94, lean_box(0), x_5); +x_100 = lean_apply_4(x_92, lean_box(0), lean_box(0), x_99, x_7); +return x_100; +} +} +} +} +} +else +{ +lean_object* x_101; lean_object* x_102; uint8_t x_103; +x_101 = lean_ctor_get(x_5, 0); +lean_inc(x_101); +lean_dec(x_5); +x_102 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2; +lean_inc(x_101); +x_103 = l_Lean_Syntax_isOfKind(x_101, x_102); +if (x_103 == 0) +{ +lean_object* x_104; uint8_t x_105; +x_104 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4; +lean_inc(x_101); +x_105 = l_Lean_Syntax_isOfKind(x_101, x_104); +if (x_105 == 0) +{ +lean_object* x_106; uint8_t x_107; +x_106 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2; +lean_inc(x_101); +x_107 = l_Lean_Syntax_isOfKind(x_101, x_106); +if (x_107 == 0) +{ +lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_108 = lean_ctor_get(x_1, 1); +lean_inc(x_108); +x_109 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_110 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_101, x_109); +x_111 = lean_apply_4(x_108, lean_box(0), lean_box(0), x_110, x_7); +return x_111; +} +else +{ +lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_112 = lean_unsigned_to_nat(1u); +x_113 = l_Lean_Syntax_getArg(x_101, x_112); +x_114 = l_Lean_Syntax_isNone(x_113); +if (x_114 == 0) +{ +lean_object* x_115; uint8_t x_116; +x_115 = lean_unsigned_to_nat(2u); +x_116 = l_Lean_Syntax_matchesNull(x_113, x_115); +if (x_116 == 0) +{ +lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_117 = lean_ctor_get(x_1, 1); +lean_inc(x_117); +x_118 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_119 = l_Lean_throwErrorAt___rarg(x_1, x_4, x_101, x_118); +x_120 = lean_apply_4(x_117, lean_box(0), lean_box(0), x_119, x_7); +return x_120; +} +else +{ +lean_object* x_121; lean_object* x_122; +lean_dec(x_101); +lean_dec(x_4); +x_121 = lean_box(0); +x_122 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_7, x_121); +return x_122; +} +} +else +{ +lean_object* x_123; lean_object* x_124; +lean_dec(x_113); +lean_dec(x_101); +lean_dec(x_4); +x_123 = lean_box(0); +x_124 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_7, x_123); +return x_124; +} +} +} +else +{ +lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; +lean_dec(x_101); +lean_dec(x_4); +x_125 = lean_ctor_get(x_1, 1); +lean_inc(x_125); +x_126 = lean_ctor_get(x_1, 0); +lean_inc(x_126); +lean_dec(x_1); +x_127 = lean_ctor_get(x_126, 1); +lean_inc(x_127); +lean_dec(x_126); +x_128 = lean_box(0); +x_129 = lean_apply_2(x_127, lean_box(0), x_128); +x_130 = lean_apply_4(x_125, lean_box(0), lean_box(0), x_129, x_7); +return x_130; +} +} +else +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; uint8_t x_138; +x_131 = lean_unsigned_to_nat(1u); +x_132 = l_Lean_Syntax_getArg(x_101, x_131); +lean_inc(x_7); +lean_inc(x_101); +lean_inc(x_4); +lean_inc(x_1); +x_133 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__8___boxed), 5, 4); +lean_closure_set(x_133, 0, x_1); +lean_closure_set(x_133, 1, x_4); +lean_closure_set(x_133, 2, x_101); +lean_closure_set(x_133, 3, x_7); +lean_inc(x_101); +lean_inc(x_7); +lean_inc(x_1); +x_134 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__9), 5, 3); +lean_closure_set(x_134, 0, x_1); +lean_closure_set(x_134, 1, x_7); +lean_closure_set(x_134, 2, x_101); +lean_inc(x_101); +lean_inc(x_7); +lean_inc(x_1); +x_135 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__10), 6, 3); +lean_closure_set(x_135, 0, x_1); +lean_closure_set(x_135, 1, x_7); +lean_closure_set(x_135, 2, x_101); +lean_inc(x_7); +lean_inc(x_101); +lean_inc(x_4); +lean_inc(x_1); +x_136 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__11___boxed), 6, 4); +lean_closure_set(x_136, 0, x_1); +lean_closure_set(x_136, 1, x_4); +lean_closure_set(x_136, 2, x_101); +lean_closure_set(x_136, 3, x_7); +x_137 = lean_unsigned_to_nat(0u); +lean_inc(x_132); +x_138 = l_Lean_Syntax_matchesNull(x_132, x_137); +if (x_138 == 0) +{ +uint8_t x_139; +x_139 = l_Lean_Syntax_isNone(x_132); +if (x_139 == 0) +{ +uint8_t x_140; +lean_inc(x_132); +x_140 = l_Lean_Syntax_matchesNull(x_132, x_131); +if (x_140 == 0) +{ +lean_object* x_141; lean_object* x_142; +lean_dec(x_136); +lean_dec(x_135); +lean_dec(x_134); +lean_dec(x_133); +lean_dec(x_132); +x_141 = lean_box(0); +x_142 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_101, x_7, x_141); +return x_142; +} +else +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_143 = l_Lean_Syntax_getArg(x_132, x_137); +lean_dec(x_132); +x_144 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_144, 0, x_143); +x_145 = lean_box(0); +x_146 = l_Lean_Elab_elabTerminationHints___rarg___lambda__12(x_101, x_133, x_134, x_135, x_136, x_145, x_144); +lean_dec(x_101); +return x_146; +} +} +else +{ +lean_object* x_147; lean_object* x_148; lean_object* x_149; +lean_dec(x_132); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_147 = lean_box(0); +x_148 = lean_box(0); +x_149 = l_Lean_Elab_elabTerminationHints___rarg___lambda__12(x_101, x_133, x_134, x_135, x_136, x_148, x_147); +lean_dec(x_101); +return x_149; +} +} +else +{ +lean_object* x_150; lean_object* x_151; uint8_t x_152; +x_150 = lean_unsigned_to_nat(2u); +x_151 = l_Lean_Syntax_getArg(x_101, x_150); +lean_inc(x_151); +x_152 = l_Lean_Syntax_matchesNull(x_151, x_137); +if (x_152 == 0) +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; +x_153 = lean_unsigned_to_nat(3u); +x_154 = l_Lean_Syntax_getArg(x_101, x_153); +x_155 = l_Lean_Syntax_isNone(x_132); +if (x_155 == 0) +{ +uint8_t x_156; +lean_inc(x_132); +x_156 = l_Lean_Syntax_matchesNull(x_132, x_131); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; +lean_dec(x_154); +lean_dec(x_151); +lean_dec(x_136); +lean_dec(x_135); +lean_dec(x_134); +lean_dec(x_133); +lean_dec(x_132); +x_157 = lean_box(0); +x_158 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_101, x_7, x_157); +return x_158; +} +else +{ +lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; +lean_dec(x_101); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_159 = l_Lean_Syntax_getArg(x_132, x_137); +lean_dec(x_132); +x_160 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_160, 0, x_159); +x_161 = lean_box(0); +x_162 = l_Lean_Elab_elabTerminationHints___rarg___lambda__13(x_151, x_152, x_133, x_134, x_154, x_135, x_136, x_161, x_160); +return x_162; +} +} +else +{ +lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_132); +lean_dec(x_101); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_163 = lean_box(0); +x_164 = lean_box(0); +x_165 = l_Lean_Elab_elabTerminationHints___rarg___lambda__13(x_151, x_152, x_133, x_134, x_154, x_135, x_136, x_164, x_163); +return x_165; +} +} +else +{ +lean_object* x_166; lean_object* x_167; lean_object* x_168; uint8_t x_169; +lean_dec(x_133); +x_166 = lean_unsigned_to_nat(3u); +x_167 = l_Lean_Syntax_getArg(x_101, x_166); +x_168 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6; +x_169 = l_Lean_Syntax_matchesIdent(x_167, x_168); +if (x_169 == 0) +{ +uint8_t x_170; +x_170 = l_Lean_Syntax_isNone(x_132); +if (x_170 == 0) +{ +uint8_t x_171; +lean_inc(x_132); +x_171 = l_Lean_Syntax_matchesNull(x_132, x_131); +if (x_171 == 0) +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_167); +lean_dec(x_151); +lean_dec(x_136); +lean_dec(x_135); +lean_dec(x_134); +lean_dec(x_132); +x_172 = lean_box(0); +x_173 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_4, x_101, x_7, x_172); +return x_173; +} +else +{ +lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; +lean_dec(x_101); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_174 = l_Lean_Syntax_getArg(x_132, x_137); +lean_dec(x_132); +x_175 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_175, 0, x_174); +x_176 = lean_box(0); +x_177 = l_Lean_Elab_elabTerminationHints___rarg___lambda__14(x_151, x_134, x_167, x_135, x_136, x_176, x_175); +return x_177; +} +} +else +{ +lean_object* x_178; lean_object* x_179; lean_object* x_180; +lean_dec(x_132); +lean_dec(x_101); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_178 = lean_box(0); +x_179 = lean_box(0); +x_180 = l_Lean_Elab_elabTerminationHints___rarg___lambda__14(x_151, x_134, x_167, x_135, x_136, x_179, x_178); +return x_180; +} +} +else +{ +lean_object* x_181; lean_object* x_182; lean_object* x_183; uint8_t x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +lean_dec(x_167); +lean_dec(x_151); +lean_dec(x_136); +lean_dec(x_135); +lean_dec(x_134); +lean_dec(x_132); +lean_dec(x_4); +x_181 = lean_ctor_get(x_1, 1); +lean_inc(x_181); +x_182 = lean_ctor_get(x_1, 0); +lean_inc(x_182); +lean_dec(x_1); +x_183 = lean_ctor_get(x_182, 1); +lean_inc(x_183); +lean_dec(x_182); +x_184 = 0; +x_185 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_186 = lean_box(0); +x_187 = lean_alloc_ctor(0, 3, 2); +lean_ctor_set(x_187, 0, x_101); +lean_ctor_set(x_187, 1, x_185); +lean_ctor_set(x_187, 2, x_186); +lean_ctor_set_uint8(x_187, sizeof(void*)*3, x_184); +lean_ctor_set_uint8(x_187, sizeof(void*)*3 + 1, x_184); +x_188 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_188, 0, x_187); +x_189 = lean_apply_2(x_183, lean_box(0), x_188); +x_190 = lean_apply_4(x_181, lean_box(0), lean_box(0), x_189, x_7); +return x_190; } } } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_inc(x_4); lean_inc(x_1); -x_7 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__6), 6, 5); +x_7 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__15), 6, 5); lean_closure_set(x_7, 0, x_1); lean_closure_set(x_7, 1, x_2); lean_closure_set(x_7, 2, x_6); @@ -1768,7 +2860,7 @@ if (x_14 == 0) { lean_object* x_15; lean_object* x_16; uint8_t x_17; x_15 = lean_ctor_get(x_4, 0); -x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4; +x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4; lean_inc(x_15); x_17 = l_Lean_Syntax_isOfKind(x_15, x_16); if (x_17 == 0) @@ -1811,7 +2903,7 @@ lean_object* x_29; lean_object* x_30; uint8_t x_31; x_29 = lean_ctor_get(x_4, 0); lean_inc(x_29); lean_dec(x_4); -x_30 = l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4; +x_30 = l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4; lean_inc(x_29); x_31 = l_Lean_Syntax_isOfKind(x_29, x_30); if (x_31 == 0) @@ -1852,7 +2944,7 @@ return x_43; } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1() { _start: { lean_object* x_1; @@ -1860,7 +2952,7 @@ x_1 = lean_mk_string_unchecked("Unexpected Termination.suffix syntax: ", 38, 38) return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2() { _start: { lean_object* x_1; @@ -1868,7 +2960,7 @@ x_1 = lean_mk_string_unchecked(" of kind ", 9, 9); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3() { _start: { lean_object* x_1; @@ -1876,7 +2968,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambd return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_object* x_7; uint8_t x_8; @@ -1900,15 +2992,15 @@ lean_inc(x_1); x_13 = l_Lean_Syntax_formatStxAux(x_10, x_11, x_12, x_1); x_14 = l_Std_Format_defWidth; x_15 = lean_format_pretty(x_13, x_14, x_12, x_12); -x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; +x_16 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1; x_17 = lean_string_append(x_16, x_15); lean_dec(x_15); -x_18 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_18 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2; x_19 = lean_string_append(x_17, x_18); lean_inc(x_1); x_20 = l_Lean_Syntax_getKind(x_1); x_21 = 1; -x_22 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3; +x_22 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3; x_23 = l_Lean_Name_toString(x_20, x_21, x_22); x_24 = lean_string_append(x_19, x_23); lean_dec(x_23); @@ -1940,15 +3032,15 @@ lean_inc(x_1); x_36 = l_Lean_Syntax_formatStxAux(x_34, x_35, x_30, x_1); x_37 = l_Std_Format_defWidth; x_38 = lean_format_pretty(x_36, x_37, x_30, x_30); -x_39 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; +x_39 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1; x_40 = lean_string_append(x_39, x_38); lean_dec(x_38); -x_41 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_41 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2; x_42 = lean_string_append(x_40, x_41); lean_inc(x_1); x_43 = l_Lean_Syntax_getKind(x_1); x_44 = 1; -x_45 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3; +x_45 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3; x_46 = l_Lean_Name_toString(x_43, x_44, x_45); x_47 = lean_string_append(x_42, x_46); lean_dec(x_46); @@ -1966,7 +3058,7 @@ lean_object* x_53; lean_object* x_54; lean_object* x_55; x_53 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_53, 0, x_31); x_54 = lean_box(0); -x_55 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_2, x_1, x_3, x_5, x_54, x_53); +x_55 = l_Lean_Elab_elabTerminationHints___rarg___lambda__16(x_2, x_1, x_3, x_5, x_54, x_53); return x_55; } } @@ -1977,12 +3069,12 @@ lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_dec(x_7); x_56 = lean_box(0); x_57 = lean_box(0); -x_58 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_2, x_1, x_3, x_5, x_57, x_56); +x_58 = l_Lean_Elab_elabTerminationHints___rarg___lambda__16(x_2, x_1, x_3, x_5, x_57, x_56); return x_58; } } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1() { _start: { lean_object* x_1; @@ -1990,23 +3082,23 @@ x_1 = lean_mk_string_unchecked("suffix", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2() { +static lean_object* _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__1; x_2 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__2; x_3 = l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__3; -x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1; +x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; uint8_t x_6; -x_5 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2; +x_5 = l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2; lean_inc(x_1); x_6 = l_Lean_Syntax_isOfKind(x_1, x_5); if (x_6 == 0) @@ -2019,15 +3111,15 @@ lean_inc(x_1); x_10 = l_Lean_Syntax_formatStxAux(x_7, x_8, x_9, x_1); x_11 = l_Std_Format_defWidth; x_12 = lean_format_pretty(x_10, x_11, x_9, x_9); -x_13 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; +x_13 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1; x_14 = lean_string_append(x_13, x_12); lean_dec(x_12); -x_15 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_15 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2; x_16 = lean_string_append(x_14, x_15); lean_inc(x_1); x_17 = l_Lean_Syntax_getKind(x_1); x_18 = 1; -x_19 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3; +x_19 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3; x_20 = l_Lean_Name_toString(x_17, x_18, x_19); x_21 = lean_string_append(x_16, x_20); lean_dec(x_20); @@ -2061,15 +3153,15 @@ lean_inc(x_1); x_34 = l_Lean_Syntax_formatStxAux(x_32, x_33, x_27, x_1); x_35 = l_Std_Format_defWidth; x_36 = lean_format_pretty(x_34, x_35, x_27, x_27); -x_37 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1; +x_37 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1; x_38 = lean_string_append(x_37, x_36); lean_dec(x_36); -x_39 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2; +x_39 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2; x_40 = lean_string_append(x_38, x_39); lean_inc(x_1); x_41 = l_Lean_Syntax_getKind(x_1); x_42 = 1; -x_43 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3; +x_43 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3; x_44 = l_Lean_Name_toString(x_41, x_42, x_43); x_45 = lean_string_append(x_40, x_44); lean_dec(x_44); @@ -2089,7 +3181,7 @@ lean_dec(x_28); x_52 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_52, 0, x_51); x_53 = lean_box(0); -x_54 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_2, x_3, x_53, x_52); +x_54 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17(x_1, x_2, x_3, x_53, x_52); return x_54; } } @@ -2099,7 +3191,7 @@ lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_dec(x_28); x_55 = lean_box(0); x_56 = lean_box(0); -x_57 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_2, x_3, x_56, x_55); +x_57 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17(x_1, x_2, x_3, x_56, x_55); return x_57; } } @@ -2111,7 +3203,7 @@ _start: lean_object* x_4; lean_inc(x_1); lean_inc(x_3); -x_4 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__9___boxed), 4, 3); +x_4 = lean_alloc_closure((void*)(l_Lean_Elab_elabTerminationHints___rarg___lambda__18___boxed), 4, 3); lean_closure_set(x_4, 0, x_3); lean_closure_set(x_4, 1, x_1); lean_closure_set(x_4, 2, x_2); @@ -2127,12 +3219,13 @@ lean_inc(x_6); lean_dec(x_5); x_7 = lean_box(0); x_8 = lean_unsigned_to_nat(0u); -x_9 = lean_alloc_ctor(0, 5, 0); +x_9 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_9, 0, x_3); lean_ctor_set(x_9, 1, x_7); lean_ctor_set(x_9, 2, x_7); lean_ctor_set(x_9, 3, x_7); -lean_ctor_set(x_9, 4, x_8); +lean_ctor_set(x_9, 4, x_7); +lean_ctor_set(x_9, 5, x_8); x_10 = lean_apply_2(x_6, lean_box(0), x_9); return x_10; } @@ -2173,22 +3266,22 @@ x_3 = lean_box(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -lean_object* x_7; -x_7 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -return x_7; +lean_object* x_6; +x_6 = l_Lean_Elab_elabTerminationHints___rarg___lambda__5(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_4); +return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_7; -x_7 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -return x_7; +lean_object* x_4; +x_4 = l_Lean_Elab_elabTerminationHints___rarg___lambda__7(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { @@ -2196,15 +3289,73 @@ _start: { lean_object* x_6; x_6 = l_Lean_Elab_elabTerminationHints___rarg___lambda__8(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Elab_elabTerminationHints___rarg___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_6); +lean_dec(x_5); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_elabTerminationHints___rarg___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_2); +lean_dec(x_2); +x_11 = l_Lean_Elab_elabTerminationHints___rarg___lambda__13(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_elabTerminationHints___rarg___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Elab_elabTerminationHints___rarg___lambda__16(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Elab_elabTerminationHints___rarg___lambda__17(x_1, x_2, x_3, x_4, x_5); lean_dec(x_4); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Elab_elabTerminationHints___rarg___lambda__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Elab_elabTerminationHints___rarg___lambda__9(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Elab_elabTerminationHints___rarg___lambda__18(x_1, x_2, x_3, x_4); lean_dec(x_4); return x_5; } @@ -2228,6 +3379,10 @@ l_Lean_Elab_instInhabitedDecreasingBy___closed__1 = _init_l_Lean_Elab_instInhabi lean_mark_persistent(l_Lean_Elab_instInhabitedDecreasingBy___closed__1); l_Lean_Elab_instInhabitedDecreasingBy = _init_l_Lean_Elab_instInhabitedDecreasingBy(); lean_mark_persistent(l_Lean_Elab_instInhabitedDecreasingBy); +l_Lean_Elab_instInhabitedPartialFixpoint___closed__1 = _init_l_Lean_Elab_instInhabitedPartialFixpoint___closed__1(); +lean_mark_persistent(l_Lean_Elab_instInhabitedPartialFixpoint___closed__1); +l_Lean_Elab_instInhabitedPartialFixpoint = _init_l_Lean_Elab_instInhabitedPartialFixpoint(); +lean_mark_persistent(l_Lean_Elab_instInhabitedPartialFixpoint); l_Lean_Elab_instInhabitedTerminationHints___closed__1 = _init_l_Lean_Elab_instInhabitedTerminationHints___closed__1(); lean_mark_persistent(l_Lean_Elab_instInhabitedTerminationHints___closed__1); l_Lean_Elab_instInhabitedTerminationHints = _init_l_Lean_Elab_instInhabitedTerminationHints(); @@ -2254,6 +3409,10 @@ l_Lean_Elab_TerminationHints_ensureNone___closed__9 = _init_l_Lean_Elab_Terminat lean_mark_persistent(l_Lean_Elab_TerminationHints_ensureNone___closed__9); l_Lean_Elab_TerminationHints_ensureNone___closed__10 = _init_l_Lean_Elab_TerminationHints_ensureNone___closed__10(); lean_mark_persistent(l_Lean_Elab_TerminationHints_ensureNone___closed__10); +l_Lean_Elab_TerminationHints_ensureNone___closed__11 = _init_l_Lean_Elab_TerminationHints_ensureNone___closed__11(); +lean_mark_persistent(l_Lean_Elab_TerminationHints_ensureNone___closed__11); +l_Lean_Elab_TerminationHints_ensureNone___closed__12 = _init_l_Lean_Elab_TerminationHints_ensureNone___closed__12(); +lean_mark_persistent(l_Lean_Elab_TerminationHints_ensureNone___closed__12); l_Lean_Elab_TerminationBy_checkVars_parameters___closed__1 = _init_l_Lean_Elab_TerminationBy_checkVars_parameters___closed__1(); lean_mark_persistent(l_Lean_Elab_TerminationBy_checkVars_parameters___closed__1); l_Lean_Elab_TerminationBy_checkVars_parameters___closed__2 = _init_l_Lean_Elab_TerminationBy_checkVars_parameters___closed__2(); @@ -2304,34 +3463,42 @@ l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__6 = _init_l_Lean_E lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__6); l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__4___closed__7); -l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__1); -l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__2); -l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__3); -l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__4); -l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__5___closed__5); l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__1); l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__2); -l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__3); -l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__6___closed__4); l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__1); l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__2); -l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__8___closed__3); l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1(); lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__1); -l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2(); -lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__9___closed__2); +l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__1); +l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__11___closed__2); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__1); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__2); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__3); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__4); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__5); +l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__15___closed__6); +l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__1); +l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__2); +l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__17___closed__3); +l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__1); +l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2 = _init_l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2(); +lean_mark_persistent(l_Lean_Elab_elabTerminationHints___rarg___lambda__18___closed__2); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/WF/Eqns.c b/stage0/stdlib/Lean/Elab/PreDefinition/WF/Eqns.c index af1f25010c..545e575726 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/WF/Eqns.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/WF/Eqns.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Elab.PreDefinition.WF.Eqns -// Imports: Lean.Meta.Tactic.Rewrite Lean.Meta.Tactic.Split Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Eqns Lean.Meta.ArgsPacker.Basic Init.Data.Array.Basic +// Imports: Lean.Meta.Tactic.Rewrite Lean.Meta.Tactic.Split Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.Eqns Lean.Meta.ArgsPacker.Basic Init.Data.Array.Basic Init.Internal.Order.Basic #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -15,11 +15,10 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_mkEqns___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6; -LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840_(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MapDeclarationExtension_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__6; lean_object* l_Lean_Meta_throwTacticEx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -30,19 +29,18 @@ static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_ LEAN_EXPORT lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__10; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__7; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_WF_getEqnsFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_mkEqns___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__13; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9; lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Elab_WF_mkEqns___closed__3; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__14; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7; uint64_t lean_uint64_lor(uint64_t, uint64_t); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__6; uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); @@ -56,9 +54,12 @@ static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_ lean_object* l_Lean_Elab_Eqns_simpMatch_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8; lean_object* l_Lean_MVarId_getType_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_bvar___override(lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13; lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_getUnfoldFor_x3f___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__4; @@ -66,19 +67,18 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqn extern lean_object* l_Lean_Meta_tactic_hygienic; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__8; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof___closed__2; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12; lean_object* l_Lean_Meta_registerGetUnfoldEqnFn(lean_object*, lean_object*); lean_object* l_Lean_Elab_Eqns_tryContradiction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__16; static lean_object* l_Lean_Elab_WF_mkEqns___lambda__2___closed__2; uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19; lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__5; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8; extern lean_object* l_Lean_maxRecDepth; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__8; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1; lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); @@ -89,8 +89,9 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqn uint8_t l_Lean_Kernel_isDiagnosticsEnabled(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__17; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__5; -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__2; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -98,8 +99,8 @@ static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_ static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__4; lean_object* lean_st_ref_take(lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14; uint8_t l_Lean_Elab_DefKind_isTheorem(uint8_t); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5; lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__3; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); @@ -107,57 +108,65 @@ static lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo___closed__1; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__18; LEAN_EXPORT lean_object* l_Lean_Elab_WF_getUnfoldFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_matchesInstance___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6; lean_object* l_Lean_MessageData_ofFormat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_getUnfoldFor_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__12; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676_(lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__11; lean_object* lean_st_ref_get(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_pop(lean_object*); +lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10; lean_object* l_Lean_Elab_Eqns_getUnfoldFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3; +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17; extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_mkEqns___closed__1; lean_object* l_Lean_Option_set___at_Lean_Meta_getEqnsFor_x3f___spec__1(lean_object*, lean_object*, uint8_t); +extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_registerEqnsInfo___closed__1; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1; lean_object* l_Lean_MapDeclarationExtension_find_x3f___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_mkContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__1(lean_object*, size_t, size_t); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4; uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_mkEqns___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10; extern lean_object* l_Lean_diagnostics; LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appFn_x21(lean_object*); lean_object* l_Lean_Elab_Eqns_simpIf_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Eqns_mkEqnTypes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563_(lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5; +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9; lean_object* l_Lean_Meta_splitTarget_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__1; lean_object* l_Lean_MessageData_ofExpr(lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11; -LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__7; +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4; extern lean_object* l_Lean_Meta_eqnThmSuffixBase; LEAN_EXPORT lean_object* l_Lean_Elab_WF_mkEqns___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_append_index_after(lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_mkEqns___lambda__2___closed__1; +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_mkEqns___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(size_t, size_t, lean_object*); lean_object* l_Lean_Expr_constLevels_x21(lean_object*); @@ -165,35 +174,43 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Ela lean_object* l_Lean_Meta_registerGetEqnsFn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_mkEqns___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3; LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15; lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1; static lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo___closed__3; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__19; LEAN_EXPORT lean_object* l_Lean_Elab_WF_mkEqns___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__10; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__1; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951_(lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1; lean_object* l_Lean_mkMapDeclarationExtension___rarg(lean_object*, lean_object*); uint64_t lean_uint64_shift_left(uint64_t, uint64_t); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__6; lean_object* l_Lean_Meta_ensureEqnReservedNamesAvailable(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__2; lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8; static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__9; lean_object* lean_array_mk(lean_object*); lean_object* l_Lean_Elab_Eqns_whnfReducibleLHS_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof___closed__1; uint8_t l_Lean_Meta_TransparencyMode_lt(uint8_t, uint8_t); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13; size_t lean_usize_add(size_t, size_t); extern lean_object* l_Lean_Meta_Simp_defaultMaxSteps; lean_object* lean_array_uget(lean_object*, size_t); @@ -201,18 +218,19 @@ size_t lean_array_size(lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__15; lean_object* l_Lean_Meta_casesOnStuckLHS_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Eqns_removeUnusedEqnHypotheses(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Elab_WF_mkEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_simpTargetStar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7; static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___closed__1; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Eqns_tryURefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__7; lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16; lean_object* l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); static uint64_t l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__20; @@ -220,26 +238,25 @@ lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_obje uint8_t lean_nat_dec_le(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__3; uint8_t lean_usize_dec_lt(size_t, size_t); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2; static uint64_t l_Lean_Elab_WF_mkEqns___lambda__1___closed__1; uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__5; lean_object* l_Lean_MVarId_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_WF_mkEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12; +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14; lean_object* l_Lean_Elab_Eqns_deltaLHS(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_mkEqns___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(lean_object*); static lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo___closed__2; -static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3; +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo___closed__4; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); +static lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7; lean_object* l_panic___at_Lean_Meta_subst_substEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16; static lean_object* _init_l_Lean_Elab_WF_instInhabitedEqnInfo___closed__1() { _start: { @@ -276,20 +293,18 @@ return x_2; static lean_object* _init_l_Lean_Elab_WF_instInhabitedEqnInfo___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; uint8_t x_5; lean_object* x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Elab_WF_instInhabitedEqnInfo___closed__2; x_2 = l_Lean_Elab_WF_instInhabitedEqnInfo___closed__3; x_3 = lean_box(0); x_4 = lean_unsigned_to_nat(0u); -x_5 = 0; -x_6 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_6, 0, x_1); -lean_ctor_set(x_6, 1, x_2); -lean_ctor_set(x_6, 2, x_3); -lean_ctor_set(x_6, 3, x_4); -lean_ctor_set(x_6, 4, x_2); -lean_ctor_set_uint8(x_6, sizeof(void*)*5, x_5); -return x_6; +x_5 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_2); +lean_ctor_set(x_5, 2, x_3); +lean_ctor_set(x_5, 3, x_4); +lean_ctor_set(x_5, 4, x_2); +return x_5; } } static lean_object* _init_l_Lean_Elab_WF_instInhabitedEqnInfo() { @@ -399,6 +414,33 @@ x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean", 4, 4); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Order", 5, 5); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13; +x_3 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__10; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -444,51 +486,56 @@ x_18 = l_Lean_Expr_appArg_x21(x_17); lean_dec(x_17); x_19 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11; x_20 = l_Lean_Expr_isAppOf(x_18, x_19); -lean_dec(x_18); if (x_20 == 0) { -lean_object* x_21; +lean_object* x_21; uint8_t x_22; +x_21 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14; +x_22 = l_Lean_Expr_isAppOf(x_18, x_21); +lean_dec(x_18); +if (x_22 == 0) +{ +lean_object* x_23; lean_free_object(x_7); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_21 = l_Lean_Elab_Eqns_deltaLHS(x_1, x_2, x_3, x_4, x_5, x_10); -if (lean_obj_tag(x_21) == 0) +x_23 = l_Lean_Elab_Eqns_deltaLHS(x_1, x_2, x_3, x_4, x_5, x_10); +if (lean_obj_tag(x_23) == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_21, 1); -lean_inc(x_23); -lean_dec(x_21); -x_24 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix(x_22, x_2, x_3, x_4, x_5, x_23); -return x_24; +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix(x_24, x_2, x_3, x_4, x_5, x_25); +return x_26; } else { -uint8_t x_25; +uint8_t x_27; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_25 = !lean_is_exclusive(x_21); -if (x_25 == 0) +x_27 = !lean_is_exclusive(x_23); +if (x_27 == 0) { -return x_21; +return x_23; } else { -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_21, 0); -x_27 = lean_ctor_get(x_21, 1); -lean_inc(x_27); -lean_inc(x_26); -lean_dec(x_21); -x_28 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set(x_28, 1, x_27); -return x_28; +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_23, 0); +x_29 = lean_ctor_get(x_23, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_23); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } } @@ -502,129 +549,159 @@ lean_ctor_set(x_7, 0, x_1); return x_7; } } -} else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_29 = lean_ctor_get(x_7, 0); -x_30 = lean_ctor_get(x_7, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_7); -x_31 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__2; -x_32 = lean_unsigned_to_nat(3u); -x_33 = l_Lean_Expr_isAppOfArity(x_29, x_31, x_32); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -lean_dec(x_29); -x_34 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__4; -x_35 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__8; -x_36 = l_Lean_Meta_throwTacticEx___rarg(x_34, x_1, x_35, x_2, x_3, x_4, x_5, x_30); +lean_dec(x_18); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -return x_36; +lean_ctor_set(x_7, 0, x_1); +return x_7; +} +} } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_37 = l_Lean_Expr_appFn_x21(x_29); -lean_dec(x_29); -x_38 = l_Lean_Expr_appArg_x21(x_37); -lean_dec(x_37); -x_39 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11; -x_40 = l_Lean_Expr_isAppOf(x_38, x_39); -lean_dec(x_38); -if (x_40 == 0) +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_31 = lean_ctor_get(x_7, 0); +x_32 = lean_ctor_get(x_7, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_7); +x_33 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__2; +x_34 = lean_unsigned_to_nat(3u); +x_35 = l_Lean_Expr_isAppOfArity(x_31, x_33, x_34); +if (x_35 == 0) { -lean_object* x_41; +lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_dec(x_31); +x_36 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__4; +x_37 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__8; +x_38 = l_Lean_Meta_throwTacticEx___rarg(x_36, x_1, x_37, x_2, x_3, x_4, x_5, x_32); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_38; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_39 = l_Lean_Expr_appFn_x21(x_31); +lean_dec(x_31); +x_40 = l_Lean_Expr_appArg_x21(x_39); +lean_dec(x_39); +x_41 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11; +x_42 = l_Lean_Expr_isAppOf(x_40, x_41); +if (x_42 == 0) +{ +lean_object* x_43; uint8_t x_44; +x_43 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14; +x_44 = l_Lean_Expr_isAppOf(x_40, x_43); +lean_dec(x_40); +if (x_44 == 0) +{ +lean_object* x_45; lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_41 = l_Lean_Elab_Eqns_deltaLHS(x_1, x_2, x_3, x_4, x_5, x_30); -if (lean_obj_tag(x_41) == 0) +x_45 = l_Lean_Elab_Eqns_deltaLHS(x_1, x_2, x_3, x_4, x_5, x_32); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_41, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_41, 1); -lean_inc(x_43); -lean_dec(x_41); -x_44 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix(x_42, x_2, x_3, x_4, x_5, x_43); -return x_44; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_45 = lean_ctor_get(x_41, 0); -lean_inc(x_45); -x_46 = lean_ctor_get(x_41, 1); +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_45, 0); lean_inc(x_46); -if (lean_is_exclusive(x_41)) { - lean_ctor_release(x_41, 0); - lean_ctor_release(x_41, 1); - x_47 = x_41; -} else { - lean_dec_ref(x_41); - x_47 = lean_box(0); -} -if (lean_is_scalar(x_47)) { - x_48 = lean_alloc_ctor(1, 2, 0); -} else { - x_48 = x_47; -} -lean_ctor_set(x_48, 0, x_45); -lean_ctor_set(x_48, 1, x_46); +x_47 = lean_ctor_get(x_45, 1); +lean_inc(x_47); +lean_dec(x_45); +x_48 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix(x_46, x_2, x_3, x_4, x_5, x_47); return x_48; } -} else { -lean_object* x_49; +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_1); -lean_ctor_set(x_49, 1, x_30); -return x_49; +x_49 = lean_ctor_get(x_45, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_45, 1); +lean_inc(x_50); +if (lean_is_exclusive(x_45)) { + lean_ctor_release(x_45, 0); + lean_ctor_release(x_45, 1); + x_51 = x_45; +} else { + lean_dec_ref(x_45); + x_51 = lean_box(0); +} +if (lean_is_scalar(x_51)) { + x_52 = lean_alloc_ctor(1, 2, 0); +} else { + x_52 = x_51; +} +lean_ctor_set(x_52, 0, x_49); +lean_ctor_set(x_52, 1, x_50); +return x_52; +} +} +else +{ +lean_object* x_53; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_1); +lean_ctor_set(x_53, 1, x_32); +return x_53; +} +} +else +{ +lean_object* x_54; +lean_dec(x_40); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_1); +lean_ctor_set(x_54, 1, x_32); +return x_54; } } } } else { -uint8_t x_50; +uint8_t x_55; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_50 = !lean_is_exclusive(x_7); -if (x_50 == 0) +x_55 = !lean_is_exclusive(x_7); +if (x_55 == 0) { return x_7; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_7, 0); -x_52 = lean_ctor_get(x_7, 1); -lean_inc(x_52); -lean_inc(x_51); +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_7, 0); +x_57 = lean_ctor_get(x_7, 1); +lean_inc(x_57); +lean_inc(x_56); lean_dec(x_7); -x_53 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); -return x_53; +x_58 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -670,32 +747,273 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1; x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__2; -x_3 = lean_unsigned_to_nat(36u); +x_3 = lean_unsigned_to_nat(48u); +x_4 = lean_unsigned_to_nat(51u); +x_5 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_10 = lean_infer_type(x_4, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_unsigned_to_nat(3u); +x_14 = l_Lean_Expr_isAppOfArity(x_11, x_1, x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_dec(x_11); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_15 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4; +x_16 = l_panic___at_Lean_Meta_subst_substEq___spec__1(x_15, x_5, x_6, x_7, x_8, x_12); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; +x_17 = l_Lean_Expr_appArg_x21(x_11); +lean_dec(x_11); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_18 = l_Lean_Meta_mkEq(x_17, x_2, x_5, x_6, x_7, x_8, x_12); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_box(0); +lean_inc(x_5); +x_22 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_19, x_21, x_5, x_6, x_7, x_8, x_20); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_23); +x_25 = l_Lean_Meta_mkEqTrans(x_4, x_23, x_5, x_6, x_7, x_8, x_24); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_3, x_26, x_5, x_6, x_7, x_8, x_27); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_28, 0); +lean_dec(x_30); +x_31 = l_Lean_Expr_mvarId_x21(x_23); +lean_dec(x_23); +lean_ctor_set(x_28, 0, x_31); +return x_28; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_28, 1); +lean_inc(x_32); +lean_dec(x_28); +x_33 = l_Lean_Expr_mvarId_x21(x_23); +lean_dec(x_23); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +return x_34; +} +} +else +{ +uint8_t x_35; +lean_dec(x_23); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +x_35 = !lean_is_exclusive(x_25); +if (x_35 == 0) +{ +return x_25; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_25, 0); +x_37 = lean_ctor_get(x_25, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_25); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +uint8_t x_39; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_39 = !lean_is_exclusive(x_18); +if (x_39 == 0) +{ +return x_18; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_18, 0); +x_41 = lean_ctor_get(x_18, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_18); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); +return x_42; +} +} +} +} +else +{ +uint8_t x_43; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_43 = !lean_is_exclusive(x_10); +if (x_43 == 0) +{ +return x_10; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_10, 0); +x_45 = lean_ctor_get(x_10, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_10); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__2; +x_3 = lean_unsigned_to_nat(38u); x_4 = lean_unsigned_to_nat(41u); x_5 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5() { +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("fix_eq", 6, 6); +x_1 = lean_mk_string_unchecked("rwFixEq", 7, 7); return x_1; } } -static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6() { +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__9; -x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); +x_1 = lean_box(0); +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2; +x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7() { +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("expected fixed-point application", 32, 32); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; @@ -704,20 +1022,54 @@ x_2 = l_Lean_Expr_sort___override(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8() { +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1; -x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__2; -x_3 = lean_unsigned_to_nat(38u); -x_4 = lean_unsigned_to_nat(51u); -x_5 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__3; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("congrFun", 8, 8); +return x_1; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fix_eq", 6, 6); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13; +x_3 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__9; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; @@ -743,245 +1095,184 @@ if (x_12 == 0) lean_object* x_13; lean_object* x_14; lean_dec(x_8); lean_dec(x_1); -x_13 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4; +x_13 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1; x_14 = l_panic___at_Lean_Meta_subst_substEq___spec__1(x_13, x_2, x_3, x_4, x_5, x_9); return x_14; } else { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; x_15 = l_Lean_Expr_appFn_x21(x_8); x_16 = l_Lean_Expr_appArg_x21(x_15); lean_dec(x_15); x_17 = l_Lean_Expr_appArg_x21(x_8); lean_dec(x_8); -x_18 = l_Lean_Expr_getAppFn(x_16); -x_19 = l_Lean_Expr_constLevels_x21(x_18); -lean_dec(x_18); -x_20 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6; -x_21 = l_Lean_Expr_const___override(x_20, x_19); -x_22 = lean_unsigned_to_nat(0u); -x_23 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_16, x_22); -x_24 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7; -lean_inc(x_23); -x_25 = lean_mk_array(x_23, x_24); -x_26 = lean_unsigned_to_nat(1u); -x_27 = lean_nat_sub(x_23, x_26); -lean_dec(x_23); -x_28 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_16, x_25, x_27); -x_29 = l_Lean_mkAppN(x_21, x_28); -lean_dec(x_28); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_29); -x_30 = lean_infer_type(x_29, x_2, x_3, x_4, x_5, x_9); -if (lean_obj_tag(x_30) == 0) +x_18 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11; +x_19 = l_Lean_Expr_isAppOf(x_16, x_18); +if (x_19 == 0) { -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_30, 0); -lean_inc(x_31); -x_32 = lean_ctor_get(x_30, 1); -lean_inc(x_32); -lean_dec(x_30); -x_33 = l_Lean_Expr_isAppOfArity(x_31, x_10, x_11); -if (x_33 == 0) +lean_object* x_20; uint8_t x_21; +x_20 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14; +x_21 = l_Lean_Expr_isAppOf(x_16, x_20); +if (x_21 == 0) { -lean_object* x_34; lean_object* x_35; -lean_dec(x_31); -lean_dec(x_29); +lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_dec(x_17); -lean_dec(x_1); -x_34 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8; -x_35 = l_panic___at_Lean_Meta_subst_substEq___spec__1(x_34, x_2, x_3, x_4, x_5, x_32); -return x_35; -} -else -{ -lean_object* x_36; lean_object* x_37; -x_36 = l_Lean_Expr_appArg_x21(x_31); -lean_dec(x_31); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_37 = l_Lean_Meta_mkEq(x_36, x_17, x_2, x_3, x_4, x_5, x_32); -if (lean_obj_tag(x_37) == 0) -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_38 = lean_ctor_get(x_37, 0); -lean_inc(x_38); -x_39 = lean_ctor_get(x_37, 1); -lean_inc(x_39); -lean_dec(x_37); -x_40 = lean_box(0); -lean_inc(x_2); -x_41 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_38, x_40, x_2, x_3, x_4, x_5, x_39); -x_42 = lean_ctor_get(x_41, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_41, 1); -lean_inc(x_43); -lean_dec(x_41); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_42); -x_44 = l_Lean_Meta_mkEqTrans(x_29, x_42, x_2, x_3, x_4, x_5, x_43); -if (lean_obj_tag(x_44) == 0) -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_45 = lean_ctor_get(x_44, 0); -lean_inc(x_45); -x_46 = lean_ctor_get(x_44, 1); -lean_inc(x_46); -lean_dec(x_44); -x_47 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_1, x_45, x_2, x_3, x_4, x_5, x_46); +lean_dec(x_16); +x_22 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3; +x_23 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7; +x_24 = l_Lean_Meta_throwTacticEx___rarg(x_22, x_1, x_23, x_2, x_3, x_4, x_5, x_9); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_48 = !lean_is_exclusive(x_47); -if (x_48 == 0) +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) { -lean_object* x_49; lean_object* x_50; -x_49 = lean_ctor_get(x_47, 0); -lean_dec(x_49); -x_50 = l_Lean_Expr_mvarId_x21(x_42); -lean_dec(x_42); -lean_ctor_set(x_47, 0, x_50); -return x_47; +return x_24; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_47, 1); +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_24); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_29 = lean_unsigned_to_nat(0u); +x_30 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_16, x_29); +x_31 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8; +lean_inc(x_30); +x_32 = lean_mk_array(x_30, x_31); +x_33 = lean_unsigned_to_nat(1u); +x_34 = lean_nat_sub(x_30, x_33); +lean_dec(x_30); +lean_inc(x_16); +x_35 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_16, x_32, x_34); +x_36 = l_Lean_instInhabitedExpr; +x_37 = l_Array_back_x21___rarg(x_36, x_35); +x_38 = lean_array_pop(x_35); +x_39 = l_Lean_Expr_getAppFn(x_16); +lean_dec(x_16); +x_40 = l_Lean_Expr_constLevels_x21(x_39); +lean_dec(x_39); +x_41 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12; +x_42 = l_Lean_Expr_const___override(x_41, x_40); +x_43 = l_Lean_mkAppN(x_42, x_38); +lean_dec(x_38); +x_44 = lean_box(0); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_37); +lean_ctor_set(x_45, 1, x_44); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_43); +lean_ctor_set(x_46, 1, x_45); +x_47 = lean_array_mk(x_46); +x_48 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_49 = l_Lean_Meta_mkAppM(x_48, x_47, x_2, x_3, x_4, x_5, x_9); +if (lean_obj_tag(x_49) == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_49, 1); lean_inc(x_51); -lean_dec(x_47); -x_52 = l_Lean_Expr_mvarId_x21(x_42); -lean_dec(x_42); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_51); -return x_53; -} +lean_dec(x_49); +x_52 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(x_10, x_17, x_1, x_50, x_2, x_3, x_4, x_5, x_51); +return x_52; } else { -uint8_t x_54; -lean_dec(x_42); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_54 = !lean_is_exclusive(x_44); -if (x_54 == 0) -{ -return x_44; -} -else -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_55 = lean_ctor_get(x_44, 0); -x_56 = lean_ctor_get(x_44, 1); -lean_inc(x_56); -lean_inc(x_55); -lean_dec(x_44); -x_57 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_56); -return x_57; -} -} -} -else -{ -uint8_t x_58; -lean_dec(x_29); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_58 = !lean_is_exclusive(x_37); -if (x_58 == 0) -{ -return x_37; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_37, 0); -x_60 = lean_ctor_get(x_37, 1); -lean_inc(x_60); -lean_inc(x_59); -lean_dec(x_37); -x_61 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -return x_61; -} -} -} -} -else -{ -uint8_t x_62; -lean_dec(x_29); +uint8_t x_53; lean_dec(x_17); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_62 = !lean_is_exclusive(x_30); -if (x_62 == 0) +x_53 = !lean_is_exclusive(x_49); +if (x_53 == 0) { -return x_30; +return x_49; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_30, 0); -x_64 = lean_ctor_get(x_30, 1); -lean_inc(x_64); -lean_inc(x_63); -lean_dec(x_30); -x_65 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -return x_65; +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_49, 0); +x_55 = lean_ctor_get(x_49, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_49); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; } } } } else { -uint8_t x_66; +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_57 = l_Lean_Expr_getAppFn(x_16); +x_58 = l_Lean_Expr_constLevels_x21(x_57); +lean_dec(x_57); +x_59 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13; +x_60 = l_Lean_Expr_const___override(x_59, x_58); +x_61 = lean_unsigned_to_nat(0u); +x_62 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_16, x_61); +x_63 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8; +lean_inc(x_62); +x_64 = lean_mk_array(x_62, x_63); +x_65 = lean_unsigned_to_nat(1u); +x_66 = lean_nat_sub(x_62, x_65); +lean_dec(x_62); +x_67 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_16, x_64, x_66); +x_68 = l_Lean_mkAppN(x_60, x_67); +lean_dec(x_67); +x_69 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(x_10, x_17, x_1, x_68, x_2, x_3, x_4, x_5, x_9); +return x_69; +} +} +} +else +{ +uint8_t x_70; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_66 = !lean_is_exclusive(x_7); -if (x_66 == 0) +x_70 = !lean_is_exclusive(x_7); +if (x_70 == 0) { return x_7; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_7, 0); -x_68 = lean_ctor_get(x_7, 1); -lean_inc(x_68); -lean_inc(x_67); +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = lean_ctor_get(x_7, 0); +x_72 = lean_ctor_get(x_7, 1); +lean_inc(x_72); +lean_inc(x_71); lean_dec(x_7); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; +x_73 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +return x_73; } } } @@ -991,12 +1282,21 @@ _start: { lean_object* x_7; lean_object* x_8; lean_inc(x_1); -x_7 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1), 6, 1); +x_7 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2), 6, 1); lean_closure_set(x_7, 0, x_1); x_8 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(x_1, x_7, x_2, x_3, x_4, x_5, x_6); return x_8; } } +LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_1); +return x_10; +} +} LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -4653,15 +4953,7 @@ lean_dec(x_7); return x_13; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1() { _start: { lean_object* x_1; @@ -4669,7 +4961,7 @@ x_1 = lean_mk_string_unchecked("WF", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2() { _start: { lean_object* x_1; @@ -4677,23 +4969,23 @@ x_1 = lean_mk_string_unchecked("eqnInfoExt", 10, 10); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1; +x_1 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__1; -x_3 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2; -x_4 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3; +x_3 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1; +x_4 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3; x_3 = l_Lean_mkMapDeclarationExtension___rarg(x_2, x_1); return x_3; } @@ -4768,56 +5060,55 @@ x_1 = l_Lean_Elab_WF_eqnInfoExt; return x_1; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, size_t x_7, size_t x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8) { _start: { -uint8_t x_10; -x_10 = lean_usize_dec_eq(x_7, x_8); -if (x_10 == 0) +uint8_t x_9; +x_9 = lean_usize_dec_eq(x_6, x_7); +if (x_9 == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; size_t x_20; size_t x_21; -x_11 = lean_array_uget(x_6, x_7); -x_12 = lean_ctor_get(x_11, 3); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; +x_10 = lean_array_uget(x_5, x_6); +x_11 = lean_ctor_get(x_10, 3); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); +x_13 = lean_ctor_get(x_10, 4); lean_inc(x_13); -x_14 = lean_ctor_get(x_11, 4); +x_14 = lean_ctor_get(x_10, 5); lean_inc(x_14); -x_15 = lean_ctor_get(x_11, 5); -lean_inc(x_15); -lean_dec(x_11); -lean_inc(x_12); -x_16 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_16, 0, x_12); -lean_ctor_set(x_16, 1, x_13); -lean_ctor_set(x_16, 2, x_14); -lean_ctor_set(x_16, 3, x_15); +lean_dec(x_10); +lean_inc(x_11); +x_15 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_15, 0, x_11); +lean_ctor_set(x_15, 1, x_12); +lean_ctor_set(x_15, 2, x_13); +lean_ctor_set(x_15, 3, x_14); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -lean_inc(x_5); -x_17 = lean_alloc_ctor(0, 5, 1); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_5); -lean_ctor_set(x_17, 2, x_1); -lean_ctor_set(x_17, 3, x_2); -lean_ctor_set(x_17, 4, x_3); -lean_ctor_set_uint8(x_17, sizeof(void*)*5, x_4); -x_18 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___closed__1; -x_19 = l_Lean_MapDeclarationExtension_insert___rarg(x_18, x_9, x_12, x_17); -x_20 = 1; -x_21 = lean_usize_add(x_7, x_20); -x_7 = x_21; -x_9 = x_19; +lean_inc(x_4); +x_16 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_4); +lean_ctor_set(x_16, 2, x_1); +lean_ctor_set(x_16, 3, x_2); +lean_ctor_set(x_16, 4, x_3); +x_17 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___closed__1; +x_18 = l_Lean_MapDeclarationExtension_insert___rarg(x_17, x_8, x_11, x_16); +x_19 = 1; +x_20 = lean_usize_add(x_6, x_19); +x_6 = x_20; +x_8 = x_18; goto _start; } else { -lean_dec(x_5); +lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -return x_9; +return x_8; } } } @@ -5010,369 +5301,369 @@ lean_ctor_set(x_2, 5, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_11; lean_object* x_12; lean_object* x_84; uint8_t x_85; -x_11 = lean_array_get_size(x_1); -x_84 = lean_unsigned_to_nat(0u); -x_85 = lean_nat_dec_lt(x_84, x_11); +lean_object* x_10; lean_object* x_11; lean_object* x_83; uint8_t x_84; +x_10 = lean_array_get_size(x_1); +x_83 = lean_unsigned_to_nat(0u); +x_84 = lean_nat_dec_lt(x_83, x_10); +if (x_84 == 0) +{ +x_11 = x_9; +goto block_82; +} +else +{ +uint8_t x_85; +x_85 = lean_nat_dec_le(x_10, x_10); if (x_85 == 0) { -x_12 = x_10; -goto block_83; +x_11 = x_9; +goto block_82; } else { -uint8_t x_86; -x_86 = lean_nat_dec_le(x_11, x_11); -if (x_86 == 0) +size_t x_86; size_t x_87; lean_object* x_88; lean_object* x_89; +x_86 = 0; +x_87 = lean_usize_of_nat(x_10); +x_88 = lean_box(0); +x_89 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__5(x_1, x_86, x_87, x_88, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_89) == 0) { -x_12 = x_10; -goto block_83; +lean_object* x_90; +x_90 = lean_ctor_get(x_89, 1); +lean_inc(x_90); +lean_dec(x_89); +x_11 = x_90; +goto block_82; } else { -size_t x_87; size_t x_88; lean_object* x_89; lean_object* x_90; -x_87 = 0; -x_88 = lean_usize_of_nat(x_11); -x_89 = lean_box(0); -x_90 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__5(x_1, x_87, x_88, x_89, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_90) == 0) -{ -lean_object* x_91; -x_91 = lean_ctor_get(x_90, 1); -lean_inc(x_91); -lean_dec(x_90); -x_12 = x_91; -goto block_83; -} -else -{ -uint8_t x_92; -lean_dec(x_11); -lean_dec(x_9); +uint8_t x_91; +lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_92 = !lean_is_exclusive(x_90); -if (x_92 == 0) +x_91 = !lean_is_exclusive(x_89); +if (x_91 == 0) { -return x_90; +return x_89; } else { -lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_93 = lean_ctor_get(x_90, 0); -x_94 = lean_ctor_get(x_90, 1); -lean_inc(x_94); +lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_92 = lean_ctor_get(x_89, 0); +x_93 = lean_ctor_get(x_89, 1); lean_inc(x_93); -lean_dec(x_90); -x_95 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_94); -return x_95; +lean_inc(x_92); +lean_dec(x_89); +x_94 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_94, 0, x_92); +lean_ctor_set(x_94, 1, x_93); +return x_94; } } } } -block_83: +block_82: { -lean_object* x_13; uint8_t x_14; -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_nat_dec_lt(x_13, x_11); -if (x_14 == 0) +lean_object* x_12; uint8_t x_13; +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_lt(x_12, x_10); +if (x_13 == 0) { -lean_object* x_15; lean_object* x_16; -lean_dec(x_11); -lean_dec(x_9); +lean_object* x_14; lean_object* x_15; +lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_15 = lean_box(0); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_12); -return x_16; +x_14 = lean_box(0); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_11); +return x_15; } else { -size_t x_17; size_t x_18; uint8_t x_19; -x_17 = 0; -x_18 = lean_usize_of_nat(x_11); -x_19 = l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__1(x_1, x_17, x_18); -if (x_19 == 0) +size_t x_16; size_t x_17; uint8_t x_18; +x_16 = 0; +x_17 = lean_usize_of_nat(x_10); +x_18 = l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__1(x_1, x_16, x_17); +if (x_18 == 0) { -lean_object* x_20; lean_object* x_21; -lean_dec(x_11); -lean_dec(x_9); +lean_object* x_19; lean_object* x_20; +lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); +lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_20 = lean_box(0); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_12); -return x_21; +x_19 = lean_box(0); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_11); +return x_20; } else { -uint8_t x_22; lean_object* x_23; lean_object* x_72; -lean_inc(x_9); -lean_inc(x_7); -x_72 = l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__4(x_1, x_17, x_18, x_6, x_7, x_8, x_9, x_12); -if (lean_obj_tag(x_72) == 0) +uint8_t x_21; lean_object* x_22; lean_object* x_71; +lean_inc(x_8); +lean_inc(x_6); +x_71 = l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__4(x_1, x_16, x_17, x_5, x_6, x_7, x_8, x_11); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_73; uint8_t x_74; -x_73 = lean_ctor_get(x_72, 0); -lean_inc(x_73); -x_74 = lean_unbox(x_73); -lean_dec(x_73); -if (x_74 == 0) -{ -lean_object* x_75; uint8_t x_76; -x_75 = lean_ctor_get(x_72, 1); -lean_inc(x_75); +lean_object* x_72; uint8_t x_73; +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +x_73 = lean_unbox(x_72); lean_dec(x_72); -x_76 = 1; +if (x_73 == 0) +{ +lean_object* x_74; uint8_t x_75; +x_74 = lean_ctor_get(x_71, 1); +lean_inc(x_74); +lean_dec(x_71); +x_75 = 1; +x_21 = x_75; +x_22 = x_74; +goto block_70; +} +else +{ +lean_object* x_76; uint8_t x_77; +x_76 = lean_ctor_get(x_71, 1); +lean_inc(x_76); +lean_dec(x_71); +x_77 = 0; +x_21 = x_77; x_22 = x_76; -x_23 = x_75; -goto block_71; -} -else -{ -lean_object* x_77; uint8_t x_78; -x_77 = lean_ctor_get(x_72, 1); -lean_inc(x_77); -lean_dec(x_72); -x_78 = 0; -x_22 = x_78; -x_23 = x_77; -goto block_71; +goto block_70; } } else { -uint8_t x_79; -lean_dec(x_11); -lean_dec(x_9); -lean_dec(x_7); +uint8_t x_78; +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_79 = !lean_is_exclusive(x_72); -if (x_79 == 0) +x_78 = !lean_is_exclusive(x_71); +if (x_78 == 0) { -return x_72; +return x_71; } else { -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_72, 0); -x_81 = lean_ctor_get(x_72, 1); -lean_inc(x_81); +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_71, 0); +x_80 = lean_ctor_get(x_71, 1); lean_inc(x_80); -lean_dec(x_72); -x_82 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_82, 0, x_80); -lean_ctor_set(x_82, 1, x_81); -return x_82; +lean_inc(x_79); +lean_dec(x_71); +x_81 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_79); +lean_ctor_set(x_81, 1, x_80); +return x_81; } } -block_71: +block_70: { -if (x_22 == 0) +if (x_21 == 0) { -size_t x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_67; -x_24 = lean_array_size(x_1); +size_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_66; +x_23 = lean_array_size(x_1); lean_inc(x_1); -x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(x_24, x_17, x_1); -x_26 = lean_st_ref_take(x_9, x_23); -x_27 = lean_ctor_get(x_26, 0); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(x_23, x_16, x_1); +x_25 = lean_st_ref_take(x_8, x_22); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = lean_ctor_get(x_27, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -x_31 = lean_ctor_get(x_27, 2); -lean_inc(x_31); -x_32 = lean_ctor_get(x_27, 3); -lean_inc(x_32); -x_33 = lean_ctor_get(x_27, 5); -lean_inc(x_33); -x_34 = lean_ctor_get(x_27, 6); -lean_inc(x_34); -x_35 = lean_ctor_get(x_27, 7); -lean_inc(x_35); -if (lean_is_exclusive(x_27)) { - lean_ctor_release(x_27, 0); - lean_ctor_release(x_27, 1); - lean_ctor_release(x_27, 2); - lean_ctor_release(x_27, 3); - lean_ctor_release(x_27, 4); - lean_ctor_release(x_27, 5); - lean_ctor_release(x_27, 6); - lean_ctor_release(x_27, 7); - x_36 = x_27; -} else { - lean_dec_ref(x_27); - x_36 = lean_box(0); -} -x_67 = lean_nat_dec_le(x_11, x_11); -lean_dec(x_11); -if (x_67 == 0) -{ lean_dec(x_25); +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); +x_30 = lean_ctor_get(x_26, 2); +lean_inc(x_30); +x_31 = lean_ctor_get(x_26, 3); +lean_inc(x_31); +x_32 = lean_ctor_get(x_26, 5); +lean_inc(x_32); +x_33 = lean_ctor_get(x_26, 6); +lean_inc(x_33); +x_34 = lean_ctor_get(x_26, 7); +lean_inc(x_34); +if (lean_is_exclusive(x_26)) { + lean_ctor_release(x_26, 0); + lean_ctor_release(x_26, 1); + lean_ctor_release(x_26, 2); + lean_ctor_release(x_26, 3); + lean_ctor_release(x_26, 4); + lean_ctor_release(x_26, 5); + lean_ctor_release(x_26, 6); + lean_ctor_release(x_26, 7); + x_35 = x_26; +} else { + lean_dec_ref(x_26); + x_35 = lean_box(0); +} +x_66 = lean_nat_dec_le(x_10, x_10); +lean_dec(x_10); +if (x_66 == 0) +{ +lean_dec(x_24); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_37 = x_29; -goto block_66; +x_36 = x_28; +goto block_65; } else { -lean_object* x_68; -x_68 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(x_2, x_3, x_4, x_5, x_25, x_1, x_17, x_18, x_29); +lean_object* x_67; +x_67 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(x_2, x_3, x_4, x_24, x_1, x_16, x_17, x_28); lean_dec(x_1); -x_37 = x_68; -goto block_66; +x_36 = x_67; +goto block_65; } -block_66: +block_65: { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; -x_38 = l_Lean_Elab_WF_mkEqns___closed__3; -if (lean_is_scalar(x_36)) { - x_39 = lean_alloc_ctor(0, 8, 0); +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_37 = l_Lean_Elab_WF_mkEqns___closed__3; +if (lean_is_scalar(x_35)) { + x_38 = lean_alloc_ctor(0, 8, 0); } else { - x_39 = x_36; + x_38 = x_35; } -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_30); -lean_ctor_set(x_39, 2, x_31); -lean_ctor_set(x_39, 3, x_32); -lean_ctor_set(x_39, 4, x_38); -lean_ctor_set(x_39, 5, x_33); -lean_ctor_set(x_39, 6, x_34); -lean_ctor_set(x_39, 7, x_35); -x_40 = lean_st_ref_set(x_9, x_39, x_28); -lean_dec(x_9); -x_41 = lean_ctor_get(x_40, 1); -lean_inc(x_41); -lean_dec(x_40); -x_42 = lean_st_ref_take(x_7, x_41); -x_43 = lean_ctor_get(x_42, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_29); +lean_ctor_set(x_38, 2, x_30); +lean_ctor_set(x_38, 3, x_31); +lean_ctor_set(x_38, 4, x_37); +lean_ctor_set(x_38, 5, x_32); +lean_ctor_set(x_38, 6, x_33); +lean_ctor_set(x_38, 7, x_34); +x_39 = lean_st_ref_set(x_8, x_38, x_27); +lean_dec(x_8); +x_40 = lean_ctor_get(x_39, 1); +lean_inc(x_40); +lean_dec(x_39); +x_41 = lean_st_ref_take(x_6, x_40); +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); -x_44 = lean_ctor_get(x_42, 1); -lean_inc(x_44); -lean_dec(x_42); -x_45 = !lean_is_exclusive(x_43); -if (x_45 == 0) +lean_dec(x_41); +x_44 = !lean_is_exclusive(x_42); +if (x_44 == 0) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; -x_46 = lean_ctor_get(x_43, 1); -lean_dec(x_46); -x_47 = l_Lean_Elab_WF_registerEqnsInfo___closed__1; -lean_ctor_set(x_43, 1, x_47); -x_48 = lean_st_ref_set(x_7, x_43, x_44); -lean_dec(x_7); -x_49 = !lean_is_exclusive(x_48); -if (x_49 == 0) +lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_45 = lean_ctor_get(x_42, 1); +lean_dec(x_45); +x_46 = l_Lean_Elab_WF_registerEqnsInfo___closed__1; +lean_ctor_set(x_42, 1, x_46); +x_47 = lean_st_ref_set(x_6, x_42, x_43); +lean_dec(x_6); +x_48 = !lean_is_exclusive(x_47); +if (x_48 == 0) { -lean_object* x_50; lean_object* x_51; -x_50 = lean_ctor_get(x_48, 0); -lean_dec(x_50); -x_51 = lean_box(0); -lean_ctor_set(x_48, 0, x_51); -return x_48; +lean_object* x_49; lean_object* x_50; +x_49 = lean_ctor_get(x_47, 0); +lean_dec(x_49); +x_50 = lean_box(0); +lean_ctor_set(x_47, 0, x_50); +return x_47; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_52 = lean_ctor_get(x_48, 1); -lean_inc(x_52); -lean_dec(x_48); -x_53 = lean_box(0); -x_54 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_52); -return x_54; +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_47, 1); +lean_inc(x_51); +lean_dec(x_47); +x_52 = lean_box(0); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_51); +return x_53; } } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_55 = lean_ctor_get(x_43, 0); -x_56 = lean_ctor_get(x_43, 2); -x_57 = lean_ctor_get(x_43, 3); -x_58 = lean_ctor_get(x_43, 4); -lean_inc(x_58); +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_54 = lean_ctor_get(x_42, 0); +x_55 = lean_ctor_get(x_42, 2); +x_56 = lean_ctor_get(x_42, 3); +x_57 = lean_ctor_get(x_42, 4); lean_inc(x_57); lean_inc(x_56); lean_inc(x_55); -lean_dec(x_43); -x_59 = l_Lean_Elab_WF_registerEqnsInfo___closed__1; -x_60 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_60, 0, x_55); -lean_ctor_set(x_60, 1, x_59); -lean_ctor_set(x_60, 2, x_56); -lean_ctor_set(x_60, 3, x_57); -lean_ctor_set(x_60, 4, x_58); -x_61 = lean_st_ref_set(x_7, x_60, x_44); -lean_dec(x_7); -x_62 = lean_ctor_get(x_61, 1); -lean_inc(x_62); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - x_63 = x_61; +lean_inc(x_54); +lean_dec(x_42); +x_58 = l_Lean_Elab_WF_registerEqnsInfo___closed__1; +x_59 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_59, 0, x_54); +lean_ctor_set(x_59, 1, x_58); +lean_ctor_set(x_59, 2, x_55); +lean_ctor_set(x_59, 3, x_56); +lean_ctor_set(x_59, 4, x_57); +x_60 = lean_st_ref_set(x_6, x_59, x_43); +lean_dec(x_6); +x_61 = lean_ctor_get(x_60, 1); +lean_inc(x_61); +if (lean_is_exclusive(x_60)) { + lean_ctor_release(x_60, 0); + lean_ctor_release(x_60, 1); + x_62 = x_60; } else { - lean_dec_ref(x_61); - x_63 = lean_box(0); + lean_dec_ref(x_60); + x_62 = lean_box(0); } -x_64 = lean_box(0); -if (lean_is_scalar(x_63)) { - x_65 = lean_alloc_ctor(0, 2, 0); +x_63 = lean_box(0); +if (lean_is_scalar(x_62)) { + x_64 = lean_alloc_ctor(0, 2, 0); } else { - x_65 = x_63; + x_64 = x_62; } -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_62); -return x_65; +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_61); +return x_64; } } } else { -lean_object* x_69; lean_object* x_70; -lean_dec(x_11); -lean_dec(x_9); -lean_dec(x_7); +lean_object* x_68; lean_object* x_69; +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_6); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_69 = lean_box(0); -x_70 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_70, 0, x_69); -lean_ctor_set(x_70, 1, x_23); -return x_70; +x_68 = lean_box(0); +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_22); +return x_69; } } } @@ -5406,19 +5697,17 @@ x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(x_4, x return x_6; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -uint8_t x_10; size_t x_11; size_t x_12; lean_object* x_13; -x_10 = lean_unbox(x_4); -lean_dec(x_4); -x_11 = lean_unbox_usize(x_7); -lean_dec(x_7); -x_12 = lean_unbox_usize(x_8); -lean_dec(x_8); -x_13 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(x_1, x_2, x_3, x_10, x_5, x_6, x_11, x_12, x_9); +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_6); lean_dec(x_6); -return x_13; +x_10 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_11 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3(x_1, x_2, x_3, x_4, x_5, x_9, x_10, x_8); +lean_dec(x_5); +return x_11; } } LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_WF_registerEqnsInfo___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { @@ -5451,16 +5740,6 @@ lean_dec(x_1); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_registerEqnsInfo___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -uint8_t x_11; lean_object* x_12; -x_11 = lean_unbox(x_5); -lean_dec(x_5); -x_12 = l_Lean_Elab_WF_registerEqnsInfo(x_1, x_2, x_3, x_4, x_11, x_6, x_7, x_8, x_9, x_10); -return x_12; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_WF_getEqnsFor_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -5786,7 +6065,7 @@ lean_dec(x_3); return x_4; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1() { _start: { lean_object* x_1; @@ -5794,7 +6073,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_WF_getEqnsFor_x3f), 6, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2() { _start: { lean_object* x_1; @@ -5802,37 +6081,37 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_WF_getUnfoldFor_x3f), 6, 0); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3; x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6() { _start: { lean_object* x_1; @@ -5840,17 +6119,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8() { _start: { lean_object* x_1; @@ -5858,37 +6137,37 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9; +x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10; x_2 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12() { _start: { lean_object* x_1; @@ -5896,27 +6175,27 @@ x_1 = lean_mk_string_unchecked("PreDefinition", 13, 13); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15() { _start: { lean_object* x_1; @@ -5924,17 +6203,17 @@ x_1 = lean_mk_string_unchecked("Eqns", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17() { _start: { lean_object* x_1; @@ -5942,31 +6221,31 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17; +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19() { +static lean_object* _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18; -x_2 = lean_unsigned_to_nat(1840u); +x_1 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18; +x_2 = lean_unsigned_to_nat(1951u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1; +x_2 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1; x_3 = l_Lean_Meta_registerGetEqnsFn(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -5974,7 +6253,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); lean_dec(x_3); -x_5 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2; +x_5 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2; x_6 = l_Lean_Meta_registerGetUnfoldEqnFn(x_5, x_4); if (lean_obj_tag(x_6) == 0) { @@ -5984,7 +6263,7 @@ lean_inc(x_7); lean_dec(x_6); x_8 = l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___closed__5; x_9 = 0; -x_10 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19; +x_10 = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19; x_11 = l_Lean_registerTraceClass(x_8, x_9, x_10, x_7); return x_11; } @@ -6041,6 +6320,7 @@ lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_obje lean_object* initialize_Lean_Elab_PreDefinition_Eqns(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_ArgsPacker_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Init_Data_Array_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Internal_Order_Basic(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_WF_Eqns(uint8_t builtin, lean_object* w) { lean_object * res; @@ -6064,6 +6344,9 @@ lean_dec_ref(res); res = initialize_Init_Data_Array_Basic(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Init_Internal_Order_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Elab_WF_instInhabitedEqnInfo___closed__1 = _init_l_Lean_Elab_WF_instInhabitedEqnInfo___closed__1(); lean_mark_persistent(l_Lean_Elab_WF_instInhabitedEqnInfo___closed__1); l_Lean_Elab_WF_instInhabitedEqnInfo___closed__2 = _init_l_Lean_Elab_WF_instInhabitedEqnInfo___closed__2(); @@ -6096,6 +6379,12 @@ l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___l lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__10); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11(); lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__11); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__12); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__13); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_deltaLHSUntilFix___lambda__1___closed__14); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1(); lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__1); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__2 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__2(); @@ -6104,14 +6393,32 @@ l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1_ lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__3); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4(); lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__4); -l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5(); -lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__5); -l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6(); -lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__6); -l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7(); -lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__7); -l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8(); -lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__1___closed__8); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__1); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__2); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__3); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__4); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__5); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__6); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__7); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__8); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__9); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__10); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__11); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__12); +l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13(); +lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_rwFixEq___lambda__2___closed__13); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__1 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__1(); lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__1); l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__2 = _init_l___private_Lean_Elab_PreDefinition_WF_Eqns_0__Lean_Elab_WF_mkProof_go___lambda__1___closed__2(); @@ -6180,15 +6487,13 @@ l_Lean_Elab_WF_mkEqns___closed__2 = _init_l_Lean_Elab_WF_mkEqns___closed__2(); lean_mark_persistent(l_Lean_Elab_WF_mkEqns___closed__2); l_Lean_Elab_WF_mkEqns___closed__3 = _init_l_Lean_Elab_WF_mkEqns___closed__3(); lean_mark_persistent(l_Lean_Elab_WF_mkEqns___closed__3); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__1); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__2); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__3); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563____closed__4); -if (builtin) {res = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1563_(lean_io_mk_world()); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__1); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__2); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676____closed__3); +if (builtin) {res = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1676_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Elab_WF_eqnInfoExt = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Elab_WF_eqnInfoExt); @@ -6197,45 +6502,45 @@ lean_dec_ref(res); lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_WF_registerEqnsInfo___spec__3___closed__1); l_Lean_Elab_WF_registerEqnsInfo___closed__1 = _init_l_Lean_Elab_WF_registerEqnsInfo___closed__1(); lean_mark_persistent(l_Lean_Elab_WF_registerEqnsInfo___closed__1); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__1); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__2); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__3); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__4); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__5); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__6); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__7); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__8); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__9); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__10); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__11); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__12); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__13); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__14); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__15); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__16); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__17); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__18); -l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19(); -lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840____closed__19); -if (builtin) {res = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1840_(lean_io_mk_world()); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__1); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__2); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__3); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__4); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__5); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__6); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__7); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__8); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__9); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__10); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__11); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__12); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__13); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__14); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__15); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__16); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__17); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__18); +l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19 = _init_l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19(); +lean_mark_persistent(l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951____closed__19); +if (builtin) {res = l_Lean_Elab_WF_initFn____x40_Lean_Elab_PreDefinition_WF_Eqns___hyg_1951_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/WF/GuessLex.c b/stage0/stdlib/Lean/Elab/PreDefinition/WF/GuessLex.c index fbb8a50ea6..0e8e07e78b 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/WF/GuessLex.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/WF/GuessLex.c @@ -31207,7 +31207,7 @@ lean_inc(x_20); x_21 = lean_ctor_get(x_19, 1); lean_inc(x_21); lean_dec(x_19); -x_22 = lean_ctor_get(x_12, 4); +x_22 = lean_ctor_get(x_12, 5); lean_inc(x_22); lean_dec(x_12); lean_inc(x_10); @@ -31374,7 +31374,7 @@ lean_inc(x_51); x_52 = lean_ctor_get(x_50, 1); lean_inc(x_52); lean_dec(x_50); -x_53 = lean_ctor_get(x_12, 4); +x_53 = lean_ctor_get(x_12, 5); lean_inc(x_53); lean_dec(x_12); lean_inc(x_10); @@ -31694,7 +31694,7 @@ lean_inc(x_53); lean_dec(x_51); x_54 = lean_ctor_get(x_14, 6); lean_inc(x_54); -x_55 = lean_ctor_get(x_54, 4); +x_55 = lean_ctor_get(x_54, 5); lean_inc(x_55); lean_dec(x_54); lean_inc(x_10); @@ -31931,7 +31931,7 @@ lean_inc(x_105); lean_dec(x_103); x_106 = lean_ctor_get(x_14, 6); lean_inc(x_106); -x_107 = lean_ctor_get(x_106, 4); +x_107 = lean_ctor_get(x_106, 5); lean_inc(x_107); lean_dec(x_106); lean_inc(x_10); @@ -32387,7 +32387,7 @@ x_7 = lean_array_uset(x_3, x_2, x_6); x_8 = lean_ctor_get(x_5, 6); lean_inc(x_8); lean_dec(x_5); -x_9 = lean_ctor_get(x_8, 3); +x_9 = lean_ctor_get(x_8, 4); lean_inc(x_9); lean_dec(x_8); x_10 = 1; diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/WF/Main.c b/stage0/stdlib/Lean/Elab/PreDefinition/WF/Main.c index d089ef7833..dbedea1be9 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/WF/Main.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/WF/Main.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Elab.PreDefinition.WF.Main -// Imports: Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.TerminationArgument Lean.Elab.PreDefinition.WF.PackMutual Lean.Elab.PreDefinition.WF.Preprocess Lean.Elab.PreDefinition.WF.Rel Lean.Elab.PreDefinition.WF.Fix Lean.Elab.PreDefinition.WF.Eqns Lean.Elab.PreDefinition.WF.Ite Lean.Elab.PreDefinition.WF.GuessLex +// Imports: Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.TerminationArgument Lean.Elab.PreDefinition.Mutual Lean.Elab.PreDefinition.WF.PackMutual Lean.Elab.PreDefinition.WF.Preprocess Lean.Elab.PreDefinition.WF.Rel Lean.Elab.PreDefinition.WF.Fix Lean.Elab.PreDefinition.WF.Eqns Lean.Elab.PreDefinition.WF.Ite Lean.Elab.PreDefinition.WF.GuessLex #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -13,6461 +13,128 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__6; -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Expr_bindingName_x21(lean_object*); -lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda___at_Lean_Elab_getFixedPrefix___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_Elab_instInhabitedPreDefinition; -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6; lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_guessLex___spec__4(size_t, size_t, lean_object*); -extern lean_object* l_Lean_allowUnsafeReducibility; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_mkAppN(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7(lean_object*, lean_object*); -lean_object* l_Lean_Meta_generateEagerEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__4___closed__1; +lean_object* l_Lean_Elab_Mutual_addPreDefAttributes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_eraseRecAppSyntaxExpr(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___boxed(lean_object*, lean_object*); -lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -size_t lean_uint64_to_usize(uint64_t); -uint64_t lean_uint64_lor(uint64_t, uint64_t); -lean_object* l_Lean_Meta_markAsRecursive(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_CollectFVars_visit___spec__1(lean_object*, lean_object*); -lean_object* l_Lean_Expr_sort___override(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_array_push(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__4; lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2; -static lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1___boxed(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1; -lean_object* lean_mk_array(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t lean_usize_dec_eq(size_t, size_t); -lean_object* l_ST_Prim_Ref_get___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__8(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7; +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1___boxed(lean_object**); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10; -static lean_object* l_Lean_Elab_wfRecursion___lambda__3___closed__1; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3; +lean_object* l_Lean_Elab_Mutual_cleanPreDefs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__1; -static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2; -static lean_object* l_Lean_Elab_varyingVarNames___closed__2; -lean_object* l_Lean_Elab_addAndCompilePartialRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1(lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13; -static lean_object* l_Lean_Elab_varyingVarNames___closed__5; -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet___at_Lean_Elab_getFixedPrefix___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1; -uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17; -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8; lean_object* l_Lean_stringToMessageData(lean_object*); -lean_object* l_Lean_Elab_PreDefinition_filterAttrs(lean_object*, lean_object*); -static uint64_t l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1; -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__2; -lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_MatcherApp_inferMatchType___spec__9(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_maxRecDepth; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__3; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_CollectFVars_visit___spec__2(lean_object*); -static lean_object* l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1; -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3; -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__7; +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3; lean_object* l_Lean_Meta_unfoldDeclsFrom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14; lean_object* l_Lean_Meta_iteToDIte___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13(lean_object*, lean_object*); -lean_object* l_Lean_Kernel_enableDiag(lean_object*, uint8_t); -lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); -uint8_t l_Lean_Kernel_isDiagnosticsEnabled(lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___lambda__2___closed__5; -uint8_t l_Lean_Expr_isLambda(lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__8___closed__1; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__7___closed__1; -size_t lean_usize_of_nat(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6; -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4; -lean_object* l_Lean_Elab_applyAttributesOf(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_instMonadControlTOfMonadControl___rarg(lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1; lean_object* l_Lean_Elab_WF_preprocess___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4___boxed(lean_object**); -lean_object* lean_st_ref_take(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLetDeclImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__6___closed__2; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1; +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__8; static lean_object* l_Lean_Elab_wfRecursion___lambda__6___closed__1; lean_object* l_Lean_Meta_iteToDIte___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_withCommonTelescope___rarg___closed__1; -lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8; -static lean_object* l_Lean_Elab_wfRecursion___lambda__3___closed__2; -LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_nat_div(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Elab_WF_mkFix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall___at_Lean_Elab_getFixedPrefix___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___boxed(lean_object**); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Elab_addNonRec___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__7___closed__2; -lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6; -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__9(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1; -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; lean_object* l_Lean_MessageData_ofFormat(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2; +lean_object* l_Lean_Elab_WF_varyingVarNames(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__5; lean_object* l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_outOfBounds___rarg(lean_object*); -lean_object* l_Lean_Meta_ArgsPacker_curryProj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_whnfForall(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1; lean_object* lean_st_ref_get(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__1___boxed(lean_object*, lean_object*, lean_object*); -lean_object* lean_st_mk_ref(lean_object*, lean_object*); -lean_object* lean_array_to_list(lean_object*); -lean_object* l_ReaderT_instApplicativeOfMonad___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___closed__8; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_ST_Prim_Ref_modifyGetUnsafe___rarg___boxed(lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_levelZero; -static lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4; -lean_object* l_Lean_Elab_abstractNestedProofs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2; -static lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3; -extern lean_object* l_Lean_instInhabitedExpr; -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2; -lean_object* l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(lean_object*, lean_object*, uint8_t); -uint64_t l_Lean_Expr_hash(lean_object*); -lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__6; +lean_object* l_Lean_Elab_WF_registerEqnsInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2; lean_object* l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7; -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t lean_name_eq(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope(lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__8___closed__4; +lean_object* l_Lean_Elab_Mutual_addPreDefsFromUnary(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); -lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Elab_WF_preprocess___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4; -LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5(lean_object*, size_t, size_t); -lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__5___closed__1; -static lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2; -extern lean_object* l_Lean_diagnostics; -static lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___closed__3; -static lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8; -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__4___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3___boxed(lean_object**); lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_guessLex___spec__11(size_t, size_t, lean_object*); -lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_ForEachExpr_visit___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_instMonadControlTOfPure___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2; -uint8_t l_Lean_Expr_binderInfo(lean_object*); -lean_object* l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5; -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1(size_t, size_t, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_wfRecursion___lambda__1___closed__1; -lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_addAndCompileUnsafe___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6(size_t, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_List_mapTR_loop___at_Lean_Elab_addAndCompileUnsafe___spec__2(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__6___closed__4; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16; lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3; lean_object* l_Lean_Elab_WF_guessLex(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_bindingDomain_x21(lean_object*); -lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Lean_ForEachExpr_visit___spec__6(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_WF_elabWFRel___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18; +lean_object* l_Lean_Elab_Mutual_getFixedPrefix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t lean_nat_dec_eq(lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Term_synthesizeInstMVarCore___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__6___closed__3; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1; -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; -static lean_object* l_Lean_Elab_varyingVarNames___closed__7; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1; -static lean_object* l_Lean_Elab_wfRecursion___lambda__5___closed__2; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11; +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9; static lean_object* l_Lean_Elab_wfRecursion___closed__2; -lean_object* l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint64_t lean_uint64_xor(uint64_t, uint64_t); lean_object* l_Lean_Elab_addAsAxiom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_panic_fn(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5; -static lean_object* l_Lean_Elab_wfRecursion___lambda__8___closed__3; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_nat_sub(lean_object*, lean_object*); -lean_object* l_instMonadControlReaderT___lambda__2(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1(lean_object*, lean_object*, size_t, size_t); -lean_object* lean_nat_mul(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10(lean_object*, lean_object*); -uint64_t lean_uint64_shift_left(uint64_t, uint64_t); lean_object* l_Lean_Elab_WF_packMutual(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___closed__4; -lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); -lean_object* l_Array_ofSubarray___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1(size_t, size_t, lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_Core_instMonadCoreM; -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4; -static lean_object* l_Lean_Elab_wfRecursion___lambda__8___closed__2; -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3(lean_object*, size_t, size_t); -static lean_object* l_Lean_Elab_wfRecursion___lambda__1___closed__2; -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_expr_instantiate_rev(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -size_t lean_usize_sub(size_t, size_t); -lean_object* lean_array_mk(lean_object*); -LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_varyingVarNames___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17; size_t lean_usize_add(size_t, size_t); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Lean_Elab_wfRecursion___lambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5; static lean_object* l_Lean_Elab_wfRecursion___closed__1; -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___boxed(lean_object**); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11; -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Expr_bindingBody_x21(lean_object*); -lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12; -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_varyingVarNames___closed__6; -lean_object* lean_string_append(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249_(lean_object*); lean_object* lean_array_get_size(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t lean_nat_dec_le(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1; -lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); +static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15; +lean_object* l_Lean_Elab_WF_preDefsFromUnaryNonRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1; -lean_object* l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_wfRecursion___lambda__2___closed__3; uint8_t l_Lean_Expr_isForall(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go(lean_object*); -static lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16; -uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); -static lean_object* l_Lean_Elab_getFixedPrefix___lambda__2___closed__1; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); -lean_object* lean_expr_instantiate1(lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__1(size_t, size_t, lean_object*); -lean_object* l_ReaderT_instMonad___rarg(lean_object*); -size_t lean_usize_land(size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_instMonadControlReaderT___lambda__3___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = lean_ctor_get(x_1, 3); -lean_inc(x_14); -lean_dec(x_1); -x_15 = l_Lean_Expr_const___override(x_14, x_2); -x_16 = l_Lean_mkAppN(x_15, x_5); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -x_17 = l_Lean_Meta_ArgsPacker_curryProj(x_3, x_16, x_4, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); -x_19 = lean_ctor_get(x_17, 1); -lean_inc(x_19); -lean_dec(x_17); -x_20 = 0; -x_21 = 1; -x_22 = 1; -x_23 = l_Lean_Meta_mkLambdaFVars(x_5, x_18, x_20, x_21, x_20, x_22, x_9, x_10, x_11, x_12, x_19); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -return x_23; -} -else -{ -uint8_t x_24; -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -x_24 = !lean_is_exclusive(x_17); -if (x_24 == 0) -{ -return x_17; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_17, 0); -x_26 = lean_ctor_get(x_17, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_17); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { -_start: -{ -lean_object* x_18; uint8_t x_19; lean_object* x_20; -x_18 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_18, 0, x_1); -lean_ctor_set(x_18, 1, x_3); -lean_ctor_set(x_18, 2, x_4); -lean_ctor_set(x_18, 3, x_5); -lean_ctor_set(x_18, 4, x_6); -lean_ctor_set(x_18, 5, x_7); -lean_ctor_set(x_18, 6, x_8); -lean_ctor_set_uint8(x_18, sizeof(void*)*7, x_2); -x_19 = 0; -x_20 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_18, x_19, x_9, x_19, x_11, x_12, x_13, x_14, x_15, x_16, x_17); -if (lean_obj_tag(x_20) == 0) -{ -uint8_t x_21; -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_20, 0); -lean_dec(x_22); -x_23 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -lean_ctor_set(x_20, 0, x_23); -return x_20; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_20, 1); -lean_inc(x_24); -lean_dec(x_20); -x_25 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_24); -return x_26; -} -} -else -{ -uint8_t x_27; -x_27 = !lean_is_exclusive(x_20); -if (x_27 == 0) -{ -return x_20; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_20, 0); -x_29 = lean_ctor_get(x_20, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_20); -x_30 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; -} -} -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Elab", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("definition", 10, 10); -return x_1; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("wf", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1; -x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2; -x_3 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("", 0, 0); -return x_1; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" := ", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { -_start: -{ -lean_object* x_20; uint8_t x_21; -x_20 = lean_ctor_get(x_8, 1); -x_21 = lean_nat_dec_lt(x_10, x_20); -if (x_21 == 0) -{ -lean_object* x_22; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_9); -lean_ctor_set(x_22, 1, x_19); -return x_22; -} -else -{ -lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; lean_object* x_34; -lean_dec(x_9); -x_23 = lean_array_fget(x_3, x_10); -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -x_25 = lean_ctor_get_uint8(x_23, sizeof(void*)*7); -x_26 = lean_ctor_get(x_23, 1); -lean_inc(x_26); -x_27 = lean_ctor_get(x_23, 2); -lean_inc(x_27); -x_28 = lean_ctor_get(x_23, 3); -lean_inc(x_28); -x_29 = lean_ctor_get(x_23, 4); -lean_inc(x_29); -x_30 = lean_ctor_get(x_23, 6); -lean_inc(x_30); -lean_dec(x_23); -lean_inc(x_1); -x_31 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_31, 0, x_1); -lean_inc(x_10); -lean_inc(x_2); -lean_inc(x_5); -lean_inc(x_4); -x_32 = lean_alloc_closure((void*)(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1___boxed), 13, 4); -lean_closure_set(x_32, 0, x_4); -lean_closure_set(x_32, 1, x_5); -lean_closure_set(x_32, 2, x_2); -lean_closure_set(x_32, 3, x_10); -x_33 = 0; -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_29); -x_34 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_29, x_31, x_32, x_33, x_13, x_14, x_15, x_16, x_17, x_18, x_19); -if (lean_obj_tag(x_34) == 0) -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); -lean_dec(x_34); -x_37 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; -x_38 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_37, x_13, x_14, x_15, x_16, x_17, x_18, x_36); -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -x_40 = lean_unbox(x_39); -lean_dec(x_39); -if (x_40 == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_38, 1); -lean_inc(x_41); -lean_dec(x_38); -x_42 = lean_box(0); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -x_43 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(x_24, x_25, x_26, x_27, x_28, x_29, x_35, x_30, x_6, x_42, x_13, x_14, x_15, x_16, x_17, x_18, x_41); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -if (lean_obj_tag(x_44) == 0) -{ -uint8_t x_45; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_45 = !lean_is_exclusive(x_43); -if (x_45 == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_43, 0); -lean_dec(x_46); -x_47 = lean_ctor_get(x_44, 0); -lean_inc(x_47); -lean_dec(x_44); -lean_ctor_set(x_43, 0, x_47); -return x_43; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_43, 1); -lean_inc(x_48); -lean_dec(x_43); -x_49 = lean_ctor_get(x_44, 0); -lean_inc(x_49); -lean_dec(x_44); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_48); -return x_50; -} -} -else -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_51 = lean_ctor_get(x_43, 1); -lean_inc(x_51); -lean_dec(x_43); -x_52 = lean_ctor_get(x_44, 0); -lean_inc(x_52); -lean_dec(x_44); -x_53 = lean_ctor_get(x_8, 2); -x_54 = lean_nat_add(x_10, x_53); -lean_dec(x_10); -x_9 = x_52; -x_10 = x_54; -x_11 = lean_box(0); -x_12 = lean_box(0); -x_19 = x_51; -goto _start; -} -} -else -{ -uint8_t x_56; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_56 = !lean_is_exclusive(x_43); -if (x_56 == 0) -{ -return x_43; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_43, 0); -x_58 = lean_ctor_get(x_43, 1); -lean_inc(x_58); -lean_inc(x_57); -lean_dec(x_43); -x_59 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -return x_59; -} -} -} -else -{ -uint8_t x_60; -x_60 = !lean_is_exclusive(x_38); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_61 = lean_ctor_get(x_38, 1); -x_62 = lean_ctor_get(x_38, 0); -lean_dec(x_62); -lean_inc(x_28); -x_63 = l_Lean_MessageData_ofName(x_28); -x_64 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; -lean_ctor_set_tag(x_38, 7); -lean_ctor_set(x_38, 1, x_63); -lean_ctor_set(x_38, 0, x_64); -x_65 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8; -x_66 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_66, 0, x_38); -lean_ctor_set(x_66, 1, x_65); -lean_inc(x_35); -x_67 = l_Lean_MessageData_ofExpr(x_35); -x_68 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -x_69 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_69, 0, x_68); -lean_ctor_set(x_69, 1, x_64); -x_70 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_37, x_69, x_13, x_14, x_15, x_16, x_17, x_18, x_61); -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_ctor_get(x_70, 1); -lean_inc(x_72); -lean_dec(x_70); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -x_73 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(x_24, x_25, x_26, x_27, x_28, x_29, x_35, x_30, x_6, x_71, x_13, x_14, x_15, x_16, x_17, x_18, x_72); -lean_dec(x_71); -if (lean_obj_tag(x_73) == 0) -{ -lean_object* x_74; -x_74 = lean_ctor_get(x_73, 0); -lean_inc(x_74); -if (lean_obj_tag(x_74) == 0) -{ -uint8_t x_75; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_75 = !lean_is_exclusive(x_73); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; -x_76 = lean_ctor_get(x_73, 0); -lean_dec(x_76); -x_77 = lean_ctor_get(x_74, 0); -lean_inc(x_77); -lean_dec(x_74); -lean_ctor_set(x_73, 0, x_77); -return x_73; -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_73, 1); -lean_inc(x_78); -lean_dec(x_73); -x_79 = lean_ctor_get(x_74, 0); -lean_inc(x_79); -lean_dec(x_74); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_79); -lean_ctor_set(x_80, 1, x_78); -return x_80; -} -} -else -{ -lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_81 = lean_ctor_get(x_73, 1); -lean_inc(x_81); -lean_dec(x_73); -x_82 = lean_ctor_get(x_74, 0); -lean_inc(x_82); -lean_dec(x_74); -x_83 = lean_ctor_get(x_8, 2); -x_84 = lean_nat_add(x_10, x_83); -lean_dec(x_10); -x_9 = x_82; -x_10 = x_84; -x_11 = lean_box(0); -x_12 = lean_box(0); -x_19 = x_81; -goto _start; -} -} -else -{ -uint8_t x_86; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_86 = !lean_is_exclusive(x_73); -if (x_86 == 0) -{ -return x_73; -} -else -{ -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_73, 0); -x_88 = lean_ctor_get(x_73, 1); -lean_inc(x_88); -lean_inc(x_87); -lean_dec(x_73); -x_89 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_88); -return x_89; -} -} -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; -x_90 = lean_ctor_get(x_38, 1); -lean_inc(x_90); -lean_dec(x_38); -lean_inc(x_28); -x_91 = l_Lean_MessageData_ofName(x_28); -x_92 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; -x_93 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_91); -x_94 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8; -x_95 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_94); -lean_inc(x_35); -x_96 = l_Lean_MessageData_ofExpr(x_35); -x_97 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_97, 0, x_95); -lean_ctor_set(x_97, 1, x_96); -x_98 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_98, 0, x_97); -lean_ctor_set(x_98, 1, x_92); -x_99 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_37, x_98, x_13, x_14, x_15, x_16, x_17, x_18, x_90); -x_100 = lean_ctor_get(x_99, 0); -lean_inc(x_100); -x_101 = lean_ctor_get(x_99, 1); -lean_inc(x_101); -lean_dec(x_99); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -x_102 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(x_24, x_25, x_26, x_27, x_28, x_29, x_35, x_30, x_6, x_100, x_13, x_14, x_15, x_16, x_17, x_18, x_101); -lean_dec(x_100); -if (lean_obj_tag(x_102) == 0) -{ -lean_object* x_103; -x_103 = lean_ctor_get(x_102, 0); -lean_inc(x_103); -if (lean_obj_tag(x_103) == 0) -{ -lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_104 = lean_ctor_get(x_102, 1); -lean_inc(x_104); -if (lean_is_exclusive(x_102)) { - lean_ctor_release(x_102, 0); - lean_ctor_release(x_102, 1); - x_105 = x_102; -} else { - lean_dec_ref(x_102); - x_105 = lean_box(0); -} -x_106 = lean_ctor_get(x_103, 0); -lean_inc(x_106); -lean_dec(x_103); -if (lean_is_scalar(x_105)) { - x_107 = lean_alloc_ctor(0, 2, 0); -} else { - x_107 = x_105; -} -lean_ctor_set(x_107, 0, x_106); -lean_ctor_set(x_107, 1, x_104); -return x_107; -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; -x_108 = lean_ctor_get(x_102, 1); -lean_inc(x_108); -lean_dec(x_102); -x_109 = lean_ctor_get(x_103, 0); -lean_inc(x_109); -lean_dec(x_103); -x_110 = lean_ctor_get(x_8, 2); -x_111 = lean_nat_add(x_10, x_110); -lean_dec(x_10); -x_9 = x_109; -x_10 = x_111; -x_11 = lean_box(0); -x_12 = lean_box(0); -x_19 = x_108; -goto _start; -} -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_113 = lean_ctor_get(x_102, 0); -lean_inc(x_113); -x_114 = lean_ctor_get(x_102, 1); -lean_inc(x_114); -if (lean_is_exclusive(x_102)) { - lean_ctor_release(x_102, 0); - lean_ctor_release(x_102, 1); - x_115 = x_102; -} else { - lean_dec_ref(x_102); - x_115 = lean_box(0); -} -if (lean_is_scalar(x_115)) { - x_116 = lean_alloc_ctor(1, 2, 0); -} else { - x_116 = x_115; -} -lean_ctor_set(x_116, 0, x_113); -lean_ctor_set(x_116, 1, x_114); -return x_116; -} -} -} -} -else -{ -uint8_t x_117; -lean_dec(x_30); -lean_dec(x_29); -lean_dec(x_28); -lean_dec(x_27); -lean_dec(x_26); -lean_dec(x_24); -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_117 = !lean_is_exclusive(x_34); -if (x_117 == 0) -{ -return x_34; -} -else -{ -lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_118 = lean_ctor_get(x_34, 0); -x_119 = lean_ctor_get(x_34, 1); -lean_inc(x_119); -lean_inc(x_118); -lean_dec(x_34); -x_120 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_120, 0, x_118); -lean_ctor_set(x_120, 1, x_119); -return x_120; -} -} -} -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_12 = lean_ctor_get(x_4, 1); -lean_inc(x_12); -x_13 = lean_box(0); -x_14 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_12, x_13); -lean_inc(x_3); -x_15 = lean_array_to_list(x_3); -x_16 = l_List_mapTR_loop___at_Lean_Elab_addAndCompileUnsafe___spec__2(x_15, x_13); -x_17 = lean_array_get_size(x_3); -x_18 = lean_unsigned_to_nat(0u); -x_19 = lean_unsigned_to_nat(1u); -x_20 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_20, 0, x_18); -lean_ctor_set(x_20, 1, x_17); -lean_ctor_set(x_20, 2, x_19); -x_21 = lean_box(0); -x_22 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1(x_1, x_2, x_3, x_4, x_14, x_16, x_20, x_20, x_21, x_18, lean_box(0), lean_box(0), x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_20); -lean_dec(x_3); -if (lean_obj_tag(x_22) == 0) -{ -uint8_t x_23; -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) -{ -lean_object* x_24; -x_24 = lean_ctor_get(x_22, 0); -lean_dec(x_24); -lean_ctor_set(x_22, 0, x_21); -return x_22; -} -else -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -lean_dec(x_22); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_21); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -else -{ -uint8_t x_27; -x_27 = !lean_is_exclusive(x_22); -if (x_27 == 0) -{ -return x_22; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_22, 0); -x_29 = lean_ctor_get(x_22, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_22); -x_30 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; -} -} -} -} -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; -x_14 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -return x_14; -} -} -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___boxed(lean_object** _args) { -lean_object* x_1 = _args[0]; -lean_object* x_2 = _args[1]; -lean_object* x_3 = _args[2]; -lean_object* x_4 = _args[3]; -lean_object* x_5 = _args[4]; -lean_object* x_6 = _args[5]; -lean_object* x_7 = _args[6]; -lean_object* x_8 = _args[7]; -lean_object* x_9 = _args[8]; -lean_object* x_10 = _args[9]; -lean_object* x_11 = _args[10]; -lean_object* x_12 = _args[11]; -lean_object* x_13 = _args[12]; -lean_object* x_14 = _args[13]; -lean_object* x_15 = _args[14]; -lean_object* x_16 = _args[15]; -lean_object* x_17 = _args[16]; -_start: -{ -uint8_t x_18; lean_object* x_19; -x_18 = lean_unbox(x_2); -lean_dec(x_2); -x_19 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2(x_1, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); -lean_dec(x_10); -return x_19; -} -} -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___boxed(lean_object** _args) { -lean_object* x_1 = _args[0]; -lean_object* x_2 = _args[1]; -lean_object* x_3 = _args[2]; -lean_object* x_4 = _args[3]; -lean_object* x_5 = _args[4]; -lean_object* x_6 = _args[5]; -lean_object* x_7 = _args[6]; -lean_object* x_8 = _args[7]; -lean_object* x_9 = _args[8]; -lean_object* x_10 = _args[9]; -lean_object* x_11 = _args[10]; -lean_object* x_12 = _args[11]; -lean_object* x_13 = _args[12]; -lean_object* x_14 = _args[13]; -lean_object* x_15 = _args[14]; -lean_object* x_16 = _args[15]; -lean_object* x_17 = _args[16]; -lean_object* x_18 = _args[17]; -lean_object* x_19 = _args[18]; -_start: -{ -lean_object* x_20; -x_20 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -return x_20; -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { -_start: -{ -uint8_t x_5; -x_5 = lean_usize_dec_lt(x_3, x_2); -if (x_5 == 0) -{ -return x_4; -} -else -{ -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; -x_6 = lean_array_uget(x_4, x_3); -x_7 = lean_unsigned_to_nat(0u); -x_8 = lean_array_uset(x_4, x_3, x_7); -x_9 = l_Lean_Expr_bindingBody_x21(x_6); -lean_dec(x_6); -x_10 = lean_expr_instantiate1(x_9, x_1); -lean_dec(x_9); -x_11 = 1; -x_12 = lean_usize_add(x_3, x_11); -x_13 = lean_array_uset(x_8, x_3, x_10); -x_3 = x_12; -x_4 = x_13; -goto _start; -} -} -} -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -uint8_t x_13; -x_13 = lean_usize_dec_eq(x_4, x_5); -if (x_13 == 0) -{ -lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_14 = lean_array_uget(x_3, x_4); -x_24 = l_Lean_Expr_bindingDomain_x21(x_14); -lean_dec(x_14); -x_25 = lean_unsigned_to_nat(0u); -x_26 = lean_nat_dec_lt(x_25, x_2); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_27 = l_Lean_instInhabitedExpr; -x_28 = l_outOfBounds___rarg(x_27); -x_29 = l_Lean_Expr_bindingDomain_x21(x_28); -lean_dec(x_28); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_30 = l_Lean_Meta_isExprDefEq(x_24, x_29, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_30) == 0) -{ -lean_object* x_31; uint8_t x_32; -x_31 = lean_ctor_get(x_30, 0); -lean_inc(x_31); -x_32 = lean_unbox(x_31); -lean_dec(x_31); -if (x_32 == 0) -{ -lean_object* x_33; uint8_t x_34; -x_33 = lean_ctor_get(x_30, 1); -lean_inc(x_33); -lean_dec(x_30); -x_34 = 1; -x_15 = x_34; -x_16 = x_33; -goto block_23; -} -else -{ -lean_object* x_35; uint8_t x_36; -x_35 = lean_ctor_get(x_30, 1); -lean_inc(x_35); -lean_dec(x_30); -x_36 = 0; -x_15 = x_36; -x_16 = x_35; -goto block_23; -} -} -else -{ -uint8_t x_37; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_37 = !lean_is_exclusive(x_30); -if (x_37 == 0) -{ -return x_30; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_30, 0); -x_39 = lean_ctor_get(x_30, 1); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_30); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; -} -} -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_array_fget(x_1, x_25); -x_42 = l_Lean_Expr_bindingDomain_x21(x_41); -lean_dec(x_41); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_43 = l_Lean_Meta_isExprDefEq(x_24, x_42, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; uint8_t x_45; -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -x_45 = lean_unbox(x_44); -lean_dec(x_44); -if (x_45 == 0) -{ -lean_object* x_46; uint8_t x_47; -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); -lean_dec(x_43); -x_47 = 1; -x_15 = x_47; -x_16 = x_46; -goto block_23; -} -else -{ -lean_object* x_48; uint8_t x_49; -x_48 = lean_ctor_get(x_43, 1); -lean_inc(x_48); -lean_dec(x_43); -x_49 = 0; -x_15 = x_49; -x_16 = x_48; -goto block_23; -} -} -else -{ -uint8_t x_50; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_50 = !lean_is_exclusive(x_43); -if (x_50 == 0) -{ -return x_43; -} -else -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_43, 0); -x_52 = lean_ctor_get(x_43, 1); -lean_inc(x_52); -lean_inc(x_51); -lean_dec(x_43); -x_53 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_53, 0, x_51); -lean_ctor_set(x_53, 1, x_52); -return x_53; -} -} -} -block_23: -{ -if (x_15 == 0) -{ -size_t x_17; size_t x_18; -x_17 = 1; -x_18 = lean_usize_add(x_4, x_17); -x_4 = x_18; -x_12 = x_16; -goto _start; -} -else -{ -uint8_t x_20; lean_object* x_21; lean_object* x_22; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_20 = 1; -x_21 = lean_box(x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_16); -return x_22; -} -} -} -else -{ -uint8_t x_54; lean_object* x_55; lean_object* x_56; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_54 = 0; -x_55 = lean_box(x_54); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_12); -return x_56; -} -} -} -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3(lean_object* x_1, size_t x_2, size_t x_3) { -_start: -{ -uint8_t x_4; -x_4 = lean_usize_dec_eq(x_2, x_3); -if (x_4 == 0) -{ -lean_object* x_5; uint8_t x_6; -x_5 = lean_array_uget(x_1, x_2); -x_6 = l_Lean_Expr_isLambda(x_5); -lean_dec(x_5); -if (x_6 == 0) -{ -uint8_t x_7; -x_7 = 1; -return x_7; -} -else -{ -size_t x_8; size_t x_9; -x_8 = 1; -x_9 = lean_usize_add(x_2, x_8); -x_2 = x_9; -goto _start; -} -} -else -{ -uint8_t x_11; -x_11 = 0; -return x_11; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; size_t x_13; size_t x_14; lean_object* x_15; lean_object* x_16; -lean_inc(x_4); -x_12 = lean_array_push(x_1, x_4); -x_13 = lean_array_size(x_2); -x_14 = 0; -x_15 = l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1(x_4, x_13, x_14, x_2); -lean_dec(x_4); -x_16 = l_Lean_Elab_withCommonTelescope_go___rarg(x_3, x_12, x_15, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_16; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; lean_object* x_12; lean_object* x_48; uint8_t x_49; -x_11 = lean_array_get_size(x_3); -x_48 = lean_unsigned_to_nat(0u); -x_49 = lean_nat_dec_lt(x_48, x_11); -if (x_49 == 0) -{ -lean_object* x_50; -x_50 = lean_box(0); -x_12 = x_50; -goto block_47; -} -else -{ -size_t x_51; size_t x_52; uint8_t x_53; -x_51 = 0; -x_52 = lean_usize_of_nat(x_11); -x_53 = l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3(x_3, x_51, x_52); -if (x_53 == 0) -{ -lean_object* x_54; -x_54 = lean_box(0); -x_12 = x_54; -goto block_47; -} -else -{ -lean_object* x_55; -lean_dec(x_11); -x_55 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -return x_55; -} -} -block_47: -{ -lean_object* x_13; uint8_t x_14; uint8_t x_15; lean_object* x_16; -lean_dec(x_12); -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_nat_dec_lt(x_13, x_11); -if (x_14 == 0) -{ -uint8_t x_33; -lean_dec(x_11); -x_33 = 1; -x_15 = x_33; -x_16 = x_10; -goto block_32; -} -else -{ -size_t x_34; size_t x_35; lean_object* x_36; -x_34 = 0; -x_35 = lean_usize_of_nat(x_11); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_36 = l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2(x_3, x_11, x_3, x_34, x_35, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_11); -if (lean_obj_tag(x_36) == 0) -{ -lean_object* x_37; uint8_t x_38; -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_unbox(x_37); -lean_dec(x_37); -if (x_38 == 0) -{ -lean_object* x_39; uint8_t x_40; -x_39 = lean_ctor_get(x_36, 1); -lean_inc(x_39); -lean_dec(x_36); -x_40 = 1; -x_15 = x_40; -x_16 = x_39; -goto block_32; -} -else -{ -lean_object* x_41; uint8_t x_42; -x_41 = lean_ctor_get(x_36, 1); -lean_inc(x_41); -lean_dec(x_36); -x_42 = 0; -x_15 = x_42; -x_16 = x_41; -goto block_32; -} -} -else -{ -uint8_t x_43; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_43 = !lean_is_exclusive(x_36); -if (x_43 == 0) -{ -return x_36; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_36, 0); -x_45 = lean_ctor_get(x_36, 1); -lean_inc(x_45); -lean_inc(x_44); -lean_dec(x_36); -x_46 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set(x_46, 1, x_45); -return x_46; -} -} -} -block_32: -{ -if (x_15 == 0) -{ -lean_object* x_17; -x_17 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_16); -return x_17; -} -else -{ -lean_object* x_18; -lean_inc(x_3); -x_18 = lean_alloc_closure((void*)(l_Lean_Elab_withCommonTelescope_go___rarg___lambda__1), 11, 3); -lean_closure_set(x_18, 0, x_2); -lean_closure_set(x_18, 1, x_3); -lean_closure_set(x_18, 2, x_1); -if (x_14 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; -lean_dec(x_3); -x_19 = l_Lean_instInhabitedExpr; -x_20 = l_outOfBounds___rarg(x_19); -x_21 = l_Lean_Expr_bindingName_x21(x_20); -x_22 = l_Lean_Expr_binderInfo(x_20); -x_23 = l_Lean_Expr_bindingDomain_x21(x_20); -lean_dec(x_20); -x_24 = 0; -x_25 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___spec__1___rarg(x_21, x_22, x_23, x_18, x_24, x_4, x_5, x_6, x_7, x_8, x_9, x_16); -return x_25; -} -else -{ -lean_object* x_26; lean_object* x_27; uint8_t x_28; lean_object* x_29; uint8_t x_30; lean_object* x_31; -x_26 = lean_array_fget(x_3, x_13); -lean_dec(x_3); -x_27 = l_Lean_Expr_bindingName_x21(x_26); -x_28 = l_Lean_Expr_binderInfo(x_26); -x_29 = l_Lean_Expr_bindingDomain_x21(x_26); -lean_dec(x_26); -x_30 = 0; -x_31 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_Term_withAuxDecl___spec__1___rarg(x_27, x_28, x_29, x_18, x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_16); -return x_31; -} -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope_go(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Elab_withCommonTelescope_go___rarg), 10, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -size_t x_5; size_t x_6; lean_object* x_7; -x_5 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_6 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_7 = l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope_go___spec__1(x_1, x_5, x_6, x_4); -lean_dec(x_1); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -size_t x_13; size_t x_14; lean_object* x_15; -x_13 = lean_unbox_usize(x_4); -lean_dec(x_4); -x_14 = lean_unbox_usize(x_5); -lean_dec(x_5); -x_15 = l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__2(x_1, x_2, x_3, x_13, x_14, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; -x_4 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_5 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_withCommonTelescope_go___spec__3(x_1, x_4, x_5); -lean_dec(x_1); -x_7 = lean_box(x_6); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1(size_t x_1, size_t x_2, lean_object* x_3) { -_start: -{ -uint8_t x_4; -x_4 = lean_usize_dec_lt(x_2, x_1); -if (x_4 == 0) -{ -return x_3; -} -else -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; -x_5 = lean_array_uget(x_3, x_2); -x_6 = lean_unsigned_to_nat(0u); -x_7 = lean_array_uset(x_3, x_2, x_6); -x_8 = lean_ctor_get(x_5, 5); -lean_inc(x_8); -lean_dec(x_5); -x_9 = 1; -x_10 = lean_usize_add(x_2, x_9); -x_11 = lean_array_uset(x_7, x_2, x_8); -x_2 = x_10; -x_3 = x_11; -goto _start; -} -} -} -static lean_object* _init_l_Lean_Elab_withCommonTelescope___rarg___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_array_size(x_1); -x_11 = 0; -x_12 = l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1(x_10, x_11, x_1); -x_13 = l_Lean_Elab_withCommonTelescope___rarg___closed__1; -x_14 = l_Lean_Elab_withCommonTelescope_go___rarg(x_2, x_13, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -return x_14; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withCommonTelescope(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Elab_withCommonTelescope___rarg), 9, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -size_t x_4; size_t x_5; lean_object* x_6; -x_4 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_5 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_withCommonTelescope___spec__1(x_4, x_5, x_3); -return x_6; -} -} -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4) { -_start: -{ -uint8_t x_5; -x_5 = lean_usize_dec_eq(x_3, x_4); -if (x_5 == 0) -{ -lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_6 = lean_array_uget(x_2, x_3); -x_7 = lean_ctor_get(x_6, 3); -lean_inc(x_7); -lean_dec(x_6); -x_8 = l_Lean_Expr_isAppOf(x_1, x_7); -lean_dec(x_7); -if (x_8 == 0) -{ -size_t x_9; size_t x_10; -x_9 = 1; -x_10 = lean_usize_add(x_3, x_9); -x_3 = x_10; -goto _start; -} -else -{ -uint8_t x_12; -x_12 = 1; -return x_12; -} -} -else -{ -uint8_t x_13; -x_13 = 0; -return x_13; -} -} -} -static uint64_t _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1() { -_start: -{ -uint8_t x_1; uint64_t x_2; -x_1 = 2; -x_2 = l_Lean_Meta_TransparencyMode_toUInt64(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2() { -_start: -{ -uint8_t x_1; lean_object* x_2; lean_object* x_3; -x_1 = 1; -x_2 = lean_box(x_1); -x_3 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_3, 0, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -uint8_t x_16; -x_16 = lean_usize_dec_lt(x_7, x_6); -if (x_16 == 0) -{ -lean_object* x_17; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_8); -lean_ctor_set(x_17, 1, x_15); -return x_17; -} -else -{ -lean_object* x_18; uint8_t x_19; -x_18 = lean_array_uget(x_5, x_7); -x_19 = !lean_is_exclusive(x_8); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_20 = lean_ctor_get(x_8, 1); -x_21 = lean_ctor_get(x_8, 0); -lean_dec(x_21); -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -x_24 = lean_ctor_get(x_20, 2); -lean_inc(x_24); -x_25 = lean_nat_dec_lt(x_23, x_24); -if (x_25 == 0) -{ -lean_object* x_26; -lean_dec(x_24); -lean_dec(x_23); -lean_dec(x_22); -lean_dec(x_18); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_ctor_set(x_8, 0, x_4); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_8); -lean_ctor_set(x_26, 1, x_15); -return x_26; -} -else -{ -uint8_t x_27; -x_27 = !lean_is_exclusive(x_20); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_28 = lean_ctor_get(x_20, 2); -lean_dec(x_28); -x_29 = lean_ctor_get(x_20, 1); -lean_dec(x_29); -x_30 = lean_ctor_get(x_20, 0); -lean_dec(x_30); -x_31 = lean_array_fget(x_22, x_23); -x_32 = lean_unsigned_to_nat(1u); -x_33 = lean_nat_add(x_23, x_32); -lean_dec(x_23); -lean_ctor_set(x_20, 1, x_33); -x_34 = lean_ctor_get(x_11, 0); -lean_inc(x_34); -x_35 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 8); -x_36 = lean_ctor_get(x_11, 1); -lean_inc(x_36); -x_37 = lean_ctor_get(x_11, 2); -lean_inc(x_37); -x_38 = lean_ctor_get(x_11, 3); -lean_inc(x_38); -x_39 = lean_ctor_get(x_11, 4); -lean_inc(x_39); -x_40 = lean_ctor_get(x_11, 5); -lean_inc(x_40); -x_41 = lean_ctor_get(x_11, 6); -lean_inc(x_41); -x_42 = !lean_is_exclusive(x_34); -if (x_42 == 0) -{ -uint8_t x_43; uint8_t x_44; uint8_t x_45; uint8_t x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; uint8_t x_50; uint8_t x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; uint8_t x_55; uint8_t x_56; uint8_t x_57; uint8_t x_58; uint8_t x_59; uint8_t x_60; uint64_t x_61; uint8_t x_62; lean_object* x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; uint64_t x_68; lean_object* x_69; lean_object* x_70; -x_43 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 9); -x_44 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 10); -x_45 = lean_ctor_get_uint8(x_34, 0); -x_46 = lean_ctor_get_uint8(x_34, 1); -x_47 = lean_ctor_get_uint8(x_34, 2); -x_48 = lean_ctor_get_uint8(x_34, 3); -x_49 = lean_ctor_get_uint8(x_34, 4); -x_50 = lean_ctor_get_uint8(x_34, 5); -x_51 = lean_ctor_get_uint8(x_34, 7); -x_52 = lean_ctor_get_uint8(x_34, 8); -x_53 = lean_ctor_get_uint8(x_34, 10); -x_54 = lean_ctor_get_uint8(x_34, 11); -x_55 = lean_ctor_get_uint8(x_34, 12); -x_56 = lean_ctor_get_uint8(x_34, 13); -x_57 = lean_ctor_get_uint8(x_34, 14); -x_58 = lean_ctor_get_uint8(x_34, 15); -x_59 = lean_ctor_get_uint8(x_34, 16); -x_60 = 0; -lean_ctor_set_uint8(x_34, 6, x_60); -x_61 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_34); -lean_dec(x_34); -x_62 = 2; -x_63 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_63, 0, x_45); -lean_ctor_set_uint8(x_63, 1, x_46); -lean_ctor_set_uint8(x_63, 2, x_47); -lean_ctor_set_uint8(x_63, 3, x_48); -lean_ctor_set_uint8(x_63, 4, x_49); -lean_ctor_set_uint8(x_63, 5, x_50); -lean_ctor_set_uint8(x_63, 6, x_60); -lean_ctor_set_uint8(x_63, 7, x_51); -lean_ctor_set_uint8(x_63, 8, x_52); -lean_ctor_set_uint8(x_63, 9, x_62); -lean_ctor_set_uint8(x_63, 10, x_53); -lean_ctor_set_uint8(x_63, 11, x_54); -lean_ctor_set_uint8(x_63, 12, x_55); -lean_ctor_set_uint8(x_63, 13, x_56); -lean_ctor_set_uint8(x_63, 14, x_57); -lean_ctor_set_uint8(x_63, 15, x_58); -lean_ctor_set_uint8(x_63, 16, x_59); -x_64 = 2; -x_65 = lean_uint64_shift_right(x_61, x_64); -x_66 = lean_uint64_shift_left(x_65, x_64); -x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1; -x_68 = lean_uint64_lor(x_66, x_67); -x_69 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_69, 0, x_63); -lean_ctor_set(x_69, 1, x_36); -lean_ctor_set(x_69, 2, x_37); -lean_ctor_set(x_69, 3, x_38); -lean_ctor_set(x_69, 4, x_39); -lean_ctor_set(x_69, 5, x_40); -lean_ctor_set(x_69, 6, x_41); -lean_ctor_set_uint64(x_69, sizeof(void*)*7, x_68); -lean_ctor_set_uint8(x_69, sizeof(void*)*7 + 8, x_35); -lean_ctor_set_uint8(x_69, sizeof(void*)*7 + 9, x_43); -lean_ctor_set_uint8(x_69, sizeof(void*)*7 + 10, x_44); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_70 = l_Lean_Meta_isExprDefEq(x_18, x_31, x_69, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; uint8_t x_72; -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_unbox(x_71); -lean_dec(x_71); -if (x_72 == 0) -{ -uint8_t x_73; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_73 = !lean_is_exclusive(x_70); -if (x_73 == 0) -{ -lean_object* x_74; lean_object* x_75; -x_74 = lean_ctor_get(x_70, 0); -lean_dec(x_74); -x_75 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -lean_ctor_set(x_8, 0, x_75); -lean_ctor_set(x_70, 0, x_8); -return x_70; -} -else -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_70, 1); -lean_inc(x_76); -lean_dec(x_70); -x_77 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -lean_ctor_set(x_8, 0, x_77); -x_78 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_78, 0, x_8); -lean_ctor_set(x_78, 1, x_76); -return x_78; -} -} -else -{ -lean_object* x_79; size_t x_80; size_t x_81; -x_79 = lean_ctor_get(x_70, 1); -lean_inc(x_79); -lean_dec(x_70); -lean_inc(x_4); -lean_ctor_set(x_8, 0, x_4); -x_80 = 1; -x_81 = lean_usize_add(x_7, x_80); -x_7 = x_81; -x_15 = x_79; -goto _start; -} -} -else -{ -uint8_t x_83; -lean_dec(x_20); -lean_free_object(x_8); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_83 = !lean_is_exclusive(x_70); -if (x_83 == 0) -{ -return x_70; -} -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; -x_84 = lean_ctor_get(x_70, 0); -x_85 = lean_ctor_get(x_70, 1); -lean_inc(x_85); -lean_inc(x_84); -lean_dec(x_70); -x_86 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_86, 0, x_84); -lean_ctor_set(x_86, 1, x_85); -return x_86; -} -} -} -else -{ -uint8_t x_87; uint8_t x_88; uint8_t x_89; uint8_t x_90; uint8_t x_91; uint8_t x_92; uint8_t x_93; uint8_t x_94; uint8_t x_95; uint8_t x_96; uint8_t x_97; uint8_t x_98; uint8_t x_99; uint8_t x_100; uint8_t x_101; uint8_t x_102; uint8_t x_103; uint8_t x_104; uint8_t x_105; lean_object* x_106; uint64_t x_107; uint8_t x_108; lean_object* x_109; uint64_t x_110; uint64_t x_111; uint64_t x_112; uint64_t x_113; uint64_t x_114; lean_object* x_115; lean_object* x_116; -x_87 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 9); -x_88 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 10); -x_89 = lean_ctor_get_uint8(x_34, 0); -x_90 = lean_ctor_get_uint8(x_34, 1); -x_91 = lean_ctor_get_uint8(x_34, 2); -x_92 = lean_ctor_get_uint8(x_34, 3); -x_93 = lean_ctor_get_uint8(x_34, 4); -x_94 = lean_ctor_get_uint8(x_34, 5); -x_95 = lean_ctor_get_uint8(x_34, 7); -x_96 = lean_ctor_get_uint8(x_34, 8); -x_97 = lean_ctor_get_uint8(x_34, 9); -x_98 = lean_ctor_get_uint8(x_34, 10); -x_99 = lean_ctor_get_uint8(x_34, 11); -x_100 = lean_ctor_get_uint8(x_34, 12); -x_101 = lean_ctor_get_uint8(x_34, 13); -x_102 = lean_ctor_get_uint8(x_34, 14); -x_103 = lean_ctor_get_uint8(x_34, 15); -x_104 = lean_ctor_get_uint8(x_34, 16); -lean_dec(x_34); -x_105 = 0; -x_106 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_106, 0, x_89); -lean_ctor_set_uint8(x_106, 1, x_90); -lean_ctor_set_uint8(x_106, 2, x_91); -lean_ctor_set_uint8(x_106, 3, x_92); -lean_ctor_set_uint8(x_106, 4, x_93); -lean_ctor_set_uint8(x_106, 5, x_94); -lean_ctor_set_uint8(x_106, 6, x_105); -lean_ctor_set_uint8(x_106, 7, x_95); -lean_ctor_set_uint8(x_106, 8, x_96); -lean_ctor_set_uint8(x_106, 9, x_97); -lean_ctor_set_uint8(x_106, 10, x_98); -lean_ctor_set_uint8(x_106, 11, x_99); -lean_ctor_set_uint8(x_106, 12, x_100); -lean_ctor_set_uint8(x_106, 13, x_101); -lean_ctor_set_uint8(x_106, 14, x_102); -lean_ctor_set_uint8(x_106, 15, x_103); -lean_ctor_set_uint8(x_106, 16, x_104); -x_107 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_106); -lean_dec(x_106); -x_108 = 2; -x_109 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_109, 0, x_89); -lean_ctor_set_uint8(x_109, 1, x_90); -lean_ctor_set_uint8(x_109, 2, x_91); -lean_ctor_set_uint8(x_109, 3, x_92); -lean_ctor_set_uint8(x_109, 4, x_93); -lean_ctor_set_uint8(x_109, 5, x_94); -lean_ctor_set_uint8(x_109, 6, x_105); -lean_ctor_set_uint8(x_109, 7, x_95); -lean_ctor_set_uint8(x_109, 8, x_96); -lean_ctor_set_uint8(x_109, 9, x_108); -lean_ctor_set_uint8(x_109, 10, x_98); -lean_ctor_set_uint8(x_109, 11, x_99); -lean_ctor_set_uint8(x_109, 12, x_100); -lean_ctor_set_uint8(x_109, 13, x_101); -lean_ctor_set_uint8(x_109, 14, x_102); -lean_ctor_set_uint8(x_109, 15, x_103); -lean_ctor_set_uint8(x_109, 16, x_104); -x_110 = 2; -x_111 = lean_uint64_shift_right(x_107, x_110); -x_112 = lean_uint64_shift_left(x_111, x_110); -x_113 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1; -x_114 = lean_uint64_lor(x_112, x_113); -x_115 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_115, 0, x_109); -lean_ctor_set(x_115, 1, x_36); -lean_ctor_set(x_115, 2, x_37); -lean_ctor_set(x_115, 3, x_38); -lean_ctor_set(x_115, 4, x_39); -lean_ctor_set(x_115, 5, x_40); -lean_ctor_set(x_115, 6, x_41); -lean_ctor_set_uint64(x_115, sizeof(void*)*7, x_114); -lean_ctor_set_uint8(x_115, sizeof(void*)*7 + 8, x_35); -lean_ctor_set_uint8(x_115, sizeof(void*)*7 + 9, x_87); -lean_ctor_set_uint8(x_115, sizeof(void*)*7 + 10, x_88); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_116 = l_Lean_Meta_isExprDefEq(x_18, x_31, x_115, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_116) == 0) -{ -lean_object* x_117; uint8_t x_118; -x_117 = lean_ctor_get(x_116, 0); -lean_inc(x_117); -x_118 = lean_unbox(x_117); -lean_dec(x_117); -if (x_118 == 0) -{ -lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_119 = lean_ctor_get(x_116, 1); -lean_inc(x_119); -if (lean_is_exclusive(x_116)) { - lean_ctor_release(x_116, 0); - lean_ctor_release(x_116, 1); - x_120 = x_116; -} else { - lean_dec_ref(x_116); - x_120 = lean_box(0); -} -x_121 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -lean_ctor_set(x_8, 0, x_121); -if (lean_is_scalar(x_120)) { - x_122 = lean_alloc_ctor(0, 2, 0); -} else { - x_122 = x_120; -} -lean_ctor_set(x_122, 0, x_8); -lean_ctor_set(x_122, 1, x_119); -return x_122; -} -else -{ -lean_object* x_123; size_t x_124; size_t x_125; -x_123 = lean_ctor_get(x_116, 1); -lean_inc(x_123); -lean_dec(x_116); -lean_inc(x_4); -lean_ctor_set(x_8, 0, x_4); -x_124 = 1; -x_125 = lean_usize_add(x_7, x_124); -x_7 = x_125; -x_15 = x_123; -goto _start; -} -} -else -{ -lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -lean_dec(x_20); -lean_free_object(x_8); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_127 = lean_ctor_get(x_116, 0); -lean_inc(x_127); -x_128 = lean_ctor_get(x_116, 1); -lean_inc(x_128); -if (lean_is_exclusive(x_116)) { - lean_ctor_release(x_116, 0); - lean_ctor_release(x_116, 1); - x_129 = x_116; -} else { - lean_dec_ref(x_116); - x_129 = lean_box(0); -} -if (lean_is_scalar(x_129)) { - x_130 = lean_alloc_ctor(1, 2, 0); -} else { - x_130 = x_129; -} -lean_ctor_set(x_130, 0, x_127); -lean_ctor_set(x_130, 1, x_128); -return x_130; -} -} -} -else -{ -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; uint8_t x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; uint8_t x_143; uint8_t x_144; uint8_t x_145; uint8_t x_146; uint8_t x_147; uint8_t x_148; uint8_t x_149; uint8_t x_150; uint8_t x_151; uint8_t x_152; uint8_t x_153; uint8_t x_154; uint8_t x_155; uint8_t x_156; uint8_t x_157; uint8_t x_158; uint8_t x_159; uint8_t x_160; lean_object* x_161; uint8_t x_162; lean_object* x_163; uint64_t x_164; uint8_t x_165; lean_object* x_166; uint64_t x_167; uint64_t x_168; uint64_t x_169; uint64_t x_170; uint64_t x_171; lean_object* x_172; lean_object* x_173; -lean_dec(x_20); -x_131 = lean_array_fget(x_22, x_23); -x_132 = lean_unsigned_to_nat(1u); -x_133 = lean_nat_add(x_23, x_132); -lean_dec(x_23); -x_134 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_134, 0, x_22); -lean_ctor_set(x_134, 1, x_133); -lean_ctor_set(x_134, 2, x_24); -x_135 = lean_ctor_get(x_11, 0); -lean_inc(x_135); -x_136 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 8); -x_137 = lean_ctor_get(x_11, 1); -lean_inc(x_137); -x_138 = lean_ctor_get(x_11, 2); -lean_inc(x_138); -x_139 = lean_ctor_get(x_11, 3); -lean_inc(x_139); -x_140 = lean_ctor_get(x_11, 4); -lean_inc(x_140); -x_141 = lean_ctor_get(x_11, 5); -lean_inc(x_141); -x_142 = lean_ctor_get(x_11, 6); -lean_inc(x_142); -x_143 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 9); -x_144 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 10); -x_145 = lean_ctor_get_uint8(x_135, 0); -x_146 = lean_ctor_get_uint8(x_135, 1); -x_147 = lean_ctor_get_uint8(x_135, 2); -x_148 = lean_ctor_get_uint8(x_135, 3); -x_149 = lean_ctor_get_uint8(x_135, 4); -x_150 = lean_ctor_get_uint8(x_135, 5); -x_151 = lean_ctor_get_uint8(x_135, 7); -x_152 = lean_ctor_get_uint8(x_135, 8); -x_153 = lean_ctor_get_uint8(x_135, 9); -x_154 = lean_ctor_get_uint8(x_135, 10); -x_155 = lean_ctor_get_uint8(x_135, 11); -x_156 = lean_ctor_get_uint8(x_135, 12); -x_157 = lean_ctor_get_uint8(x_135, 13); -x_158 = lean_ctor_get_uint8(x_135, 14); -x_159 = lean_ctor_get_uint8(x_135, 15); -x_160 = lean_ctor_get_uint8(x_135, 16); -if (lean_is_exclusive(x_135)) { - x_161 = x_135; -} else { - lean_dec_ref(x_135); - x_161 = lean_box(0); -} -x_162 = 0; -if (lean_is_scalar(x_161)) { - x_163 = lean_alloc_ctor(0, 0, 17); -} else { - x_163 = x_161; -} -lean_ctor_set_uint8(x_163, 0, x_145); -lean_ctor_set_uint8(x_163, 1, x_146); -lean_ctor_set_uint8(x_163, 2, x_147); -lean_ctor_set_uint8(x_163, 3, x_148); -lean_ctor_set_uint8(x_163, 4, x_149); -lean_ctor_set_uint8(x_163, 5, x_150); -lean_ctor_set_uint8(x_163, 6, x_162); -lean_ctor_set_uint8(x_163, 7, x_151); -lean_ctor_set_uint8(x_163, 8, x_152); -lean_ctor_set_uint8(x_163, 9, x_153); -lean_ctor_set_uint8(x_163, 10, x_154); -lean_ctor_set_uint8(x_163, 11, x_155); -lean_ctor_set_uint8(x_163, 12, x_156); -lean_ctor_set_uint8(x_163, 13, x_157); -lean_ctor_set_uint8(x_163, 14, x_158); -lean_ctor_set_uint8(x_163, 15, x_159); -lean_ctor_set_uint8(x_163, 16, x_160); -x_164 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_163); -lean_dec(x_163); -x_165 = 2; -x_166 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_166, 0, x_145); -lean_ctor_set_uint8(x_166, 1, x_146); -lean_ctor_set_uint8(x_166, 2, x_147); -lean_ctor_set_uint8(x_166, 3, x_148); -lean_ctor_set_uint8(x_166, 4, x_149); -lean_ctor_set_uint8(x_166, 5, x_150); -lean_ctor_set_uint8(x_166, 6, x_162); -lean_ctor_set_uint8(x_166, 7, x_151); -lean_ctor_set_uint8(x_166, 8, x_152); -lean_ctor_set_uint8(x_166, 9, x_165); -lean_ctor_set_uint8(x_166, 10, x_154); -lean_ctor_set_uint8(x_166, 11, x_155); -lean_ctor_set_uint8(x_166, 12, x_156); -lean_ctor_set_uint8(x_166, 13, x_157); -lean_ctor_set_uint8(x_166, 14, x_158); -lean_ctor_set_uint8(x_166, 15, x_159); -lean_ctor_set_uint8(x_166, 16, x_160); -x_167 = 2; -x_168 = lean_uint64_shift_right(x_164, x_167); -x_169 = lean_uint64_shift_left(x_168, x_167); -x_170 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1; -x_171 = lean_uint64_lor(x_169, x_170); -x_172 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_172, 0, x_166); -lean_ctor_set(x_172, 1, x_137); -lean_ctor_set(x_172, 2, x_138); -lean_ctor_set(x_172, 3, x_139); -lean_ctor_set(x_172, 4, x_140); -lean_ctor_set(x_172, 5, x_141); -lean_ctor_set(x_172, 6, x_142); -lean_ctor_set_uint64(x_172, sizeof(void*)*7, x_171); -lean_ctor_set_uint8(x_172, sizeof(void*)*7 + 8, x_136); -lean_ctor_set_uint8(x_172, sizeof(void*)*7 + 9, x_143); -lean_ctor_set_uint8(x_172, sizeof(void*)*7 + 10, x_144); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_173 = l_Lean_Meta_isExprDefEq(x_18, x_131, x_172, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_173) == 0) -{ -lean_object* x_174; uint8_t x_175; -x_174 = lean_ctor_get(x_173, 0); -lean_inc(x_174); -x_175 = lean_unbox(x_174); -lean_dec(x_174); -if (x_175 == 0) -{ -lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_176 = lean_ctor_get(x_173, 1); -lean_inc(x_176); -if (lean_is_exclusive(x_173)) { - lean_ctor_release(x_173, 0); - lean_ctor_release(x_173, 1); - x_177 = x_173; -} else { - lean_dec_ref(x_173); - x_177 = lean_box(0); -} -x_178 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -lean_ctor_set(x_8, 1, x_134); -lean_ctor_set(x_8, 0, x_178); -if (lean_is_scalar(x_177)) { - x_179 = lean_alloc_ctor(0, 2, 0); -} else { - x_179 = x_177; -} -lean_ctor_set(x_179, 0, x_8); -lean_ctor_set(x_179, 1, x_176); -return x_179; -} -else -{ -lean_object* x_180; size_t x_181; size_t x_182; -x_180 = lean_ctor_get(x_173, 1); -lean_inc(x_180); -lean_dec(x_173); -lean_inc(x_4); -lean_ctor_set(x_8, 1, x_134); -lean_ctor_set(x_8, 0, x_4); -x_181 = 1; -x_182 = lean_usize_add(x_7, x_181); -x_7 = x_182; -x_15 = x_180; -goto _start; -} -} -else -{ -lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; -lean_dec(x_134); -lean_free_object(x_8); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_184 = lean_ctor_get(x_173, 0); -lean_inc(x_184); -x_185 = lean_ctor_get(x_173, 1); -lean_inc(x_185); -if (lean_is_exclusive(x_173)) { - lean_ctor_release(x_173, 0); - lean_ctor_release(x_173, 1); - x_186 = x_173; -} else { - lean_dec_ref(x_173); - x_186 = lean_box(0); -} -if (lean_is_scalar(x_186)) { - x_187 = lean_alloc_ctor(1, 2, 0); -} else { - x_187 = x_186; -} -lean_ctor_set(x_187, 0, x_184); -lean_ctor_set(x_187, 1, x_185); -return x_187; -} -} -} -} -else -{ -lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; uint8_t x_192; -x_188 = lean_ctor_get(x_8, 1); -lean_inc(x_188); -lean_dec(x_8); -x_189 = lean_ctor_get(x_188, 0); -lean_inc(x_189); -x_190 = lean_ctor_get(x_188, 1); -lean_inc(x_190); -x_191 = lean_ctor_get(x_188, 2); -lean_inc(x_191); -x_192 = lean_nat_dec_lt(x_190, x_191); -if (x_192 == 0) -{ -lean_object* x_193; lean_object* x_194; -lean_dec(x_191); -lean_dec(x_190); -lean_dec(x_189); -lean_dec(x_18); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -x_193 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_193, 0, x_4); -lean_ctor_set(x_193, 1, x_188); -x_194 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_194, 0, x_193); -lean_ctor_set(x_194, 1, x_15); -return x_194; -} -else -{ -lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; uint8_t x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; uint8_t x_208; uint8_t x_209; uint8_t x_210; uint8_t x_211; uint8_t x_212; uint8_t x_213; uint8_t x_214; uint8_t x_215; uint8_t x_216; uint8_t x_217; uint8_t x_218; uint8_t x_219; uint8_t x_220; uint8_t x_221; uint8_t x_222; uint8_t x_223; uint8_t x_224; uint8_t x_225; lean_object* x_226; uint8_t x_227; lean_object* x_228; uint64_t x_229; uint8_t x_230; lean_object* x_231; uint64_t x_232; uint64_t x_233; uint64_t x_234; uint64_t x_235; uint64_t x_236; lean_object* x_237; lean_object* x_238; -if (lean_is_exclusive(x_188)) { - lean_ctor_release(x_188, 0); - lean_ctor_release(x_188, 1); - lean_ctor_release(x_188, 2); - x_195 = x_188; -} else { - lean_dec_ref(x_188); - x_195 = lean_box(0); -} -x_196 = lean_array_fget(x_189, x_190); -x_197 = lean_unsigned_to_nat(1u); -x_198 = lean_nat_add(x_190, x_197); -lean_dec(x_190); -if (lean_is_scalar(x_195)) { - x_199 = lean_alloc_ctor(0, 3, 0); -} else { - x_199 = x_195; -} -lean_ctor_set(x_199, 0, x_189); -lean_ctor_set(x_199, 1, x_198); -lean_ctor_set(x_199, 2, x_191); -x_200 = lean_ctor_get(x_11, 0); -lean_inc(x_200); -x_201 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 8); -x_202 = lean_ctor_get(x_11, 1); -lean_inc(x_202); -x_203 = lean_ctor_get(x_11, 2); -lean_inc(x_203); -x_204 = lean_ctor_get(x_11, 3); -lean_inc(x_204); -x_205 = lean_ctor_get(x_11, 4); -lean_inc(x_205); -x_206 = lean_ctor_get(x_11, 5); -lean_inc(x_206); -x_207 = lean_ctor_get(x_11, 6); -lean_inc(x_207); -x_208 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 9); -x_209 = lean_ctor_get_uint8(x_11, sizeof(void*)*7 + 10); -x_210 = lean_ctor_get_uint8(x_200, 0); -x_211 = lean_ctor_get_uint8(x_200, 1); -x_212 = lean_ctor_get_uint8(x_200, 2); -x_213 = lean_ctor_get_uint8(x_200, 3); -x_214 = lean_ctor_get_uint8(x_200, 4); -x_215 = lean_ctor_get_uint8(x_200, 5); -x_216 = lean_ctor_get_uint8(x_200, 7); -x_217 = lean_ctor_get_uint8(x_200, 8); -x_218 = lean_ctor_get_uint8(x_200, 9); -x_219 = lean_ctor_get_uint8(x_200, 10); -x_220 = lean_ctor_get_uint8(x_200, 11); -x_221 = lean_ctor_get_uint8(x_200, 12); -x_222 = lean_ctor_get_uint8(x_200, 13); -x_223 = lean_ctor_get_uint8(x_200, 14); -x_224 = lean_ctor_get_uint8(x_200, 15); -x_225 = lean_ctor_get_uint8(x_200, 16); -if (lean_is_exclusive(x_200)) { - x_226 = x_200; -} else { - lean_dec_ref(x_200); - x_226 = lean_box(0); -} -x_227 = 0; -if (lean_is_scalar(x_226)) { - x_228 = lean_alloc_ctor(0, 0, 17); -} else { - x_228 = x_226; -} -lean_ctor_set_uint8(x_228, 0, x_210); -lean_ctor_set_uint8(x_228, 1, x_211); -lean_ctor_set_uint8(x_228, 2, x_212); -lean_ctor_set_uint8(x_228, 3, x_213); -lean_ctor_set_uint8(x_228, 4, x_214); -lean_ctor_set_uint8(x_228, 5, x_215); -lean_ctor_set_uint8(x_228, 6, x_227); -lean_ctor_set_uint8(x_228, 7, x_216); -lean_ctor_set_uint8(x_228, 8, x_217); -lean_ctor_set_uint8(x_228, 9, x_218); -lean_ctor_set_uint8(x_228, 10, x_219); -lean_ctor_set_uint8(x_228, 11, x_220); -lean_ctor_set_uint8(x_228, 12, x_221); -lean_ctor_set_uint8(x_228, 13, x_222); -lean_ctor_set_uint8(x_228, 14, x_223); -lean_ctor_set_uint8(x_228, 15, x_224); -lean_ctor_set_uint8(x_228, 16, x_225); -x_229 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_228); -lean_dec(x_228); -x_230 = 2; -x_231 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_231, 0, x_210); -lean_ctor_set_uint8(x_231, 1, x_211); -lean_ctor_set_uint8(x_231, 2, x_212); -lean_ctor_set_uint8(x_231, 3, x_213); -lean_ctor_set_uint8(x_231, 4, x_214); -lean_ctor_set_uint8(x_231, 5, x_215); -lean_ctor_set_uint8(x_231, 6, x_227); -lean_ctor_set_uint8(x_231, 7, x_216); -lean_ctor_set_uint8(x_231, 8, x_217); -lean_ctor_set_uint8(x_231, 9, x_230); -lean_ctor_set_uint8(x_231, 10, x_219); -lean_ctor_set_uint8(x_231, 11, x_220); -lean_ctor_set_uint8(x_231, 12, x_221); -lean_ctor_set_uint8(x_231, 13, x_222); -lean_ctor_set_uint8(x_231, 14, x_223); -lean_ctor_set_uint8(x_231, 15, x_224); -lean_ctor_set_uint8(x_231, 16, x_225); -x_232 = 2; -x_233 = lean_uint64_shift_right(x_229, x_232); -x_234 = lean_uint64_shift_left(x_233, x_232); -x_235 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1; -x_236 = lean_uint64_lor(x_234, x_235); -x_237 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_237, 0, x_231); -lean_ctor_set(x_237, 1, x_202); -lean_ctor_set(x_237, 2, x_203); -lean_ctor_set(x_237, 3, x_204); -lean_ctor_set(x_237, 4, x_205); -lean_ctor_set(x_237, 5, x_206); -lean_ctor_set(x_237, 6, x_207); -lean_ctor_set_uint64(x_237, sizeof(void*)*7, x_236); -lean_ctor_set_uint8(x_237, sizeof(void*)*7 + 8, x_201); -lean_ctor_set_uint8(x_237, sizeof(void*)*7 + 9, x_208); -lean_ctor_set_uint8(x_237, sizeof(void*)*7 + 10, x_209); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -x_238 = l_Lean_Meta_isExprDefEq(x_18, x_196, x_237, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_238) == 0) -{ -lean_object* x_239; uint8_t x_240; -x_239 = lean_ctor_get(x_238, 0); -lean_inc(x_239); -x_240 = lean_unbox(x_239); -lean_dec(x_239); -if (x_240 == 0) -{ -lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_241 = lean_ctor_get(x_238, 1); -lean_inc(x_241); -if (lean_is_exclusive(x_238)) { - lean_ctor_release(x_238, 0); - lean_ctor_release(x_238, 1); - x_242 = x_238; -} else { - lean_dec_ref(x_238); - x_242 = lean_box(0); -} -x_243 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2; -x_244 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_244, 0, x_243); -lean_ctor_set(x_244, 1, x_199); -if (lean_is_scalar(x_242)) { - x_245 = lean_alloc_ctor(0, 2, 0); -} else { - x_245 = x_242; -} -lean_ctor_set(x_245, 0, x_244); -lean_ctor_set(x_245, 1, x_241); -return x_245; -} -else -{ -lean_object* x_246; lean_object* x_247; size_t x_248; size_t x_249; -x_246 = lean_ctor_get(x_238, 1); -lean_inc(x_246); -lean_dec(x_238); -lean_inc(x_4); -x_247 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_247, 0, x_4); -lean_ctor_set(x_247, 1, x_199); -x_248 = 1; -x_249 = lean_usize_add(x_7, x_248); -x_7 = x_249; -x_8 = x_247; -x_15 = x_246; -goto _start; -} -} -else -{ -lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; -lean_dec(x_199); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_4); -x_251 = lean_ctor_get(x_238, 0); -lean_inc(x_251); -x_252 = lean_ctor_get(x_238, 1); -lean_inc(x_252); -if (lean_is_exclusive(x_238)) { - lean_ctor_release(x_238, 0); - lean_ctor_release(x_238, 1); - x_253 = x_238; -} else { - lean_dec_ref(x_238); - x_253 = lean_box(0); -} -if (lean_is_scalar(x_253)) { - x_254 = lean_alloc_ctor(1, 2, 0); -} else { - x_254 = x_253; -} -lean_ctor_set(x_254, 0, x_251); -lean_ctor_set(x_254, 1, x_252); -return x_254; -} -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = lean_apply_9(x_1, x_5, x_2, x_3, x_4, x_6, x_7, x_8, x_9, x_10); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___lambda__1), 10, 4); -lean_closure_set(x_14, 0, x_4); -lean_closure_set(x_14, 1, x_6); -lean_closure_set(x_14, 2, x_7); -lean_closure_set(x_14, 3, x_8); -x_15 = l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(x_1, x_2, x_3, x_14, x_5, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_15) == 0) -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_15); -if (x_16 == 0) -{ -return x_15; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 0); -x_18 = lean_ctor_get(x_15, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -else -{ -uint8_t x_20; -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) -{ -return x_15; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_15, 0); -x_22 = lean_ctor_get(x_15, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_15); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___boxed), 13, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_array_push(x_1, x_5); -x_15 = l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6(x_2, x_3, x_14, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -if (lean_obj_tag(x_4) == 6) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_ctor_get(x_4, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_4, 1); -lean_inc(x_14); -x_15 = lean_ctor_get(x_4, 2); -lean_inc(x_15); -x_16 = lean_ctor_get_uint8(x_4, sizeof(void*)*3 + 8); -lean_dec(x_4); -x_17 = lean_expr_instantiate_rev(x_14, x_3); -lean_dec(x_14); -lean_inc(x_2); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_17); -x_18 = lean_apply_9(x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = lean_alloc_closure((void*)(l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6___lambda__1), 13, 4); -lean_closure_set(x_20, 0, x_3); -lean_closure_set(x_20, 1, x_1); -lean_closure_set(x_20, 2, x_2); -lean_closure_set(x_20, 3, x_15); -x_21 = 0; -x_22 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg(x_13, x_16, x_17, x_20, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_19); -return x_22; -} -else -{ -uint8_t x_23; -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_23 = !lean_is_exclusive(x_18); -if (x_23 == 0) -{ -return x_18; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_18, 0); -x_25 = lean_ctor_get(x_18, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_18); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_1); -x_27 = lean_expr_instantiate_rev(x_4, x_3); -lean_dec(x_3); -lean_dec(x_4); -x_28 = lean_apply_9(x_2, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_28; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLambda___at_Lean_Elab_getFixedPrefix___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; -x_12 = l_Lean_Elab_withCommonTelescope___rarg___closed__1; -x_13 = l_Lean_Meta_visitLambda_visit___at_Lean_Elab_getFixedPrefix___spec__6(x_1, x_2, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___lambda__1), 10, 4); -lean_closure_set(x_14, 0, x_4); -lean_closure_set(x_14, 1, x_6); -lean_closure_set(x_14, 2, x_7); -lean_closure_set(x_14, 3, x_8); -x_15 = l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(x_1, x_2, x_3, x_14, x_5, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_15) == 0) -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_15); -if (x_16 == 0) -{ -return x_15; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 0); -x_18 = lean_ctor_get(x_15, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -else -{ -uint8_t x_20; -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) -{ -return x_15; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_15, 0); -x_22 = lean_ctor_get(x_15, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_15); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg___boxed), 13, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_array_push(x_1, x_5); -x_15 = l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9(x_2, x_3, x_14, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -if (lean_obj_tag(x_4) == 7) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_ctor_get(x_4, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_4, 1); -lean_inc(x_14); -x_15 = lean_ctor_get(x_4, 2); -lean_inc(x_15); -x_16 = lean_ctor_get_uint8(x_4, sizeof(void*)*3 + 8); -lean_dec(x_4); -x_17 = lean_expr_instantiate_rev(x_14, x_3); -lean_dec(x_14); -lean_inc(x_2); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_17); -x_18 = lean_apply_9(x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; -x_19 = lean_ctor_get(x_18, 1); -lean_inc(x_19); -lean_dec(x_18); -x_20 = lean_alloc_closure((void*)(l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9___lambda__1), 13, 4); -lean_closure_set(x_20, 0, x_3); -lean_closure_set(x_20, 1, x_1); -lean_closure_set(x_20, 2, x_2); -lean_closure_set(x_20, 3, x_15); -x_21 = 0; -x_22 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg(x_13, x_16, x_17, x_20, x_21, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_19); -return x_22; -} -else -{ -uint8_t x_23; -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_23 = !lean_is_exclusive(x_18); -if (x_23 == 0) -{ -return x_18; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_18, 0); -x_25 = lean_ctor_get(x_18, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_18); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -} -else -{ -lean_object* x_27; lean_object* x_28; -lean_dec(x_1); -x_27 = lean_expr_instantiate_rev(x_4, x_3); -lean_dec(x_3); -lean_dec(x_4); -x_28 = lean_apply_9(x_2, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_28; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitForall___at_Lean_Elab_getFixedPrefix___spec__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; -x_12 = l_Lean_Elab_withCommonTelescope___rarg___closed__1; -x_13 = l_Lean_Meta_visitForall_visit___at_Lean_Elab_getFixedPrefix___spec__9(x_1, x_2, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___lambda__1), 10, 4); -lean_closure_set(x_14, 0, x_4); -lean_closure_set(x_14, 1, x_6); -lean_closure_set(x_14, 2, x_7); -lean_closure_set(x_14, 3, x_8); -x_15 = l___private_Lean_Meta_Basic_0__Lean_Meta_withLetDeclImp___rarg(x_1, x_2, x_3, x_14, x_5, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_15) == 0) -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_15); -if (x_16 == 0) -{ -return x_15; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_15, 0); -x_18 = lean_ctor_get(x_15, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_15); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -else -{ -uint8_t x_20; -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) -{ -return x_15; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_15, 0); -x_22 = lean_ctor_get(x_15, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_15); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg___boxed), 13, 0); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; lean_object* x_15; -x_14 = lean_array_push(x_1, x_5); -x_15 = l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12(x_2, x_3, x_14, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -if (lean_obj_tag(x_4) == 8) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_13 = lean_ctor_get(x_4, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_4, 1); -lean_inc(x_14); -x_15 = lean_ctor_get(x_4, 2); -lean_inc(x_15); -x_16 = lean_ctor_get(x_4, 3); -lean_inc(x_16); -lean_dec(x_4); -x_17 = lean_expr_instantiate_rev(x_14, x_3); -lean_dec(x_14); -x_18 = lean_expr_instantiate_rev(x_15, x_3); -lean_dec(x_15); -lean_inc(x_2); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_17); -x_19 = lean_apply_9(x_2, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_19, 1); -lean_inc(x_20); -lean_dec(x_19); -lean_inc(x_2); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_18); -x_21 = lean_apply_9(x_2, x_18, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_20); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -lean_dec(x_21); -x_23 = lean_alloc_closure((void*)(l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12___lambda__1), 13, 4); -lean_closure_set(x_23, 0, x_3); -lean_closure_set(x_23, 1, x_1); -lean_closure_set(x_23, 2, x_2); -lean_closure_set(x_23, 3, x_16); -x_24 = 0; -x_25 = l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg(x_13, x_17, x_18, x_23, x_24, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_22); -return x_25; -} -else -{ -uint8_t x_26; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_26 = !lean_is_exclusive(x_21); -if (x_26 == 0) -{ -return x_21; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_21, 0); -x_28 = lean_ctor_get(x_21, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_21); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; -} -} -} -else -{ -uint8_t x_30; -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_30 = !lean_is_exclusive(x_19); -if (x_30 == 0) -{ -return x_19; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_19, 0); -x_32 = lean_ctor_get(x_19, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_19); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_1); -x_34 = lean_expr_instantiate_rev(x_4, x_3); -lean_dec(x_3); -lean_dec(x_4); -x_35 = lean_apply_9(x_2, x_34, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_35; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_visitLet___at_Lean_Elab_getFixedPrefix___spec__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; -x_12 = l_Lean_Elab_withCommonTelescope___rarg___closed__1; -x_13 = l_Lean_Meta_visitLet_visit___at_Lean_Elab_getFixedPrefix___spec__12(x_1, x_2, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; size_t x_12; lean_object* x_13; uint8_t x_14; -x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_array_get_size(x_8); -x_10 = lean_usize_of_nat(x_9); -lean_dec(x_9); -x_11 = lean_usize_sub(x_10, x_1); -x_12 = lean_usize_land(x_2, x_11); -x_13 = lean_array_uget(x_8, x_12); -x_14 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_CollectFVars_visit___spec__1(x_3, x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_15 = lean_unsigned_to_nat(1u); -x_16 = lean_nat_add(x_7, x_15); -lean_dec(x_7); -x_17 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_17, 0, x_3); -lean_ctor_set(x_17, 1, x_4); -lean_ctor_set(x_17, 2, x_13); -x_18 = lean_array_uset(x_8, x_12, x_17); -x_19 = lean_unsigned_to_nat(4u); -x_20 = lean_nat_mul(x_16, x_19); -x_21 = lean_unsigned_to_nat(3u); -x_22 = lean_nat_div(x_20, x_21); -lean_dec(x_20); -x_23 = lean_array_get_size(x_18); -x_24 = lean_nat_dec_le(x_22, x_23); -lean_dec(x_23); -lean_dec(x_22); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_CollectFVars_visit___spec__2(x_18); -lean_ctor_set(x_5, 1, x_25); -lean_ctor_set(x_5, 0, x_16); -x_26 = lean_box(0); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_5); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; -lean_ctor_set(x_5, 1, x_18); -lean_ctor_set(x_5, 0, x_16); -x_28 = lean_box(0); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_5); -return x_29; -} -} -else -{ -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_30 = lean_box(0); -x_31 = lean_array_uset(x_8, x_12, x_30); -x_32 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_ForEachExpr_visit___spec__6(x_3, x_4, x_13); -x_33 = lean_array_uset(x_31, x_12, x_32); -lean_ctor_set(x_5, 1, x_33); -x_34 = lean_box(0); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_5); -return x_35; -} -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; size_t x_39; size_t x_40; size_t x_41; lean_object* x_42; uint8_t x_43; -x_36 = lean_ctor_get(x_5, 0); -x_37 = lean_ctor_get(x_5, 1); -lean_inc(x_37); -lean_inc(x_36); -lean_dec(x_5); -x_38 = lean_array_get_size(x_37); -x_39 = lean_usize_of_nat(x_38); -lean_dec(x_38); -x_40 = lean_usize_sub(x_39, x_1); -x_41 = lean_usize_land(x_2, x_40); -x_42 = lean_array_uget(x_37, x_41); -x_43 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_CollectFVars_visit___spec__1(x_3, x_42); -if (x_43 == 0) -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; -x_44 = lean_unsigned_to_nat(1u); -x_45 = lean_nat_add(x_36, x_44); -lean_dec(x_36); -x_46 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_46, 0, x_3); -lean_ctor_set(x_46, 1, x_4); -lean_ctor_set(x_46, 2, x_42); -x_47 = lean_array_uset(x_37, x_41, x_46); -x_48 = lean_unsigned_to_nat(4u); -x_49 = lean_nat_mul(x_45, x_48); -x_50 = lean_unsigned_to_nat(3u); -x_51 = lean_nat_div(x_49, x_50); -lean_dec(x_49); -x_52 = lean_array_get_size(x_47); -x_53 = lean_nat_dec_le(x_51, x_52); -lean_dec(x_52); -lean_dec(x_51); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_54 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_CollectFVars_visit___spec__2(x_47); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_45); -lean_ctor_set(x_55, 1, x_54); -x_56 = lean_box(0); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_55); -return x_57; -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_58, 0, x_45); -lean_ctor_set(x_58, 1, x_47); -x_59 = lean_box(0); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_58); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_61 = lean_box(0); -x_62 = lean_array_uset(x_37, x_41, x_61); -x_63 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_ForEachExpr_visit___spec__6(x_3, x_4, x_42); -x_64 = lean_array_uset(x_62, x_41, x_63); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_36); -lean_ctor_set(x_65, 1, x_64); -x_66 = lean_box(0); -x_67 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_65); -return x_67; -} -} -} -} -static lean_object* _init_l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1() { -_start: -{ -size_t x_1; lean_object* x_2; -x_1 = 1; -x_2 = lean_box_usize(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; lean_object* x_14; -lean_inc(x_5); -x_13 = lean_alloc_closure((void*)(l_ST_Prim_Ref_get___boxed), 4, 3); -lean_closure_set(x_13, 0, lean_box(0)); -lean_closure_set(x_13, 1, lean_box(0)); -lean_closure_set(x_13, 2, x_5); -lean_inc(x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_14 = lean_apply_9(x_3, lean_box(0), x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_14) == 0) -{ -uint8_t x_15; -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; uint64_t x_24; uint64_t x_25; uint64_t x_26; size_t x_27; size_t x_28; size_t x_29; size_t x_30; size_t x_31; lean_object* x_32; lean_object* x_33; -x_16 = lean_ctor_get(x_14, 0); -x_17 = lean_ctor_get(x_14, 1); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_array_get_size(x_18); -x_20 = l_Lean_Expr_hash(x_4); -x_21 = 32; -x_22 = lean_uint64_shift_right(x_20, x_21); -x_23 = lean_uint64_xor(x_20, x_22); -x_24 = 16; -x_25 = lean_uint64_shift_right(x_23, x_24); -x_26 = lean_uint64_xor(x_23, x_25); -x_27 = lean_uint64_to_usize(x_26); -x_28 = lean_usize_of_nat(x_19); -lean_dec(x_19); -x_29 = 1; -x_30 = lean_usize_sub(x_28, x_29); -x_31 = lean_usize_land(x_27, x_30); -x_32 = lean_array_uget(x_18, x_31); -lean_dec(x_18); -x_33 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_ForEachExpr_visit___spec__1(x_4, x_32); -lean_dec(x_32); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_50; -lean_free_object(x_14); -lean_inc(x_1); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_4); -x_50 = lean_apply_8(x_1, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_17); -if (lean_obj_tag(x_50) == 0) -{ -lean_object* x_51; uint8_t x_52; -x_51 = lean_ctor_get(x_50, 0); -lean_inc(x_51); -x_52 = lean_unbox(x_51); -lean_dec(x_51); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; -lean_dec(x_2); -lean_dec(x_1); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_53); -lean_dec(x_50); -x_54 = lean_box(0); -x_34 = x_54; -x_35 = x_53; -goto block_49; -} -else -{ -switch (lean_obj_tag(x_4)) { -case 5: -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_55 = lean_ctor_get(x_50, 1); -lean_inc(x_55); -lean_dec(x_50); -x_56 = lean_ctor_get(x_4, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_4, 1); -lean_inc(x_57); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_58 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_56, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_55); -if (lean_obj_tag(x_58) == 0) -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_60 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_57, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_59); -if (lean_obj_tag(x_60) == 0) -{ -lean_object* x_61; lean_object* x_62; -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); -lean_inc(x_62); -lean_dec(x_60); -x_34 = x_61; -x_35 = x_62; -goto block_49; -} -else -{ -uint8_t x_63; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_63 = !lean_is_exclusive(x_60); -if (x_63 == 0) -{ -return x_60; -} -else -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_60, 0); -x_65 = lean_ctor_get(x_60, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_60); -x_66 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_66, 0, x_64); -lean_ctor_set(x_66, 1, x_65); -return x_66; -} -} -} -else -{ -uint8_t x_67; -lean_dec(x_57); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_67 = !lean_is_exclusive(x_58); -if (x_67 == 0) -{ -return x_58; -} -else -{ -lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_68 = lean_ctor_get(x_58, 0); -x_69 = lean_ctor_get(x_58, 1); -lean_inc(x_69); -lean_inc(x_68); -lean_dec(x_58); -x_70 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_70, 0, x_68); -lean_ctor_set(x_70, 1, x_69); -return x_70; -} -} -} -case 6: -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_50, 1); -lean_inc(x_71); -lean_dec(x_50); -lean_inc(x_3); -lean_inc(x_2); -x_72 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_72, 0, x_1); -lean_closure_set(x_72, 1, x_2); -lean_closure_set(x_72, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_73 = l_Lean_Meta_visitLambda___at_Lean_Elab_getFixedPrefix___spec__5(x_2, x_72, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_71); -if (lean_obj_tag(x_73) == 0) -{ -lean_object* x_74; lean_object* x_75; -x_74 = lean_ctor_get(x_73, 0); -lean_inc(x_74); -x_75 = lean_ctor_get(x_73, 1); -lean_inc(x_75); -lean_dec(x_73); -x_34 = x_74; -x_35 = x_75; -goto block_49; -} -else -{ -uint8_t x_76; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_76 = !lean_is_exclusive(x_73); -if (x_76 == 0) -{ -return x_73; -} -else -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_77 = lean_ctor_get(x_73, 0); -x_78 = lean_ctor_get(x_73, 1); -lean_inc(x_78); -lean_inc(x_77); -lean_dec(x_73); -x_79 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_79, 0, x_77); -lean_ctor_set(x_79, 1, x_78); -return x_79; -} -} -} -case 7: -{ -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_50, 1); -lean_inc(x_80); -lean_dec(x_50); -lean_inc(x_3); -lean_inc(x_2); -x_81 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_81, 0, x_1); -lean_closure_set(x_81, 1, x_2); -lean_closure_set(x_81, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_82 = l_Lean_Meta_visitForall___at_Lean_Elab_getFixedPrefix___spec__8(x_2, x_81, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_80); -if (lean_obj_tag(x_82) == 0) -{ -lean_object* x_83; lean_object* x_84; -x_83 = lean_ctor_get(x_82, 0); -lean_inc(x_83); -x_84 = lean_ctor_get(x_82, 1); -lean_inc(x_84); -lean_dec(x_82); -x_34 = x_83; -x_35 = x_84; -goto block_49; -} -else -{ -uint8_t x_85; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_85 = !lean_is_exclusive(x_82); -if (x_85 == 0) -{ -return x_82; -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_86 = lean_ctor_get(x_82, 0); -x_87 = lean_ctor_get(x_82, 1); -lean_inc(x_87); -lean_inc(x_86); -lean_dec(x_82); -x_88 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_88, 0, x_86); -lean_ctor_set(x_88, 1, x_87); -return x_88; -} -} -} -case 8: -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_50, 1); -lean_inc(x_89); -lean_dec(x_50); -lean_inc(x_3); -lean_inc(x_2); -x_90 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_90, 0, x_1); -lean_closure_set(x_90, 1, x_2); -lean_closure_set(x_90, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_91 = l_Lean_Meta_visitLet___at_Lean_Elab_getFixedPrefix___spec__11(x_2, x_90, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_89); -if (lean_obj_tag(x_91) == 0) -{ -lean_object* x_92; lean_object* x_93; -x_92 = lean_ctor_get(x_91, 0); -lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 1); -lean_inc(x_93); -lean_dec(x_91); -x_34 = x_92; -x_35 = x_93; -goto block_49; -} -else -{ -uint8_t x_94; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_94 = !lean_is_exclusive(x_91); -if (x_94 == 0) -{ -return x_91; -} -else -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_95 = lean_ctor_get(x_91, 0); -x_96 = lean_ctor_get(x_91, 1); -lean_inc(x_96); -lean_inc(x_95); -lean_dec(x_91); -x_97 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_97, 0, x_95); -lean_ctor_set(x_97, 1, x_96); -return x_97; -} -} -} -case 10: -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; -x_98 = lean_ctor_get(x_50, 1); -lean_inc(x_98); -lean_dec(x_50); -x_99 = lean_ctor_get(x_4, 1); -lean_inc(x_99); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_100 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_99, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_98); -if (lean_obj_tag(x_100) == 0) -{ -lean_object* x_101; lean_object* x_102; -x_101 = lean_ctor_get(x_100, 0); -lean_inc(x_101); -x_102 = lean_ctor_get(x_100, 1); -lean_inc(x_102); -lean_dec(x_100); -x_34 = x_101; -x_35 = x_102; -goto block_49; -} -else -{ -uint8_t x_103; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_103 = !lean_is_exclusive(x_100); -if (x_103 == 0) -{ -return x_100; -} -else -{ -lean_object* x_104; lean_object* x_105; lean_object* x_106; -x_104 = lean_ctor_get(x_100, 0); -x_105 = lean_ctor_get(x_100, 1); -lean_inc(x_105); -lean_inc(x_104); -lean_dec(x_100); -x_106 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_105); -return x_106; -} -} -} -case 11: -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_107 = lean_ctor_get(x_50, 1); -lean_inc(x_107); -lean_dec(x_50); -x_108 = lean_ctor_get(x_4, 2); -lean_inc(x_108); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_109 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_108, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_107); -if (lean_obj_tag(x_109) == 0) -{ -lean_object* x_110; lean_object* x_111; -x_110 = lean_ctor_get(x_109, 0); -lean_inc(x_110); -x_111 = lean_ctor_get(x_109, 1); -lean_inc(x_111); -lean_dec(x_109); -x_34 = x_110; -x_35 = x_111; -goto block_49; -} -else -{ -uint8_t x_112; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_112 = !lean_is_exclusive(x_109); -if (x_112 == 0) -{ -return x_109; -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_ctor_get(x_109, 0); -x_114 = lean_ctor_get(x_109, 1); -lean_inc(x_114); -lean_inc(x_113); -lean_dec(x_109); -x_115 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_114); -return x_115; -} -} -} -default: -{ -lean_object* x_116; lean_object* x_117; -lean_dec(x_2); -lean_dec(x_1); -x_116 = lean_ctor_get(x_50, 1); -lean_inc(x_116); -lean_dec(x_50); -x_117 = lean_box(0); -x_34 = x_117; -x_35 = x_116; -goto block_49; -} -} -} -} -else -{ -uint8_t x_118; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_118 = !lean_is_exclusive(x_50); -if (x_118 == 0) -{ -return x_50; -} -else -{ -lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_119 = lean_ctor_get(x_50, 0); -x_120 = lean_ctor_get(x_50, 1); -lean_inc(x_120); -lean_inc(x_119); -lean_dec(x_50); -x_121 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_121, 0, x_119); -lean_ctor_set(x_121, 1, x_120); -return x_121; -} -} -block_49: -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_36 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1; -x_37 = lean_box_usize(x_27); -lean_inc(x_34); -x_38 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1___boxed), 5, 4); -lean_closure_set(x_38, 0, x_36); -lean_closure_set(x_38, 1, x_37); -lean_closure_set(x_38, 2, x_4); -lean_closure_set(x_38, 3, x_34); -x_39 = lean_alloc_closure((void*)(l_ST_Prim_Ref_modifyGetUnsafe___rarg___boxed), 3, 2); -lean_closure_set(x_39, 0, x_5); -lean_closure_set(x_39, 1, x_38); -x_40 = lean_apply_9(x_3, lean_box(0), x_39, x_6, x_7, x_8, x_9, x_10, x_11, x_35); -if (lean_obj_tag(x_40) == 0) -{ -uint8_t x_41; -x_41 = !lean_is_exclusive(x_40); -if (x_41 == 0) -{ -lean_object* x_42; -x_42 = lean_ctor_get(x_40, 0); -lean_dec(x_42); -lean_ctor_set(x_40, 0, x_34); -return x_40; -} -else -{ -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_40, 1); -lean_inc(x_43); -lean_dec(x_40); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_34); -lean_ctor_set(x_44, 1, x_43); -return x_44; -} -} -else -{ -uint8_t x_45; -lean_dec(x_34); -x_45 = !lean_is_exclusive(x_40); -if (x_45 == 0) -{ -return x_40; -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_ctor_get(x_40, 0); -x_47 = lean_ctor_get(x_40, 1); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_40); -x_48 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_48, 0, x_46); -lean_ctor_set(x_48, 1, x_47); -return x_48; -} -} -} -} -else -{ -lean_object* x_122; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_122 = lean_ctor_get(x_33, 0); -lean_inc(x_122); -lean_dec(x_33); -lean_ctor_set(x_14, 0, x_122); -return x_14; -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; uint64_t x_127; uint64_t x_128; uint64_t x_129; uint64_t x_130; uint64_t x_131; uint64_t x_132; uint64_t x_133; size_t x_134; size_t x_135; size_t x_136; size_t x_137; size_t x_138; lean_object* x_139; lean_object* x_140; -x_123 = lean_ctor_get(x_14, 0); -x_124 = lean_ctor_get(x_14, 1); -lean_inc(x_124); -lean_inc(x_123); -lean_dec(x_14); -x_125 = lean_ctor_get(x_123, 1); -lean_inc(x_125); -lean_dec(x_123); -x_126 = lean_array_get_size(x_125); -x_127 = l_Lean_Expr_hash(x_4); -x_128 = 32; -x_129 = lean_uint64_shift_right(x_127, x_128); -x_130 = lean_uint64_xor(x_127, x_129); -x_131 = 16; -x_132 = lean_uint64_shift_right(x_130, x_131); -x_133 = lean_uint64_xor(x_130, x_132); -x_134 = lean_uint64_to_usize(x_133); -x_135 = lean_usize_of_nat(x_126); -lean_dec(x_126); -x_136 = 1; -x_137 = lean_usize_sub(x_135, x_136); -x_138 = lean_usize_land(x_134, x_137); -x_139 = lean_array_uget(x_125, x_138); -lean_dec(x_125); -x_140 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_ForEachExpr_visit___spec__1(x_4, x_139); -lean_dec(x_139); -if (lean_obj_tag(x_140) == 0) -{ -lean_object* x_141; lean_object* x_142; lean_object* x_156; -lean_inc(x_1); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_4); -x_156 = lean_apply_8(x_1, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_124); -if (lean_obj_tag(x_156) == 0) -{ -lean_object* x_157; uint8_t x_158; -x_157 = lean_ctor_get(x_156, 0); -lean_inc(x_157); -x_158 = lean_unbox(x_157); -lean_dec(x_157); -if (x_158 == 0) -{ -lean_object* x_159; lean_object* x_160; -lean_dec(x_2); -lean_dec(x_1); -x_159 = lean_ctor_get(x_156, 1); -lean_inc(x_159); -lean_dec(x_156); -x_160 = lean_box(0); -x_141 = x_160; -x_142 = x_159; -goto block_155; -} -else -{ -switch (lean_obj_tag(x_4)) { -case 5: -{ -lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; -x_161 = lean_ctor_get(x_156, 1); -lean_inc(x_161); -lean_dec(x_156); -x_162 = lean_ctor_get(x_4, 0); -lean_inc(x_162); -x_163 = lean_ctor_get(x_4, 1); -lean_inc(x_163); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_164 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_162, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_161); -if (lean_obj_tag(x_164) == 0) -{ -lean_object* x_165; lean_object* x_166; -x_165 = lean_ctor_get(x_164, 1); -lean_inc(x_165); -lean_dec(x_164); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_166 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_163, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_165); -if (lean_obj_tag(x_166) == 0) -{ -lean_object* x_167; lean_object* x_168; -x_167 = lean_ctor_get(x_166, 0); -lean_inc(x_167); -x_168 = lean_ctor_get(x_166, 1); -lean_inc(x_168); -lean_dec(x_166); -x_141 = x_167; -x_142 = x_168; -goto block_155; -} -else -{ -lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_169 = lean_ctor_get(x_166, 0); -lean_inc(x_169); -x_170 = lean_ctor_get(x_166, 1); -lean_inc(x_170); -if (lean_is_exclusive(x_166)) { - lean_ctor_release(x_166, 0); - lean_ctor_release(x_166, 1); - x_171 = x_166; -} else { - lean_dec_ref(x_166); - x_171 = lean_box(0); -} -if (lean_is_scalar(x_171)) { - x_172 = lean_alloc_ctor(1, 2, 0); -} else { - x_172 = x_171; -} -lean_ctor_set(x_172, 0, x_169); -lean_ctor_set(x_172, 1, x_170); -return x_172; -} -} -else -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; -lean_dec(x_163); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_173 = lean_ctor_get(x_164, 0); -lean_inc(x_173); -x_174 = lean_ctor_get(x_164, 1); -lean_inc(x_174); -if (lean_is_exclusive(x_164)) { - lean_ctor_release(x_164, 0); - lean_ctor_release(x_164, 1); - x_175 = x_164; -} else { - lean_dec_ref(x_164); - x_175 = lean_box(0); -} -if (lean_is_scalar(x_175)) { - x_176 = lean_alloc_ctor(1, 2, 0); -} else { - x_176 = x_175; -} -lean_ctor_set(x_176, 0, x_173); -lean_ctor_set(x_176, 1, x_174); -return x_176; -} -} -case 6: -{ -lean_object* x_177; lean_object* x_178; lean_object* x_179; -x_177 = lean_ctor_get(x_156, 1); -lean_inc(x_177); -lean_dec(x_156); -lean_inc(x_3); -lean_inc(x_2); -x_178 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_178, 0, x_1); -lean_closure_set(x_178, 1, x_2); -lean_closure_set(x_178, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_179 = l_Lean_Meta_visitLambda___at_Lean_Elab_getFixedPrefix___spec__5(x_2, x_178, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_177); -if (lean_obj_tag(x_179) == 0) -{ -lean_object* x_180; lean_object* x_181; -x_180 = lean_ctor_get(x_179, 0); -lean_inc(x_180); -x_181 = lean_ctor_get(x_179, 1); -lean_inc(x_181); -lean_dec(x_179); -x_141 = x_180; -x_142 = x_181; -goto block_155; -} -else -{ -lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_182 = lean_ctor_get(x_179, 0); -lean_inc(x_182); -x_183 = lean_ctor_get(x_179, 1); -lean_inc(x_183); -if (lean_is_exclusive(x_179)) { - lean_ctor_release(x_179, 0); - lean_ctor_release(x_179, 1); - x_184 = x_179; -} else { - lean_dec_ref(x_179); - x_184 = lean_box(0); -} -if (lean_is_scalar(x_184)) { - x_185 = lean_alloc_ctor(1, 2, 0); -} else { - x_185 = x_184; -} -lean_ctor_set(x_185, 0, x_182); -lean_ctor_set(x_185, 1, x_183); -return x_185; -} -} -case 7: -{ -lean_object* x_186; lean_object* x_187; lean_object* x_188; -x_186 = lean_ctor_get(x_156, 1); -lean_inc(x_186); -lean_dec(x_156); -lean_inc(x_3); -lean_inc(x_2); -x_187 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_187, 0, x_1); -lean_closure_set(x_187, 1, x_2); -lean_closure_set(x_187, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_188 = l_Lean_Meta_visitForall___at_Lean_Elab_getFixedPrefix___spec__8(x_2, x_187, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_186); -if (lean_obj_tag(x_188) == 0) -{ -lean_object* x_189; lean_object* x_190; -x_189 = lean_ctor_get(x_188, 0); -lean_inc(x_189); -x_190 = lean_ctor_get(x_188, 1); -lean_inc(x_190); -lean_dec(x_188); -x_141 = x_189; -x_142 = x_190; -goto block_155; -} -else -{ -lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_191 = lean_ctor_get(x_188, 0); -lean_inc(x_191); -x_192 = lean_ctor_get(x_188, 1); -lean_inc(x_192); -if (lean_is_exclusive(x_188)) { - lean_ctor_release(x_188, 0); - lean_ctor_release(x_188, 1); - x_193 = x_188; -} else { - lean_dec_ref(x_188); - x_193 = lean_box(0); -} -if (lean_is_scalar(x_193)) { - x_194 = lean_alloc_ctor(1, 2, 0); -} else { - x_194 = x_193; -} -lean_ctor_set(x_194, 0, x_191); -lean_ctor_set(x_194, 1, x_192); -return x_194; -} -} -case 8: -{ -lean_object* x_195; lean_object* x_196; lean_object* x_197; -x_195 = lean_ctor_get(x_156, 1); -lean_inc(x_195); -lean_dec(x_156); -lean_inc(x_3); -lean_inc(x_2); -x_196 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4), 12, 3); -lean_closure_set(x_196, 0, x_1); -lean_closure_set(x_196, 1, x_2); -lean_closure_set(x_196, 2, x_3); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_197 = l_Lean_Meta_visitLet___at_Lean_Elab_getFixedPrefix___spec__11(x_2, x_196, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_195); -if (lean_obj_tag(x_197) == 0) -{ -lean_object* x_198; lean_object* x_199; -x_198 = lean_ctor_get(x_197, 0); -lean_inc(x_198); -x_199 = lean_ctor_get(x_197, 1); -lean_inc(x_199); -lean_dec(x_197); -x_141 = x_198; -x_142 = x_199; -goto block_155; -} -else -{ -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_200 = lean_ctor_get(x_197, 0); -lean_inc(x_200); -x_201 = lean_ctor_get(x_197, 1); -lean_inc(x_201); -if (lean_is_exclusive(x_197)) { - lean_ctor_release(x_197, 0); - lean_ctor_release(x_197, 1); - x_202 = x_197; -} else { - lean_dec_ref(x_197); - x_202 = lean_box(0); -} -if (lean_is_scalar(x_202)) { - x_203 = lean_alloc_ctor(1, 2, 0); -} else { - x_203 = x_202; -} -lean_ctor_set(x_203, 0, x_200); -lean_ctor_set(x_203, 1, x_201); -return x_203; -} -} -case 10: -{ -lean_object* x_204; lean_object* x_205; lean_object* x_206; -x_204 = lean_ctor_get(x_156, 1); -lean_inc(x_204); -lean_dec(x_156); -x_205 = lean_ctor_get(x_4, 1); -lean_inc(x_205); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_206 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_205, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_204); -if (lean_obj_tag(x_206) == 0) -{ -lean_object* x_207; lean_object* x_208; -x_207 = lean_ctor_get(x_206, 0); -lean_inc(x_207); -x_208 = lean_ctor_get(x_206, 1); -lean_inc(x_208); -lean_dec(x_206); -x_141 = x_207; -x_142 = x_208; -goto block_155; -} -else -{ -lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_209 = lean_ctor_get(x_206, 0); -lean_inc(x_209); -x_210 = lean_ctor_get(x_206, 1); -lean_inc(x_210); -if (lean_is_exclusive(x_206)) { - lean_ctor_release(x_206, 0); - lean_ctor_release(x_206, 1); - x_211 = x_206; -} else { - lean_dec_ref(x_206); - x_211 = lean_box(0); -} -if (lean_is_scalar(x_211)) { - x_212 = lean_alloc_ctor(1, 2, 0); -} else { - x_212 = x_211; -} -lean_ctor_set(x_212, 0, x_209); -lean_ctor_set(x_212, 1, x_210); -return x_212; -} -} -case 11: -{ -lean_object* x_213; lean_object* x_214; lean_object* x_215; -x_213 = lean_ctor_get(x_156, 1); -lean_inc(x_213); -lean_dec(x_156); -x_214 = lean_ctor_get(x_4, 2); -lean_inc(x_214); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); -x_215 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_1, x_2, x_3, x_214, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_213); -if (lean_obj_tag(x_215) == 0) -{ -lean_object* x_216; lean_object* x_217; -x_216 = lean_ctor_get(x_215, 0); -lean_inc(x_216); -x_217 = lean_ctor_get(x_215, 1); -lean_inc(x_217); -lean_dec(x_215); -x_141 = x_216; -x_142 = x_217; -goto block_155; -} -else -{ -lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_218 = lean_ctor_get(x_215, 0); -lean_inc(x_218); -x_219 = lean_ctor_get(x_215, 1); -lean_inc(x_219); -if (lean_is_exclusive(x_215)) { - lean_ctor_release(x_215, 0); - lean_ctor_release(x_215, 1); - x_220 = x_215; -} else { - lean_dec_ref(x_215); - x_220 = lean_box(0); -} -if (lean_is_scalar(x_220)) { - x_221 = lean_alloc_ctor(1, 2, 0); -} else { - x_221 = x_220; -} -lean_ctor_set(x_221, 0, x_218); -lean_ctor_set(x_221, 1, x_219); -return x_221; -} -} -default: -{ -lean_object* x_222; lean_object* x_223; -lean_dec(x_2); -lean_dec(x_1); -x_222 = lean_ctor_get(x_156, 1); -lean_inc(x_222); -lean_dec(x_156); -x_223 = lean_box(0); -x_141 = x_223; -x_142 = x_222; -goto block_155; -} -} -} -} -else -{ -lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_224 = lean_ctor_get(x_156, 0); -lean_inc(x_224); -x_225 = lean_ctor_get(x_156, 1); -lean_inc(x_225); -if (lean_is_exclusive(x_156)) { - lean_ctor_release(x_156, 0); - lean_ctor_release(x_156, 1); - x_226 = x_156; -} else { - lean_dec_ref(x_156); - x_226 = lean_box(0); -} -if (lean_is_scalar(x_226)) { - x_227 = lean_alloc_ctor(1, 2, 0); -} else { - x_227 = x_226; -} -lean_ctor_set(x_227, 0, x_224); -lean_ctor_set(x_227, 1, x_225); -return x_227; -} -block_155: -{ -lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; -x_143 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1; -x_144 = lean_box_usize(x_134); -lean_inc(x_141); -x_145 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1___boxed), 5, 4); -lean_closure_set(x_145, 0, x_143); -lean_closure_set(x_145, 1, x_144); -lean_closure_set(x_145, 2, x_4); -lean_closure_set(x_145, 3, x_141); -x_146 = lean_alloc_closure((void*)(l_ST_Prim_Ref_modifyGetUnsafe___rarg___boxed), 3, 2); -lean_closure_set(x_146, 0, x_5); -lean_closure_set(x_146, 1, x_145); -x_147 = lean_apply_9(x_3, lean_box(0), x_146, x_6, x_7, x_8, x_9, x_10, x_11, x_142); -if (lean_obj_tag(x_147) == 0) -{ -lean_object* x_148; lean_object* x_149; lean_object* x_150; -x_148 = lean_ctor_get(x_147, 1); -lean_inc(x_148); -if (lean_is_exclusive(x_147)) { - lean_ctor_release(x_147, 0); - lean_ctor_release(x_147, 1); - x_149 = x_147; -} else { - lean_dec_ref(x_147); - x_149 = lean_box(0); -} -if (lean_is_scalar(x_149)) { - x_150 = lean_alloc_ctor(0, 2, 0); -} else { - x_150 = x_149; -} -lean_ctor_set(x_150, 0, x_141); -lean_ctor_set(x_150, 1, x_148); -return x_150; -} -else -{ -lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; -lean_dec(x_141); -x_151 = lean_ctor_get(x_147, 0); -lean_inc(x_151); -x_152 = lean_ctor_get(x_147, 1); -lean_inc(x_152); -if (lean_is_exclusive(x_147)) { - lean_ctor_release(x_147, 0); - lean_ctor_release(x_147, 1); - x_153 = x_147; -} else { - lean_dec_ref(x_147); - x_153 = lean_box(0); -} -if (lean_is_scalar(x_153)) { - x_154 = lean_alloc_ctor(1, 2, 0); -} else { - x_154 = x_153; -} -lean_ctor_set(x_154, 0, x_151); -lean_ctor_set(x_154, 1, x_152); -return x_154; -} -} -} -else -{ -lean_object* x_228; lean_object* x_229; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_228 = lean_ctor_get(x_140, 0); -lean_inc(x_228); -lean_dec(x_140); -x_229 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_229, 0, x_228); -lean_ctor_set(x_229, 1, x_124); -return x_229; -} -} -} -else -{ -uint8_t x_230; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_230 = !lean_is_exclusive(x_14); -if (x_230 == 0) -{ -return x_14; -} -else -{ -lean_object* x_231; lean_object* x_232; lean_object* x_233; -x_231 = lean_ctor_get(x_14, 0); -x_232 = lean_ctor_get(x_14, 1); -lean_inc(x_232); -lean_inc(x_231); -lean_dec(x_14); -x_233 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_233, 0, x_231); -lean_ctor_set(x_233, 1, x_232); -return x_233; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; uint8_t x_11; -x_10 = lean_apply_1(x_2, x_9); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) -{ -return x_10; -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_10); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -return x_14; -} -} -} -static lean_object* _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1___boxed), 9, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(10u); -x_2 = lean_unsigned_to_nat(1u); -x_3 = l_Nat_nextPowerOfTwo_go(x_1, x_2, lean_box(0)); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2; -x_3 = lean_mk_array(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(0u); -x_2 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_10 = lean_box(0); -x_11 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1; -x_12 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4; -x_13 = lean_st_mk_ref(x_12, x_9); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -lean_inc(x_14); -x_16 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4(x_2, x_10, x_11, x_1, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_15); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_st_ref_get(x_14, x_18); -lean_dec(x_14); -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 0) -{ -lean_object* x_21; -x_21 = lean_ctor_get(x_19, 0); -lean_dec(x_21); -lean_ctor_set(x_19, 0, x_17); -return x_19; -} -else -{ -lean_object* x_22; lean_object* x_23; -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_dec(x_19); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_17); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} -} -else -{ -uint8_t x_24; -lean_dec(x_14); -x_24 = !lean_is_exclusive(x_16); -if (x_24 == 0) -{ -return x_16; -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_16, 0); -x_26 = lean_ctor_get(x_16, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_16); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -uint8_t x_9; lean_object* x_10; lean_object* x_11; -x_9 = 0; -x_10 = lean_box(x_9); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_8); -return x_11; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_levelZero; -x_2 = l_Lean_Expr_sort___override(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1___boxed), 8, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_array_get_size(x_1); -x_16 = lean_unsigned_to_nat(0u); -x_17 = lean_nat_dec_lt(x_16, x_15); -if (x_17 == 0) -{ -uint8_t x_18; lean_object* x_19; lean_object* x_20; -lean_dec(x_15); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -x_18 = 1; -x_19 = lean_box(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_14); -return x_20; -} -else -{ -size_t x_21; size_t x_22; uint8_t x_23; -x_21 = 0; -x_22 = lean_usize_of_nat(x_15); -lean_dec(x_15); -x_23 = l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1(x_7, x_1, x_21, x_22); -if (x_23 == 0) -{ -uint8_t x_24; lean_object* x_25; lean_object* x_26; -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -x_24 = 1; -x_25 = lean_box(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_14); -return x_26; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; uint8_t x_60; -x_27 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_7, x_16); -x_28 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1; -lean_inc(x_27); -x_29 = lean_mk_array(x_27, x_28); -x_30 = lean_unsigned_to_nat(1u); -x_31 = lean_nat_sub(x_27, x_30); -lean_dec(x_27); -x_32 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_7, x_29, x_31); -x_56 = lean_st_ref_take(x_6, x_14); -x_57 = lean_ctor_get(x_56, 0); -lean_inc(x_57); -x_58 = lean_ctor_get(x_56, 1); -lean_inc(x_58); -lean_dec(x_56); -x_59 = lean_array_get_size(x_32); -x_60 = lean_nat_dec_le(x_59, x_57); -if (x_60 == 0) -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_59); -x_61 = lean_st_ref_set(x_6, x_57, x_58); -x_62 = lean_ctor_get(x_61, 1); -lean_inc(x_62); -lean_dec(x_61); -x_33 = x_62; -goto block_55; -} -else -{ -lean_object* x_63; lean_object* x_64; -lean_dec(x_57); -x_63 = lean_st_ref_set(x_6, x_59, x_58); -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -x_33 = x_64; -goto block_55; -} -block_55: -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; size_t x_37; lean_object* x_38; -x_34 = l_Array_toSubarray___rarg(x_2, x_16, x_3); -x_35 = lean_box(0); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_34); -x_37 = lean_array_size(x_32); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -x_38 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2(x_4, x_5, x_32, x_35, x_32, x_37, x_21, x_36, x_8, x_9, x_10, x_11, x_12, x_13, x_33); -lean_dec(x_32); -if (lean_obj_tag(x_38) == 0) -{ -lean_object* x_39; lean_object* x_40; -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -x_40 = lean_ctor_get(x_39, 0); -lean_inc(x_40); -lean_dec(x_39); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_41 = lean_ctor_get(x_38, 1); -lean_inc(x_41); -lean_dec(x_38); -x_42 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2; -x_43 = lean_box(0); -x_44 = lean_apply_8(x_42, x_43, x_8, x_9, x_10, x_11, x_12, x_13, x_41); -return x_44; -} -else -{ -uint8_t x_45; -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_45 = !lean_is_exclusive(x_38); -if (x_45 == 0) -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_38, 0); -lean_dec(x_46); -x_47 = lean_ctor_get(x_40, 0); -lean_inc(x_47); -lean_dec(x_40); -lean_ctor_set(x_38, 0, x_47); -return x_38; -} -else -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_38, 1); -lean_inc(x_48); -lean_dec(x_38); -x_49 = lean_ctor_get(x_40, 0); -lean_inc(x_49); -lean_dec(x_40); -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_48); -return x_50; -} -} -} -else -{ -uint8_t x_51; -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_51 = !lean_is_exclusive(x_38); -if (x_51 == 0) -{ -return x_38; -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_52 = lean_ctor_get(x_38, 0); -x_53 = lean_ctor_get(x_38, 1); -lean_inc(x_53); -lean_inc(x_52); -lean_dec(x_38); -x_54 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_54, 0, x_52); -lean_ctor_set(x_54, 1, x_53); -return x_54; -} -} -} -} -} -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_instMonadControlReaderT___lambda__2), 3, 0); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_instMonadControlReaderT___lambda__3___boxed), 3, 0); -return x_1; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Core_instMonadCoreM; -x_2 = l_ReaderT_instMonad___rarg(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4; -x_2 = l_ReaderT_instApplicativeOfMonad___rarg(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5; -x_2 = lean_ctor_get(x_1, 1); -lean_inc(x_2); -x_3 = l_instMonadControlTOfPure___rarg(x_2); -return x_3; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6; -x_3 = l_instMonadControlTOfMonadControl___rarg(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7; -x_3 = l_instMonadControlTOfMonadControl___rarg(x_1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8; -x_17 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___boxed), 14, 6); -lean_closure_set(x_17, 0, x_1); -lean_closure_set(x_17, 1, x_2); -lean_closure_set(x_17, 2, x_3); -lean_closure_set(x_17, 3, x_4); -lean_closure_set(x_17, 4, x_16); -lean_closure_set(x_17, 5, x_5); -x_18 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3(x_6, x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_18) == 0) -{ -uint8_t x_19; -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); -lean_dec(x_20); -x_21 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_21, 0, x_7); -lean_ctor_set(x_18, 0, x_21); -return x_18; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_18, 1); -lean_inc(x_22); -lean_dec(x_18); -x_23 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_23, 0, x_7); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_22); -return x_24; -} -} -else -{ -uint8_t x_25; -lean_dec(x_7); -x_25 = !lean_is_exclusive(x_18); -if (x_25 == 0) -{ -return x_18; -} -else -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_18, 0); -x_27 = lean_ctor_get(x_18, 1); -lean_inc(x_27); -lean_inc(x_26); -lean_dec(x_18); -x_28 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set(x_28, 1, x_27); -return x_28; -} -} -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(0u); -x_2 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1; -x_2 = lean_box(0); -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { -_start: -{ -uint8_t x_19; -x_19 = lean_usize_dec_lt(x_10, x_9); -if (x_19 == 0) -{ -lean_object* x_20; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_11); -lean_ctor_set(x_20, 1, x_18); -return x_20; -} -else -{ -lean_object* x_21; lean_object* x_22; uint8_t x_23; -lean_dec(x_11); -x_21 = lean_array_uget(x_8, x_10); -x_22 = lean_st_ref_get(x_5, x_18); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_24 = lean_ctor_get(x_22, 0); -x_25 = lean_ctor_get(x_22, 1); -x_26 = lean_unsigned_to_nat(0u); -x_27 = lean_nat_dec_eq(x_24, x_26); -lean_dec(x_24); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; -lean_free_object(x_22); -x_28 = lean_box(0); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_7); -lean_inc(x_5); -lean_inc(x_6); -lean_inc(x_4); -lean_inc(x_2); -lean_inc(x_1); -x_29 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3(x_1, x_2, x_4, x_6, x_5, x_21, x_7, x_28, x_12, x_13, x_14, x_15, x_16, x_17, x_25); -if (lean_obj_tag(x_29) == 0) -{ -lean_object* x_30; -x_30 = lean_ctor_get(x_29, 0); -lean_inc(x_30); -if (lean_obj_tag(x_30) == 0) -{ -uint8_t x_31; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_31 = !lean_is_exclusive(x_29); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_ctor_get(x_29, 0); -lean_dec(x_32); -x_33 = lean_ctor_get(x_30, 0); -lean_inc(x_33); -lean_dec(x_30); -lean_ctor_set(x_29, 0, x_33); -return x_29; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_29, 1); -lean_inc(x_34); -lean_dec(x_29); -x_35 = lean_ctor_get(x_30, 0); -lean_inc(x_35); -lean_dec(x_30); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_34); -return x_36; -} -} -else -{ -lean_object* x_37; lean_object* x_38; size_t x_39; size_t x_40; -x_37 = lean_ctor_get(x_29, 1); -lean_inc(x_37); -lean_dec(x_29); -x_38 = lean_ctor_get(x_30, 0); -lean_inc(x_38); -lean_dec(x_30); -x_39 = 1; -x_40 = lean_usize_add(x_10, x_39); -x_10 = x_40; -x_11 = x_38; -x_18 = x_37; -goto _start; -} -} -else -{ -uint8_t x_42; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_42 = !lean_is_exclusive(x_29); -if (x_42 == 0) -{ -return x_29; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_29, 0); -x_44 = lean_ctor_get(x_29, 1); -lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_29); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_44); -return x_45; -} -} -} -else -{ -lean_object* x_46; -lean_dec(x_21); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_46 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2; -lean_ctor_set(x_22, 0, x_46); -return x_22; -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_47 = lean_ctor_get(x_22, 0); -x_48 = lean_ctor_get(x_22, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_22); -x_49 = lean_unsigned_to_nat(0u); -x_50 = lean_nat_dec_eq(x_47, x_49); -lean_dec(x_47); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = lean_box(0); -lean_inc(x_17); -lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_7); -lean_inc(x_5); -lean_inc(x_6); -lean_inc(x_4); -lean_inc(x_2); -lean_inc(x_1); -x_52 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3(x_1, x_2, x_4, x_6, x_5, x_21, x_7, x_51, x_12, x_13, x_14, x_15, x_16, x_17, x_48); -if (lean_obj_tag(x_52) == 0) -{ -lean_object* x_53; -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -if (lean_obj_tag(x_53) == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_54 = lean_ctor_get(x_52, 1); -lean_inc(x_54); -if (lean_is_exclusive(x_52)) { - lean_ctor_release(x_52, 0); - lean_ctor_release(x_52, 1); - x_55 = x_52; -} else { - lean_dec_ref(x_52); - x_55 = lean_box(0); -} -x_56 = lean_ctor_get(x_53, 0); -lean_inc(x_56); -lean_dec(x_53); -if (lean_is_scalar(x_55)) { - x_57 = lean_alloc_ctor(0, 2, 0); -} else { - x_57 = x_55; -} -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_54); -return x_57; -} -else -{ -lean_object* x_58; lean_object* x_59; size_t x_60; size_t x_61; -x_58 = lean_ctor_get(x_52, 1); -lean_inc(x_58); -lean_dec(x_52); -x_59 = lean_ctor_get(x_53, 0); -lean_inc(x_59); -lean_dec(x_53); -x_60 = 1; -x_61 = lean_usize_add(x_10, x_60); -x_10 = x_61; -x_11 = x_59; -x_18 = x_58; -goto _start; -} -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_63 = lean_ctor_get(x_52, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_52, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_52)) { - lean_ctor_release(x_52, 0); - lean_ctor_release(x_52, 1); - x_65 = x_52; -} else { - lean_dec_ref(x_52); - x_65 = lean_box(0); -} -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(1, 2, 0); -} else { - x_66 = x_65; -} -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; -} -} -else -{ -lean_object* x_67; lean_object* x_68; -lean_dec(x_21); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2; -x_68 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_68, 0, x_67); -lean_ctor_set(x_68, 1, x_48); -return x_68; -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; uint8_t x_11; -x_10 = lean_st_ref_get(x_1, x_9); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) -{ -return x_10; -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_10); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -return x_14; -} -} -} -static lean_object* _init_l_Lean_Elab_getFixedPrefix___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = lean_box(0); -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; size_t x_16; size_t x_17; lean_object* x_18; lean_object* x_19; -x_11 = lean_array_get_size(x_2); -lean_inc(x_11); -x_12 = lean_st_mk_ref(x_11, x_10); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_box(0); -x_16 = lean_array_size(x_3); -x_17 = 0; -x_18 = l_Lean_Elab_getFixedPrefix___lambda__2___closed__1; -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_13); -x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14(x_1, x_2, x_3, x_11, x_13, x_15, x_18, x_3, x_16, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_14); -if (lean_obj_tag(x_19) == 0) -{ -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -lean_dec(x_20); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_19, 1); -lean_inc(x_22); -lean_dec(x_19); -x_23 = lean_box(0); -x_24 = l_Lean_Elab_getFixedPrefix___lambda__1(x_13, x_23, x_4, x_5, x_6, x_7, x_8, x_9, x_22); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_13); -return x_24; -} -else -{ -uint8_t x_25; -lean_dec(x_13); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_25 = !lean_is_exclusive(x_19); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = lean_ctor_get(x_19, 0); -lean_dec(x_26); -x_27 = lean_ctor_get(x_21, 0); -lean_inc(x_27); -lean_dec(x_21); -lean_ctor_set(x_19, 0, x_27); -return x_19; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_19, 1); -lean_inc(x_28); -lean_dec(x_19); -x_29 = lean_ctor_get(x_21, 0); -lean_inc(x_29); -lean_dec(x_21); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_28); -return x_30; -} -} -} -else -{ -uint8_t x_31; -lean_dec(x_13); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_31 = !lean_is_exclusive(x_19); -if (x_31 == 0) -{ -return x_19; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_19, 0); -x_33 = lean_ctor_get(x_19, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_19); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; lean_object* x_10; -lean_inc(x_1); -x_9 = lean_alloc_closure((void*)(l_Lean_Elab_getFixedPrefix___lambda__2___boxed), 10, 1); -lean_closure_set(x_9, 0, x_1); -x_10 = l_Lean_Elab_withCommonTelescope___rarg(x_1, x_9, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -size_t x_5; size_t x_6; uint8_t x_7; lean_object* x_8; -x_5 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_6 = lean_unbox_usize(x_4); -lean_dec(x_4); -x_7 = l_Array_anyMUnsafe_any___at_Lean_Elab_getFixedPrefix___spec__1(x_1, x_2, x_5, x_6); -lean_dec(x_2); -lean_dec(x_1); -x_8 = lean_box(x_7); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -size_t x_16; size_t x_17; lean_object* x_18; -x_16 = lean_unbox_usize(x_6); -lean_dec(x_6); -x_17 = lean_unbox_usize(x_7); -lean_dec(x_7); -x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2(x_1, x_2, x_3, x_4, x_5, x_16, x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_18; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -uint8_t x_14; uint8_t x_15; lean_object* x_16; -x_14 = lean_unbox(x_2); -lean_dec(x_2); -x_15 = lean_unbox(x_5); -lean_dec(x_5); -x_16 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___rarg(x_1, x_14, x_3, x_4, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_16; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__7(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -uint8_t x_14; uint8_t x_15; lean_object* x_16; -x_14 = lean_unbox(x_2); -lean_dec(x_2); -x_15 = lean_unbox(x_5); -lean_dec(x_5); -x_16 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___rarg(x_1, x_14, x_3, x_4, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_16; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Meta_withLocalDecl___at_Lean_Elab_getFixedPrefix___spec__10(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -uint8_t x_14; lean_object* x_15; -x_14 = lean_unbox(x_5); -lean_dec(x_5); -x_15 = l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___rarg(x_1, x_2, x_3, x_4, x_14, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Lean_Meta_withLetDecl___at_Lean_Elab_getFixedPrefix___spec__13(x_1, x_2); -lean_dec(x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -size_t x_6; size_t x_7; lean_object* x_8; -x_6 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_7 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_8 = l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___lambda__1(x_6, x_7, x_3, x_4, x_5); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -lean_object* x_15; -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_1); -return x_15; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -lean_object* x_16; -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_8); -return x_16; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___boxed(lean_object** _args) { -lean_object* x_1 = _args[0]; -lean_object* x_2 = _args[1]; -lean_object* x_3 = _args[2]; -lean_object* x_4 = _args[3]; -lean_object* x_5 = _args[4]; -lean_object* x_6 = _args[5]; -lean_object* x_7 = _args[6]; -lean_object* x_8 = _args[7]; -lean_object* x_9 = _args[8]; -lean_object* x_10 = _args[9]; -lean_object* x_11 = _args[10]; -lean_object* x_12 = _args[11]; -lean_object* x_13 = _args[12]; -lean_object* x_14 = _args[13]; -lean_object* x_15 = _args[14]; -lean_object* x_16 = _args[15]; -lean_object* x_17 = _args[16]; -lean_object* x_18 = _args[17]; -_start: -{ -size_t x_19; size_t x_20; lean_object* x_21; -x_19 = lean_unbox_usize(x_9); -lean_dec(x_9); -x_20 = lean_unbox_usize(x_10); -lean_dec(x_10); -x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_19, x_20, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); -lean_dec(x_8); -lean_dec(x_3); -return x_21; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Elab_getFixedPrefix___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_getFixedPrefix___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_Lean_Elab_getFixedPrefix___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_3); -return x_11; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; -x_9 = lean_array_get_size(x_2); -x_10 = lean_unsigned_to_nat(1u); -x_11 = lean_nat_add(x_1, x_10); -x_12 = lean_nat_dec_eq(x_9, x_11); -lean_dec(x_11); -lean_dec(x_9); -x_13 = lean_box(x_12); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_13); -lean_ctor_set(x_14, 1, x_8); -return x_14; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; uint8_t x_10; -x_8 = lean_array_get_size(x_1); -x_9 = lean_unsigned_to_nat(1u); -x_10 = lean_nat_dec_eq(x_8, x_9); -if (x_10 == 0) -{ -uint8_t x_11; lean_object* x_12; lean_object* x_13; -lean_dec(x_8); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_11 = 0; -x_12 = lean_box(x_11); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_7); -return x_13; -} -else -{ -lean_object* x_14; uint8_t x_15; lean_object* x_16; -x_14 = lean_unsigned_to_nat(0u); -x_15 = lean_nat_dec_lt(x_14, x_8); -lean_dec(x_8); -x_16 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1___boxed), 8, 1); -lean_closure_set(x_16, 0, x_2); -if (x_15 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; -x_17 = l_Lean_Elab_instInhabitedPreDefinition; -x_18 = l_outOfBounds___rarg(x_17); -x_19 = lean_ctor_get(x_18, 5); -lean_inc(x_19); -lean_dec(x_18); -x_20 = 0; -x_21 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_19, x_16, x_20, x_3, x_4, x_5, x_6, x_7); -return x_21; -} -else -{ -lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; -x_22 = lean_array_fget(x_1, x_14); -x_23 = lean_ctor_get(x_22, 5); -lean_inc(x_23); -lean_dec(x_22); -x_24 = 0; -x_25 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_23, x_16, x_24, x_3, x_4, x_5, x_6, x_7); -return x_25; -} -} -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_9; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_1); -return x_8; -} -} -static lean_object* _init_l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instInhabitedMetaM___boxed), 5, 1); -lean_closure_set(x_1, 0, lean_box(0)); -return x_1; -} -} -LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_varyingVarNames___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1; -x_8 = lean_panic_fn(x_7, x_1); -x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); -return x_9; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; -x_8 = lean_array_get_size(x_1); -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_8); -lean_ctor_set(x_9, 1, x_7); -return x_9; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("xs.size = arity\n ", 20, 20); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_varyingVarNames___lambda__2___closed__1; -x_2 = l_Lean_Elab_varyingVarNames___lambda__2___closed__2; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean.Elab.PreDefinition.WF.Main", 31, 31); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean.Elab.varyingVarNames", 25, 25); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Elab_varyingVarNames___lambda__2___closed__4; -x_2 = l_Lean_Elab_varyingVarNames___lambda__2___closed__5; -x_3 = lean_unsigned_to_nat(85u); -x_4 = lean_unsigned_to_nat(4u); -x_5 = l_Lean_Elab_varyingVarNames___lambda__2___closed__3; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; uint8_t x_11; -x_10 = lean_array_get_size(x_3); -x_11 = lean_nat_dec_eq(x_10, x_1); -lean_dec(x_10); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; -lean_dec(x_3); -lean_dec(x_2); -x_12 = l_Lean_Elab_varyingVarNames___lambda__2___closed__6; -x_13 = l_panic___at_Lean_Elab_varyingVarNames___spec__1(x_12, x_5, x_6, x_7, x_8, x_9); -return x_13; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; -x_14 = lean_array_get_size(x_3); -x_15 = l_Array_toSubarray___rarg(x_3, x_2, x_14); -x_16 = l_Array_ofSubarray___rarg(x_15); -lean_dec(x_15); -x_17 = lean_array_size(x_16); -x_18 = 0; -x_19 = l_Array_mapMUnsafe_map___at_Lean_Meta_MatcherApp_inferMatchType___spec__9(x_17, x_18, x_16, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -return x_19; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; -x_10 = lean_ctor_get(x_1, 4); -lean_inc(x_10); -lean_dec(x_1); -lean_inc(x_2); -x_11 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_11, 0, x_2); -x_12 = lean_alloc_closure((void*)(l_Lean_Elab_varyingVarNames___lambda__2___boxed), 9, 2); -lean_closure_set(x_12, 0, x_2); -lean_closure_set(x_12, 1, x_3); -x_13 = 0; -x_14 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_10, x_11, x_12, x_13, x_5, x_6, x_7, x_8, x_9); -return x_14; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_varyingVarNames___lambda__1___boxed), 7, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("fixedPrefixSize ≤ arity\n ", 28, 26); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_varyingVarNames___lambda__2___closed__1; -x_2 = l_Lean_Elab_varyingVarNames___closed__2; -x_3 = lean_string_append(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Elab_varyingVarNames___lambda__2___closed__4; -x_2 = l_Lean_Elab_varyingVarNames___lambda__2___closed__5; -x_3 = lean_unsigned_to_nat(81u); -x_4 = lean_unsigned_to_nat(2u); -x_5 = l_Lean_Elab_varyingVarNames___closed__3; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("well-founded recursion cannot be used, '", 40, 40); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_varyingVarNames___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("' does not take any (non-fixed) arguments", 41, 41); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_varyingVarNames___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_varyingVarNames___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_2, 5); -lean_inc(x_8); -x_9 = l_Lean_Elab_varyingVarNames___closed__1; -x_10 = 0; -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_8, x_9, x_10, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -lean_dec(x_11); -x_14 = lean_nat_dec_le(x_1, x_12); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -lean_dec(x_12); -lean_dec(x_2); -lean_dec(x_1); -x_15 = l_Lean_Elab_varyingVarNames___closed__4; -x_16 = l_panic___at_Lean_Elab_varyingVarNames___spec__1(x_15, x_3, x_4, x_5, x_6, x_13); -return x_16; -} -else -{ -uint8_t x_17; -x_17 = lean_nat_dec_eq(x_12, x_1); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; -x_18 = lean_box(0); -x_19 = l_Lean_Elab_varyingVarNames___lambda__3(x_2, x_12, x_1, x_18, x_3, x_4, x_5, x_6, x_13); -return x_19; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; -lean_dec(x_12); -lean_dec(x_1); -x_20 = lean_ctor_get(x_2, 3); -lean_inc(x_20); -lean_dec(x_2); -x_21 = l_Lean_MessageData_ofName(x_20); -x_22 = l_Lean_Elab_varyingVarNames___closed__6; -x_23 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_21); -x_24 = l_Lean_Elab_varyingVarNames___closed__8; -x_25 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_25, x_3, x_4, x_5, x_6, x_13); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) -{ -return x_26; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_26, 0); -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_26); -x_30 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; -} -} -} -} -else -{ -uint8_t x_31; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_31 = !lean_is_exclusive(x_11); -if (x_31 == 0) -{ -return x_11; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_11, 0); -x_33 = lean_ctor_get(x_11, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_11); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Elab_varyingVarNames___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Elab_varyingVarNames___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_4); -lean_dec(x_1); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_varyingVarNames___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Elab_varyingVarNames___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_4); -return x_10; -} -} +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Array_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__1(size_t x_1, size_t x_2, lean_object* x_3) { _start: { @@ -6698,875 +365,7 @@ return x_58; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -uint8_t x_11; -x_11 = lean_usize_dec_lt(x_2, x_1); -if (x_11 == 0) -{ -lean_object* x_12; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_3); -lean_ctor_set(x_12, 1, x_10); -return x_12; -} -else -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_13 = lean_array_uget(x_3, x_2); -x_14 = lean_unsigned_to_nat(0u); -x_15 = lean_array_uset(x_3, x_2, x_14); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -x_16 = l_Lean_Elab_abstractNestedProofs(x_13, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = 1; -x_20 = lean_usize_add(x_2, x_19); -x_21 = lean_array_uset(x_15, x_2, x_17); -x_2 = x_20; -x_3 = x_21; -x_10 = x_18; -goto _start; -} -else -{ -uint8_t x_23; -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -x_23 = !lean_is_exclusive(x_16); -if (x_23 == 0) -{ -return x_16; -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_24 = lean_ctor_get(x_16, 0); -x_25 = lean_ctor_get(x_16, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_16); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -return x_26; -} -} -} -} -} -static lean_object* _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); -return x_1; -} -} -static lean_object* _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2; -x_2 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_2, 0, x_1); -lean_ctor_set(x_2, 1, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2; -x_2 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_2, 0, x_1); -lean_ctor_set(x_2, 1, x_1); -lean_ctor_set(x_2, 2, x_1); -lean_ctor_set(x_2, 3, x_1); -lean_ctor_set(x_2, 4, x_1); -lean_ctor_set(x_2, 5, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_10 = lean_st_ref_take(x_8, x_9); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = !lean_is_exclusive(x_11); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; -x_14 = lean_ctor_get(x_11, 0); -x_15 = lean_ctor_get(x_11, 4); -lean_dec(x_15); -x_16 = 0; -x_17 = lean_box(0); -x_18 = l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(x_14, x_1, x_2, x_16, x_17); -x_19 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3; -lean_ctor_set(x_11, 4, x_19); -lean_ctor_set(x_11, 0, x_18); -x_20 = lean_st_ref_set(x_8, x_11, x_12); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_st_ref_take(x_6, x_21); -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -lean_dec(x_22); -x_25 = !lean_is_exclusive(x_23); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; -x_26 = lean_ctor_get(x_23, 1); -lean_dec(x_26); -x_27 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4; -lean_ctor_set(x_23, 1, x_27); -x_28 = lean_st_ref_set(x_6, x_23, x_24); -x_29 = !lean_is_exclusive(x_28); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_28, 0); -lean_dec(x_30); -x_31 = lean_box(0); -lean_ctor_set(x_28, 0, x_31); -return x_28; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_28, 1); -lean_inc(x_32); -lean_dec(x_28); -x_33 = lean_box(0); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_32); -return x_34; -} -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_35 = lean_ctor_get(x_23, 0); -x_36 = lean_ctor_get(x_23, 2); -x_37 = lean_ctor_get(x_23, 3); -x_38 = lean_ctor_get(x_23, 4); -lean_inc(x_38); -lean_inc(x_37); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_23); -x_39 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4; -x_40 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_40, 0, x_35); -lean_ctor_set(x_40, 1, x_39); -lean_ctor_set(x_40, 2, x_36); -lean_ctor_set(x_40, 3, x_37); -lean_ctor_set(x_40, 4, x_38); -x_41 = lean_st_ref_set(x_6, x_40, x_24); -x_42 = lean_ctor_get(x_41, 1); -lean_inc(x_42); -if (lean_is_exclusive(x_41)) { - lean_ctor_release(x_41, 0); - lean_ctor_release(x_41, 1); - x_43 = x_41; -} else { - lean_dec_ref(x_41); - x_43 = lean_box(0); -} -x_44 = lean_box(0); -if (lean_is_scalar(x_43)) { - x_45 = lean_alloc_ctor(0, 2, 0); -} else { - x_45 = x_43; -} -lean_ctor_set(x_45, 0, x_44); -lean_ctor_set(x_45, 1, x_42); -return x_45; -} -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_46 = lean_ctor_get(x_11, 0); -x_47 = lean_ctor_get(x_11, 1); -x_48 = lean_ctor_get(x_11, 2); -x_49 = lean_ctor_get(x_11, 3); -x_50 = lean_ctor_get(x_11, 5); -x_51 = lean_ctor_get(x_11, 6); -x_52 = lean_ctor_get(x_11, 7); -lean_inc(x_52); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_49); -lean_inc(x_48); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_11); -x_53 = 0; -x_54 = lean_box(0); -x_55 = l___private_Lean_ReducibilityAttrs_0__Lean_setReducibilityStatusCore(x_46, x_1, x_2, x_53, x_54); -x_56 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3; -x_57 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_47); -lean_ctor_set(x_57, 2, x_48); -lean_ctor_set(x_57, 3, x_49); -lean_ctor_set(x_57, 4, x_56); -lean_ctor_set(x_57, 5, x_50); -lean_ctor_set(x_57, 6, x_51); -lean_ctor_set(x_57, 7, x_52); -x_58 = lean_st_ref_set(x_8, x_57, x_12); -x_59 = lean_ctor_get(x_58, 1); -lean_inc(x_59); -lean_dec(x_58); -x_60 = lean_st_ref_take(x_6, x_59); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); -lean_inc(x_62); -lean_dec(x_60); -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_61, 2); -lean_inc(x_64); -x_65 = lean_ctor_get(x_61, 3); -lean_inc(x_65); -x_66 = lean_ctor_get(x_61, 4); -lean_inc(x_66); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - lean_ctor_release(x_61, 2); - lean_ctor_release(x_61, 3); - lean_ctor_release(x_61, 4); - x_67 = x_61; -} else { - lean_dec_ref(x_61); - x_67 = lean_box(0); -} -x_68 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4; -if (lean_is_scalar(x_67)) { - x_69 = lean_alloc_ctor(0, 5, 0); -} else { - x_69 = x_67; -} -lean_ctor_set(x_69, 0, x_63); -lean_ctor_set(x_69, 1, x_68); -lean_ctor_set(x_69, 2, x_64); -lean_ctor_set(x_69, 3, x_65); -lean_ctor_set(x_69, 4, x_66); -x_70 = lean_st_ref_set(x_6, x_69, x_62); -x_71 = lean_ctor_get(x_70, 1); -lean_inc(x_71); -if (lean_is_exclusive(x_70)) { - lean_ctor_release(x_70, 0); - lean_ctor_release(x_70, 1); - x_72 = x_70; -} else { - lean_dec_ref(x_70); - x_72 = lean_box(0); -} -x_73 = lean_box(0); -if (lean_is_scalar(x_72)) { - x_74 = lean_alloc_ctor(0, 2, 0); -} else { - x_74 = x_72; -} -lean_ctor_set(x_74, 0, x_73); -lean_ctor_set(x_74, 1, x_71); -return x_74; -} -} -} -static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("reducible", 9, 9); -return x_1; -} -} -static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("semireducible", 13, 13); -return x_1; -} -} -static lean_object* _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5(lean_object* x_1, size_t x_2, size_t x_3) { -_start: -{ -uint8_t x_4; -x_4 = lean_usize_dec_eq(x_2, x_3); -if (x_4 == 0) -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_5 = lean_array_uget(x_1, x_2); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -lean_dec(x_5); -x_7 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2; -x_8 = lean_name_eq(x_6, x_7); -if (x_8 == 0) -{ -lean_object* x_9; uint8_t x_10; -x_9 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4; -x_10 = lean_name_eq(x_6, x_9); -lean_dec(x_6); -if (x_10 == 0) -{ -size_t x_11; size_t x_12; -x_11 = 1; -x_12 = lean_usize_add(x_2, x_11); -x_2 = x_12; -goto _start; -} -else -{ -uint8_t x_14; -x_14 = 1; -return x_14; -} -} -else -{ -uint8_t x_15; -lean_dec(x_6); -x_15 = 1; -return x_15; -} -} -else -{ -uint8_t x_16; -x_16 = 0; -return x_16; -} -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -uint8_t x_15; -x_15 = lean_usize_dec_lt(x_6, x_5); -if (x_15 == 0) -{ -lean_object* x_16; -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_7); -lean_ctor_set(x_16, 1, x_14); -return x_16; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_25; lean_object* x_26; uint8_t x_27; -lean_dec(x_7); -x_17 = lean_array_uget(x_4, x_6); -x_25 = lean_ctor_get(x_17, 3); -lean_inc(x_25); -lean_inc(x_25); -x_26 = l_Lean_Meta_markAsRecursive(x_25, x_12, x_13, x_14); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_26, 1); -x_29 = lean_ctor_get(x_26, 0); -lean_dec(x_29); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_25); -x_30 = l_Lean_Meta_generateEagerEqns(x_25, x_10, x_11, x_12, x_13, x_28); -if (lean_obj_tag(x_30) == 0) -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; lean_object* x_35; -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = lean_box(0); -lean_inc(x_17); -lean_ctor_set_tag(x_26, 1); -lean_ctor_set(x_26, 1, x_32); -lean_ctor_set(x_26, 0, x_17); -x_33 = lean_array_mk(x_26); -x_34 = 1; -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_35 = l_Lean_Elab_applyAttributesOf(x_33, x_34, x_8, x_9, x_10, x_11, x_12, x_13, x_31); -lean_dec(x_33); -if (lean_obj_tag(x_35) == 0) -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_36 = lean_ctor_get(x_35, 1); -lean_inc(x_36); -lean_dec(x_35); -x_37 = lean_ctor_get(x_17, 2); -lean_inc(x_37); -lean_dec(x_17); -x_38 = lean_ctor_get(x_37, 2); -lean_inc(x_38); -lean_dec(x_37); -x_39 = lean_array_get_size(x_38); -x_40 = lean_unsigned_to_nat(0u); -x_41 = lean_nat_dec_lt(x_40, x_39); -if (x_41 == 0) -{ -uint8_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -lean_dec(x_39); -lean_dec(x_38); -x_42 = 2; -x_43 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(x_25, x_42, x_8, x_9, x_10, x_11, x_12, x_13, x_36); -x_44 = lean_ctor_get(x_43, 1); -lean_inc(x_44); -lean_dec(x_43); -x_45 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_45; -x_19 = x_44; -goto block_24; -} -else -{ -size_t x_46; uint8_t x_47; -x_46 = lean_usize_of_nat(x_39); -lean_dec(x_39); -x_47 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5(x_38, x_1, x_46); -lean_dec(x_38); -if (x_47 == 0) -{ -uint8_t x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_48 = 2; -x_49 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(x_25, x_48, x_8, x_9, x_10, x_11, x_12, x_13, x_36); -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -lean_dec(x_49); -x_51 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_51; -x_19 = x_50; -goto block_24; -} -else -{ -lean_object* x_52; -lean_dec(x_25); -x_52 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_52; -x_19 = x_36; -goto block_24; -} -} -} -else -{ -uint8_t x_53; -lean_dec(x_25); -lean_dec(x_17); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_53 = !lean_is_exclusive(x_35); -if (x_53 == 0) -{ -return x_35; -} -else -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_54 = lean_ctor_get(x_35, 0); -x_55 = lean_ctor_get(x_35, 1); -lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_35); -x_56 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_56, 0, x_54); -lean_ctor_set(x_56, 1, x_55); -return x_56; -} -} -} -else -{ -uint8_t x_57; -lean_free_object(x_26); -lean_dec(x_25); -lean_dec(x_17); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_57 = !lean_is_exclusive(x_30); -if (x_57 == 0) -{ -return x_30; -} -else -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_30, 0); -x_59 = lean_ctor_get(x_30, 1); -lean_inc(x_59); -lean_inc(x_58); -lean_dec(x_30); -x_60 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_60, 0, x_58); -lean_ctor_set(x_60, 1, x_59); -return x_60; -} -} -} -else -{ -lean_object* x_61; lean_object* x_62; -x_61 = lean_ctor_get(x_26, 1); -lean_inc(x_61); -lean_dec(x_26); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_25); -x_62 = l_Lean_Meta_generateEagerEqns(x_25, x_10, x_11, x_12, x_13, x_61); -if (lean_obj_tag(x_62) == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; lean_object* x_68; -x_63 = lean_ctor_get(x_62, 1); -lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_box(0); -lean_inc(x_17); -x_65 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_65, 0, x_17); -lean_ctor_set(x_65, 1, x_64); -x_66 = lean_array_mk(x_65); -x_67 = 1; -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_68 = l_Lean_Elab_applyAttributesOf(x_66, x_67, x_8, x_9, x_10, x_11, x_12, x_13, x_63); -lean_dec(x_66); -if (lean_obj_tag(x_68) == 0) -{ -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; -x_69 = lean_ctor_get(x_68, 1); -lean_inc(x_69); -lean_dec(x_68); -x_70 = lean_ctor_get(x_17, 2); -lean_inc(x_70); -lean_dec(x_17); -x_71 = lean_ctor_get(x_70, 2); -lean_inc(x_71); -lean_dec(x_70); -x_72 = lean_array_get_size(x_71); -x_73 = lean_unsigned_to_nat(0u); -x_74 = lean_nat_dec_lt(x_73, x_72); -if (x_74 == 0) -{ -uint8_t x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -lean_dec(x_72); -lean_dec(x_71); -x_75 = 2; -x_76 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(x_25, x_75, x_8, x_9, x_10, x_11, x_12, x_13, x_69); -x_77 = lean_ctor_get(x_76, 1); -lean_inc(x_77); -lean_dec(x_76); -x_78 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_78; -x_19 = x_77; -goto block_24; -} -else -{ -size_t x_79; uint8_t x_80; -x_79 = lean_usize_of_nat(x_72); -lean_dec(x_72); -x_80 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5(x_71, x_1, x_79); -lean_dec(x_71); -if (x_80 == 0) -{ -uint8_t x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; -x_81 = 2; -x_82 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(x_25, x_81, x_8, x_9, x_10, x_11, x_12, x_13, x_69); -x_83 = lean_ctor_get(x_82, 1); -lean_inc(x_83); -lean_dec(x_82); -x_84 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_84; -x_19 = x_83; -goto block_24; -} -else -{ -lean_object* x_85; -lean_dec(x_25); -x_85 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1; -x_18 = x_85; -x_19 = x_69; -goto block_24; -} -} -} -else -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -lean_dec(x_25); -lean_dec(x_17); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_86 = lean_ctor_get(x_68, 0); -lean_inc(x_86); -x_87 = lean_ctor_get(x_68, 1); -lean_inc(x_87); -if (lean_is_exclusive(x_68)) { - lean_ctor_release(x_68, 0); - lean_ctor_release(x_68, 1); - x_88 = x_68; -} else { - lean_dec_ref(x_68); - x_88 = lean_box(0); -} -if (lean_is_scalar(x_88)) { - x_89 = lean_alloc_ctor(1, 2, 0); -} else { - x_89 = x_88; -} -lean_ctor_set(x_89, 0, x_86); -lean_ctor_set(x_89, 1, x_87); -return x_89; -} -} -else -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -lean_dec(x_25); -lean_dec(x_17); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -x_90 = lean_ctor_get(x_62, 0); -lean_inc(x_90); -x_91 = lean_ctor_get(x_62, 1); -lean_inc(x_91); -if (lean_is_exclusive(x_62)) { - lean_ctor_release(x_62, 0); - lean_ctor_release(x_62, 1); - x_92 = x_62; -} else { - lean_dec_ref(x_62); - x_92 = lean_box(0); -} -if (lean_is_scalar(x_92)) { - x_93 = lean_alloc_ctor(1, 2, 0); -} else { - x_93 = x_92; -} -lean_ctor_set(x_93, 0, x_90); -lean_ctor_set(x_93, 1, x_91); -return x_93; -} -} -block_24: -{ -lean_object* x_20; size_t x_21; size_t x_22; -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -lean_dec(x_18); -x_21 = 1; -x_22 = lean_usize_add(x_6, x_21); -x_6 = x_22; -x_7 = x_20; -x_14 = x_19; -goto _start; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_10 = lean_st_ref_get(x_8, x_9); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = lean_ctor_get(x_11, 6); -lean_inc(x_13); -lean_dec(x_11); -x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*2); -lean_dec(x_13); -x_15 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_12); -x_16 = lean_ctor_get(x_15, 1); -lean_inc(x_16); -lean_dec(x_15); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_17 = lean_apply_7(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_16); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); -x_19 = lean_ctor_get(x_17, 1); -lean_inc(x_19); -lean_dec(x_17); -x_20 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_19); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) -{ -lean_object* x_22; -x_22 = lean_ctor_get(x_20, 0); -lean_dec(x_22); -lean_ctor_set(x_20, 0, x_18); -return x_20; -} -else -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_dec(x_20); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_18); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_25 = lean_ctor_get(x_17, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_17, 1); -lean_inc(x_26); -lean_dec(x_17); -x_27 = l_Lean_Elab_enableInfoTree___at_Lean_Elab_addAndCompilePartialRec___spec__4(x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_26); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) -{ -lean_object* x_29; -x_29 = lean_ctor_get(x_27, 0); -lean_dec(x_29); -lean_ctor_set_tag(x_27, 1); -lean_ctor_set(x_27, 0, x_25); -return x_27; -} -else -{ -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -lean_dec(x_27); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_25); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { uint8_t x_14; @@ -7631,7 +430,7 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { uint8_t x_12; @@ -7660,7 +459,7 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_17 = l_Lean_Elab_varyingVarNames(x_1, x_14, x_7, x_8, x_9, x_10, x_11); +x_17 = l_Lean_Elab_WF_varyingVarNames(x_1, x_14, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_17) == 0) { lean_object* x_18; lean_object* x_19; size_t x_20; size_t x_21; lean_object* x_22; @@ -7708,7 +507,212 @@ return x_27; } } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("well-founded recursion cannot be used, '", 40, 40); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' does not take any (non-fixed) arguments", 41, 41); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_5, x_4); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_7); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_6); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_16 = lean_array_uget(x_3, x_5); +x_17 = lean_ctor_get(x_6, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_6, 1); +lean_inc(x_18); +x_19 = lean_ctor_get(x_6, 2); +lean_inc(x_19); +x_20 = lean_nat_dec_lt(x_18, x_19); +if (x_20 == 0) +{ +lean_object* x_21; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_7); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 1, x_13); +return x_21; +} +else +{ +uint8_t x_22; +x_22 = !lean_is_exclusive(x_6); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_23 = lean_ctor_get(x_6, 2); +lean_dec(x_23); +x_24 = lean_ctor_get(x_6, 1); +lean_dec(x_24); +x_25 = lean_ctor_get(x_6, 0); +lean_dec(x_25); +x_26 = lean_array_fget(x_17, x_18); +x_27 = lean_unsigned_to_nat(1u); +x_28 = lean_nat_add(x_18, x_27); +lean_dec(x_18); +lean_ctor_set(x_6, 1, x_28); +x_29 = l_Array_isEmpty___rarg(x_16); +lean_dec(x_16); +if (x_29 == 0) +{ +size_t x_30; size_t x_31; +lean_dec(x_26); +x_30 = 1; +x_31 = lean_usize_add(x_5, x_30); +x_5 = x_31; +goto _start; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +lean_dec(x_6); +x_33 = lean_ctor_get(x_26, 3); +lean_inc(x_33); +lean_dec(x_26); +x_34 = l_Lean_MessageData_ofName(x_33); +x_35 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2; +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_34); +x_37 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4; +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +x_39 = l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(x_38, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_40 = !lean_is_exclusive(x_39); +if (x_40 == 0) +{ +return x_39; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_39, 0); +x_42 = lean_ctor_get(x_39, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_39); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; +lean_dec(x_6); +x_44 = lean_array_fget(x_17, x_18); +x_45 = lean_unsigned_to_nat(1u); +x_46 = lean_nat_add(x_18, x_45); +lean_dec(x_18); +x_47 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_47, 0, x_17); +lean_ctor_set(x_47, 1, x_46); +lean_ctor_set(x_47, 2, x_19); +x_48 = l_Array_isEmpty___rarg(x_16); +lean_dec(x_16); +if (x_48 == 0) +{ +size_t x_49; size_t x_50; +lean_dec(x_44); +x_49 = 1; +x_50 = lean_usize_add(x_5, x_49); +x_5 = x_50; +x_6 = x_47; +goto _start; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_47); +x_52 = lean_ctor_get(x_44, 3); +lean_inc(x_52); +lean_dec(x_44); +x_53 = l_Lean_MessageData_ofName(x_52); +x_54 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2; +x_55 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_53); +x_56 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4; +x_57 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +x_58 = l_Lean_throwError___at_Lean_Elab_Term_addAutoBoundImplicits_go___spec__50(x_57, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_58, 1); +lean_inc(x_60); +if (lean_is_exclusive(x_58)) { + lean_ctor_release(x_58, 0); + lean_ctor_release(x_58, 1); + x_61 = x_58; +} else { + lean_dec_ref(x_58); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(1, 2, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_59); +lean_ctor_set(x_62, 1, x_60); +return x_62; +} +} +} +} +} +} +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1() { _start: { lean_object* x_1; @@ -7716,7 +720,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_iteToDIte___lambda__2___boxed), 6, return x_1; } } -static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2() { +static lean_object* _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2() { _start: { lean_object* x_1; @@ -7724,7 +728,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_iteToDIte___lambda__1___boxed), 6, return x_1; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { uint8_t x_11; @@ -7758,8 +762,8 @@ x_20 = lean_ctor_get(x_13, 3); x_21 = lean_ctor_get(x_13, 4); x_22 = lean_ctor_get(x_13, 5); x_23 = lean_ctor_get(x_13, 6); -x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1; -x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2; +x_24 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1; +x_25 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2; x_26 = 0; lean_inc(x_9); lean_inc(x_8); @@ -7837,8 +841,8 @@ lean_inc(x_41); lean_inc(x_40); lean_inc(x_38); lean_dec(x_13); -x_46 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1; -x_47 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2; +x_46 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1; +x_47 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2; x_48 = 0; lean_inc(x_9); lean_inc(x_8); @@ -7909,54 +913,7 @@ return x_60; } } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("implemented_by", 14, 14); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_wfRecursion___lambda__1___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -LEAN_EXPORT uint8_t l_Lean_Elab_wfRecursion___lambda__1(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; uint8_t x_4; -x_2 = lean_ctor_get(x_1, 0); -x_3 = l_Lean_Elab_wfRecursion___lambda__1___closed__2; -x_4 = lean_name_eq(x_2, x_3); -if (x_4 == 0) -{ -uint8_t x_5; -x_5 = 1; -return x_5; -} -else -{ -uint8_t x_6; -x_6 = 0; -return x_6; -} -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_wfRecursion___lambda__1___boxed), 1, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { _start: { lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; @@ -8030,7 +987,7 @@ uint8_t x_38; x_38 = !lean_is_exclusive(x_37); if (x_38 == 0) { -lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; x_39 = lean_ctor_get(x_37, 0); x_40 = lean_ctor_get(x_1, 0); lean_inc(x_40); @@ -8051,157 +1008,153 @@ lean_ctor_set(x_45, 4, x_9); lean_ctor_set(x_45, 5, x_39); lean_ctor_set(x_45, 6, x_44); lean_ctor_set_uint8(x_45, sizeof(void*)*7, x_41); -x_46 = l_Lean_Elab_wfRecursion___lambda__2___closed__1; -x_47 = l_Lean_Elab_PreDefinition_filterAttrs(x_45, x_46); -lean_ctor_set(x_37, 0, x_47); +lean_ctor_set(x_37, 0, x_45); return x_37; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_48 = lean_ctor_get(x_37, 0); -x_49 = lean_ctor_get(x_37, 1); -lean_inc(x_49); -lean_inc(x_48); +lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_46 = lean_ctor_get(x_37, 0); +x_47 = lean_ctor_get(x_37, 1); +lean_inc(x_47); +lean_inc(x_46); lean_dec(x_37); -x_50 = lean_ctor_get(x_1, 0); +x_48 = lean_ctor_get(x_1, 0); +lean_inc(x_48); +x_49 = lean_ctor_get_uint8(x_1, sizeof(void*)*7); +x_50 = lean_ctor_get(x_1, 1); lean_inc(x_50); -x_51 = lean_ctor_get_uint8(x_1, sizeof(void*)*7); -x_52 = lean_ctor_get(x_1, 1); +x_51 = lean_ctor_get(x_1, 2); +lean_inc(x_51); +x_52 = lean_ctor_get(x_1, 6); lean_inc(x_52); -x_53 = lean_ctor_get(x_1, 2); -lean_inc(x_53); -x_54 = lean_ctor_get(x_1, 6); -lean_inc(x_54); lean_dec(x_1); -x_55 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_55, 0, x_50); -lean_ctor_set(x_55, 1, x_52); -lean_ctor_set(x_55, 2, x_53); -lean_ctor_set(x_55, 3, x_8); -lean_ctor_set(x_55, 4, x_9); -lean_ctor_set(x_55, 5, x_48); -lean_ctor_set(x_55, 6, x_54); -lean_ctor_set_uint8(x_55, sizeof(void*)*7, x_51); -x_56 = l_Lean_Elab_wfRecursion___lambda__2___closed__1; -x_57 = l_Lean_Elab_PreDefinition_filterAttrs(x_55, x_56); -x_58 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_58, 0, x_57); -lean_ctor_set(x_58, 1, x_49); +x_53 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_53, 0, x_48); +lean_ctor_set(x_53, 1, x_50); +lean_ctor_set(x_53, 2, x_51); +lean_ctor_set(x_53, 3, x_8); +lean_ctor_set(x_53, 4, x_9); +lean_ctor_set(x_53, 5, x_46); +lean_ctor_set(x_53, 6, x_52); +lean_ctor_set_uint8(x_53, sizeof(void*)*7, x_49); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_53); +lean_ctor_set(x_54, 1, x_47); +return x_54; +} +} +else +{ +uint8_t x_55; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_1); +x_55 = !lean_is_exclusive(x_37); +if (x_55 == 0) +{ +return x_37; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_37, 0); +x_57 = lean_ctor_get(x_37, 1); +lean_inc(x_57); +lean_inc(x_56); +lean_dec(x_37); +x_58 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); return x_58; } } -else -{ -uint8_t x_59; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_1); -x_59 = !lean_is_exclusive(x_37); -if (x_59 == 0) -{ -return x_37; } else { -lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_60 = lean_ctor_get(x_37, 0); -x_61 = lean_ctor_get(x_37, 1); -lean_inc(x_61); +lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_1); +x_59 = lean_ctor_get(x_28, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_28, 1); lean_inc(x_60); -lean_dec(x_37); -x_62 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_62, 0, x_60); -lean_ctor_set(x_62, 1, x_61); -return x_62; -} -} -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_1); -x_63 = lean_ctor_get(x_28, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_28, 1); -lean_inc(x_64); lean_dec(x_28); -x_65 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_64); +x_61 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_60); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); -x_66 = !lean_is_exclusive(x_65); -if (x_66 == 0) +x_62 = !lean_is_exclusive(x_61); +if (x_62 == 0) { -lean_object* x_67; -x_67 = lean_ctor_get(x_65, 0); -lean_dec(x_67); -lean_ctor_set_tag(x_65, 1); -lean_ctor_set(x_65, 0, x_63); +lean_object* x_63; +x_63 = lean_ctor_get(x_61, 0); +lean_dec(x_63); +lean_ctor_set_tag(x_61, 1); +lean_ctor_set(x_61, 0, x_59); +return x_61; +} +else +{ +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_61, 1); +lean_inc(x_64); +lean_dec(x_61); +x_65 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_65, 0, x_59); +lean_ctor_set(x_65, 1, x_64); return x_65; } -else -{ -lean_object* x_68; lean_object* x_69; -x_68 = lean_ctor_get(x_65, 1); -lean_inc(x_68); -lean_dec(x_65); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_63); -lean_ctor_set(x_69, 1, x_68); -return x_69; -} } } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; uint8_t x_73; +lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; lean_dec(x_9); lean_dec(x_8); lean_dec(x_1); -x_70 = lean_ctor_get(x_25, 0); -lean_inc(x_70); -x_71 = lean_ctor_get(x_25, 1); -lean_inc(x_71); +x_66 = lean_ctor_get(x_25, 0); +lean_inc(x_66); +x_67 = lean_ctor_get(x_25, 1); +lean_inc(x_67); lean_dec(x_25); -x_72 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_71); +x_68 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_67); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); -x_73 = !lean_is_exclusive(x_72); -if (x_73 == 0) +x_69 = !lean_is_exclusive(x_68); +if (x_69 == 0) { -lean_object* x_74; -x_74 = lean_ctor_get(x_72, 0); -lean_dec(x_74); -lean_ctor_set_tag(x_72, 1); -lean_ctor_set(x_72, 0, x_70); +lean_object* x_70; +x_70 = lean_ctor_get(x_68, 0); +lean_dec(x_70); +lean_ctor_set_tag(x_68, 1); +lean_ctor_set(x_68, 0, x_66); +return x_68; +} +else +{ +lean_object* x_71; lean_object* x_72; +x_71 = lean_ctor_get(x_68, 1); +lean_inc(x_71); +lean_dec(x_68); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_66); +lean_ctor_set(x_72, 1, x_71); return x_72; } -else -{ -lean_object* x_75; lean_object* x_76; -x_75 = lean_ctor_get(x_72, 1); -lean_inc(x_75); -lean_dec(x_72); -x_76 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_76, 0, x_70); -lean_ctor_set(x_76, 1, x_75); -return x_76; -} } } else { -lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; +lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -8209,43 +1162,78 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_77 = lean_ctor_get(x_22, 0); -lean_inc(x_77); -x_78 = lean_ctor_get(x_22, 1); -lean_inc(x_78); +x_73 = lean_ctor_get(x_22, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_22, 1); +lean_inc(x_74); lean_dec(x_22); -x_79 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_78); +x_75 = l_Lean_setEnv___at_Lean_Elab_Term_evalTerm___spec__1(x_21, x_11, x_12, x_13, x_14, x_15, x_16, x_74); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); -x_80 = !lean_is_exclusive(x_79); -if (x_80 == 0) +x_76 = !lean_is_exclusive(x_75); +if (x_76 == 0) { -lean_object* x_81; -x_81 = lean_ctor_get(x_79, 0); -lean_dec(x_81); -lean_ctor_set_tag(x_79, 1); -lean_ctor_set(x_79, 0, x_77); -return x_79; +lean_object* x_77; +x_77 = lean_ctor_get(x_75, 0); +lean_dec(x_77); +lean_ctor_set_tag(x_75, 1); +lean_ctor_set(x_75, 0, x_73); +return x_75; } else { -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_79, 1); -lean_inc(x_82); -lean_dec(x_79); -x_83 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_83, 0, x_77); -lean_ctor_set(x_83, 1, x_82); -return x_83; +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_75, 1); +lean_inc(x_78); +lean_dec(x_75); +x_79 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_79, 0, x_73); +lean_ctor_set(x_79, 1, x_78); +return x_79; } } } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Elab", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("definition", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("wf", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Elab_wfRecursion___lambda__2___closed__1; +x_2 = l_Lean_Elab_wfRecursion___lambda__2___closed__2; +x_3 = l_Lean_Elab_wfRecursion___lambda__2___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__5() { _start: { lean_object* x_1; @@ -8253,20 +1241,37 @@ x_1 = lean_mk_string_unchecked("wfRel: ", 7, 7); return x_1; } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_wfRecursion___lambda__3___closed__1; +x_1 = l_Lean_Elab_wfRecursion___lambda__2___closed__5; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__2___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_wfRecursion___lambda__2___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_17 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; +x_17 = l_Lean_Elab_wfRecursion___lambda__2___closed__4; x_18 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_17, x_10, x_11, x_12, x_13, x_14, x_15, x_16); x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); @@ -8279,7 +1284,7 @@ x_21 = lean_ctor_get(x_18, 1); lean_inc(x_21); lean_dec(x_18); x_22 = lean_box(0); -x_23 = l_Lean_Elab_wfRecursion___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_22, x_10, x_11, x_12, x_13, x_14, x_15, x_21); +x_23 = l_Lean_Elab_wfRecursion___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_22, x_10, x_11, x_12, x_13, x_14, x_15, x_21); return x_23; } else @@ -8294,11 +1299,11 @@ x_26 = lean_ctor_get(x_18, 0); lean_dec(x_26); lean_inc(x_9); x_27 = l_Lean_MessageData_ofExpr(x_9); -x_28 = l_Lean_Elab_wfRecursion___lambda__3___closed__2; +x_28 = l_Lean_Elab_wfRecursion___lambda__2___closed__6; lean_ctor_set_tag(x_18, 7); lean_ctor_set(x_18, 1, x_27); lean_ctor_set(x_18, 0, x_28); -x_29 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_29 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; x_30 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_30, 0, x_18); lean_ctor_set(x_30, 1, x_29); @@ -8308,7 +1313,7 @@ lean_inc(x_32); x_33 = lean_ctor_get(x_31, 1); lean_inc(x_33); lean_dec(x_31); -x_34 = l_Lean_Elab_wfRecursion___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_32, x_10, x_11, x_12, x_13, x_14, x_15, x_33); +x_34 = l_Lean_Elab_wfRecursion___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_32, x_10, x_11, x_12, x_13, x_14, x_15, x_33); lean_dec(x_32); return x_34; } @@ -8320,11 +1325,11 @@ lean_inc(x_35); lean_dec(x_18); lean_inc(x_9); x_36 = l_Lean_MessageData_ofExpr(x_9); -x_37 = l_Lean_Elab_wfRecursion___lambda__3___closed__2; +x_37 = l_Lean_Elab_wfRecursion___lambda__2___closed__6; x_38 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_36); -x_39 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_39 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; x_40 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_40, 0, x_38); lean_ctor_set(x_40, 1, x_39); @@ -8334,14 +1339,14 @@ lean_inc(x_42); x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); lean_dec(x_41); -x_44 = l_Lean_Elab_wfRecursion___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_42, x_10, x_11, x_12, x_13, x_14, x_15, x_43); +x_44 = l_Lean_Elab_wfRecursion___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_9, x_7, x_8, x_42, x_10, x_11, x_12, x_13, x_14, x_15, x_43); lean_dec(x_42); return x_44; } } } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { _start: { lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; @@ -8355,7 +1360,7 @@ x_22 = lean_box_usize(x_3); lean_inc(x_20); lean_inc(x_7); lean_inc(x_6); -x_23 = lean_alloc_closure((void*)(l_Lean_Elab_wfRecursion___lambda__3___boxed), 16, 8); +x_23 = lean_alloc_closure((void*)(l_Lean_Elab_wfRecursion___lambda__2___boxed), 16, 8); lean_closure_set(x_23, 0, x_5); lean_closure_set(x_23, 1, x_21); lean_closure_set(x_23, 2, x_22); @@ -8368,7 +1373,7 @@ x_24 = l_Lean_Elab_WF_elabWFRel___rarg(x_19, x_20, x_6, x_7, x_18, x_9, x_23, x_ return x_24; } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -8376,16 +1381,16 @@ x_1 = lean_mk_string_unchecked("wfRecursion: expected unary function type: ", 43 return x_1; } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_wfRecursion___lambda__5___closed__1; +x_1 = l_Lean_Elab_wfRecursion___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { lean_object* x_17; @@ -8413,11 +1418,11 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); x_21 = l_Lean_MessageData_ofExpr(x_18); -x_22 = l_Lean_Elab_wfRecursion___lambda__5___closed__2; +x_22 = l_Lean_Elab_wfRecursion___lambda__4___closed__2; x_23 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_23, 0, x_22); lean_ctor_set(x_23, 1, x_21); -x_24 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_24 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; x_25 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_25, 0, x_23); lean_ctor_set(x_25, 1, x_24); @@ -8450,7 +1455,7 @@ else { lean_object* x_31; lean_object* x_32; x_31 = lean_box(0); -x_32 = l_Lean_Elab_wfRecursion___lambda__4(x_18, x_1, x_2, x_3, x_4, x_8, x_5, x_6, x_7, x_31, x_10, x_11, x_12, x_13, x_14, x_15, x_19); +x_32 = l_Lean_Elab_wfRecursion___lambda__3(x_18, x_1, x_2, x_3, x_4, x_8, x_5, x_6, x_7, x_31, x_10, x_11, x_12, x_13, x_14, x_15, x_19); lean_dec(x_18); return x_32; } @@ -8491,1083 +1496,7 @@ return x_36; } } } -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__6___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_maxRecDepth; -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -uint8_t x_15; -x_15 = !lean_is_exclusive(x_12); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_16 = lean_ctor_get(x_12, 4); -lean_dec(x_16); -x_17 = lean_ctor_get(x_12, 2); -lean_dec(x_17); -x_18 = l_Lean_Elab_wfRecursion___lambda__6___closed__1; -x_19 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_18); -lean_ctor_set(x_12, 4, x_19); -lean_ctor_set(x_12, 2, x_1); -lean_ctor_set_uint8(x_12, sizeof(void*)*12, x_2); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_20 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef(x_3, x_4, x_5, x_6, x_12, x_13, x_14); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_unbox(x_21); -lean_dec(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_dec(x_20); -x_24 = lean_ctor_get(x_7, 3); -lean_inc(x_24); -x_25 = lean_box(0); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -x_27 = 0; -x_28 = lean_box(x_27); -lean_inc(x_7); -x_29 = lean_alloc_closure((void*)(l_Lean_Elab_addNonRec___boxed), 10, 3); -lean_closure_set(x_29, 0, x_7); -lean_closure_set(x_29, 1, x_28); -lean_closure_set(x_29, 2, x_26); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_9); -lean_inc(x_8); -x_30 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7(x_27, x_29, x_8, x_9, x_5, x_6, x_12, x_13, x_23); -if (lean_obj_tag(x_30) == 0) -{ -lean_object* x_31; lean_object* x_32; -x_31 = lean_ctor_get(x_30, 1); -lean_inc(x_31); -lean_dec(x_30); -x_32 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs(x_4, x_10, x_3, x_7, x_8, x_9, x_5, x_6, x_12, x_13, x_31); -return x_32; -} -else -{ -uint8_t x_33; -lean_dec(x_12); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_33 = !lean_is_exclusive(x_30); -if (x_33 == 0) -{ -return x_30; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_30, 0); -x_35 = lean_ctor_get(x_30, 1); -lean_inc(x_35); -lean_inc(x_34); -lean_dec(x_30); -x_36 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -return x_36; -} -} -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_37 = lean_ctor_get(x_20, 1); -lean_inc(x_37); -lean_dec(x_20); -x_38 = lean_ctor_get(x_7, 3); -lean_inc(x_38); -x_39 = lean_box(0); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -x_41 = 0; -x_42 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_7, x_41, x_40, x_41, x_8, x_9, x_5, x_6, x_12, x_13, x_37); -return x_42; -} -} -else -{ -uint8_t x_43; -lean_dec(x_12); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_43 = !lean_is_exclusive(x_20); -if (x_43 == 0) -{ -return x_20; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_20, 0); -x_45 = lean_ctor_get(x_20, 1); -lean_inc(x_45); -lean_inc(x_44); -lean_dec(x_20); -x_46 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set(x_46, 1, x_45); -return x_46; -} -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_47 = lean_ctor_get(x_12, 0); -x_48 = lean_ctor_get(x_12, 1); -x_49 = lean_ctor_get(x_12, 3); -x_50 = lean_ctor_get(x_12, 5); -x_51 = lean_ctor_get(x_12, 6); -x_52 = lean_ctor_get(x_12, 7); -x_53 = lean_ctor_get(x_12, 8); -x_54 = lean_ctor_get(x_12, 9); -x_55 = lean_ctor_get(x_12, 10); -x_56 = lean_ctor_get(x_12, 11); -x_57 = lean_ctor_get_uint8(x_12, sizeof(void*)*12 + 1); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_inc(x_53); -lean_inc(x_52); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_49); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_12); -x_58 = l_Lean_Elab_wfRecursion___lambda__6___closed__1; -x_59 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_1, x_58); -x_60 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_60, 0, x_47); -lean_ctor_set(x_60, 1, x_48); -lean_ctor_set(x_60, 2, x_1); -lean_ctor_set(x_60, 3, x_49); -lean_ctor_set(x_60, 4, x_59); -lean_ctor_set(x_60, 5, x_50); -lean_ctor_set(x_60, 6, x_51); -lean_ctor_set(x_60, 7, x_52); -lean_ctor_set(x_60, 8, x_53); -lean_ctor_set(x_60, 9, x_54); -lean_ctor_set(x_60, 10, x_55); -lean_ctor_set(x_60, 11, x_56); -lean_ctor_set_uint8(x_60, sizeof(void*)*12, x_2); -lean_ctor_set_uint8(x_60, sizeof(void*)*12 + 1, x_57); -lean_inc(x_13); -lean_inc(x_60); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_61 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_isOnlyOneUnaryDef(x_3, x_4, x_5, x_6, x_60, x_13, x_14); -if (lean_obj_tag(x_61) == 0) -{ -lean_object* x_62; uint8_t x_63; -x_62 = lean_ctor_get(x_61, 0); -lean_inc(x_62); -x_63 = lean_unbox(x_62); -lean_dec(x_62); -if (x_63 == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_64 = lean_ctor_get(x_61, 1); -lean_inc(x_64); -lean_dec(x_61); -x_65 = lean_ctor_get(x_7, 3); -lean_inc(x_65); -x_66 = lean_box(0); -x_67 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); -x_68 = 0; -x_69 = lean_box(x_68); -lean_inc(x_7); -x_70 = lean_alloc_closure((void*)(l_Lean_Elab_addNonRec___boxed), 10, 3); -lean_closure_set(x_70, 0, x_7); -lean_closure_set(x_70, 1, x_69); -lean_closure_set(x_70, 2, x_67); -lean_inc(x_13); -lean_inc(x_60); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_9); -lean_inc(x_8); -x_71 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7(x_68, x_70, x_8, x_9, x_5, x_6, x_60, x_13, x_64); -if (lean_obj_tag(x_71) == 0) -{ -lean_object* x_72; lean_object* x_73; -x_72 = lean_ctor_get(x_71, 1); -lean_inc(x_72); -lean_dec(x_71); -x_73 = l___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs(x_4, x_10, x_3, x_7, x_8, x_9, x_5, x_6, x_60, x_13, x_72); -return x_73; -} -else -{ -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -lean_dec(x_60); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_74 = lean_ctor_get(x_71, 0); -lean_inc(x_74); -x_75 = lean_ctor_get(x_71, 1); -lean_inc(x_75); -if (lean_is_exclusive(x_71)) { - lean_ctor_release(x_71, 0); - lean_ctor_release(x_71, 1); - x_76 = x_71; -} else { - lean_dec_ref(x_71); - x_76 = lean_box(0); -} -if (lean_is_scalar(x_76)) { - x_77 = lean_alloc_ctor(1, 2, 0); -} else { - x_77 = x_76; -} -lean_ctor_set(x_77, 0, x_74); -lean_ctor_set(x_77, 1, x_75); -return x_77; -} -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; uint8_t x_82; lean_object* x_83; -lean_dec(x_10); -lean_dec(x_4); -lean_dec(x_3); -x_78 = lean_ctor_get(x_61, 1); -lean_inc(x_78); -lean_dec(x_61); -x_79 = lean_ctor_get(x_7, 3); -lean_inc(x_79); -x_80 = lean_box(0); -x_81 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_81, 0, x_79); -lean_ctor_set(x_81, 1, x_80); -x_82 = 0; -x_83 = l___private_Lean_Elab_PreDefinition_Basic_0__Lean_Elab_addNonRecAux(x_7, x_82, x_81, x_82, x_8, x_9, x_5, x_6, x_60, x_13, x_78); -return x_83; -} -} -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_60); -lean_dec(x_13); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_84 = lean_ctor_get(x_61, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_61, 1); -lean_inc(x_85); -if (lean_is_exclusive(x_61)) { - lean_ctor_release(x_61, 0); - lean_ctor_release(x_61, 1); - x_86 = x_61; -} else { - lean_dec_ref(x_61); - x_86 = lean_box(0); -} -if (lean_is_scalar(x_86)) { - x_87 = lean_alloc_ctor(1, 2, 0); -} else { - x_87 = x_86; -} -lean_ctor_set(x_87, 0, x_84); -lean_ctor_set(x_87, 1, x_85); -return x_87; -} -} -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__7___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_allowUnsafeReducibility; -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__7___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_diagnostics; -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -lean_object* x_16; -lean_inc(x_14); -lean_inc(x_13); -x_16 = l_Array_mapMUnsafe_map___at_Lean_Elab_addAndCompileUnsafe___spec__1(x_1, x_2, x_3, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; uint8_t x_65; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_54 = lean_ctor_get(x_13, 2); -lean_inc(x_54); -x_55 = l_Lean_Elab_wfRecursion___lambda__7___closed__1; -x_56 = 1; -x_57 = l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(x_54, x_55, x_56); -x_58 = l_Lean_Elab_wfRecursion___lambda__7___closed__2; -x_59 = l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(x_57, x_58); -x_60 = lean_st_ref_get(x_14, x_18); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); -lean_inc(x_62); -lean_dec(x_60); -x_63 = lean_ctor_get(x_61, 0); -lean_inc(x_63); -lean_dec(x_61); -x_64 = l_Lean_Kernel_isDiagnosticsEnabled(x_63); -lean_dec(x_63); -if (x_64 == 0) -{ -if (x_59 == 0) -{ -x_65 = x_56; -goto block_109; -} -else -{ -uint8_t x_110; -x_110 = 0; -x_65 = x_110; -goto block_109; -} -} -else -{ -if (x_59 == 0) -{ -uint8_t x_111; -x_111 = 0; -x_65 = x_111; -goto block_109; -} -else -{ -x_65 = x_56; -goto block_109; -} -} -block_53: -{ -lean_object* x_20; -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_17); -x_20 = l_Lean_Elab_addAndCompilePartialRec(x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_19); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; size_t x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); -lean_dec(x_20); -x_22 = lean_array_size(x_17); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3(x_22, x_2, x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_21); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -lean_dec(x_23); -x_26 = lean_ctor_get(x_4, 3); -lean_inc(x_26); -lean_dec(x_4); -x_27 = 1; -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_24); -x_28 = l_Lean_Elab_WF_registerEqnsInfo(x_24, x_26, x_5, x_6, x_27, x_11, x_12, x_13, x_14, x_25); -if (lean_obj_tag(x_28) == 0) -{ -lean_object* x_29; size_t x_30; lean_object* x_31; lean_object* x_32; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = lean_array_size(x_24); -x_31 = lean_box(0); -x_32 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6(x_2, x_7, x_24, x_24, x_30, x_2, x_31, x_9, x_10, x_11, x_12, x_13, x_14, x_29); -lean_dec(x_24); -if (lean_obj_tag(x_32) == 0) -{ -uint8_t x_33; -x_33 = !lean_is_exclusive(x_32); -if (x_33 == 0) -{ -lean_object* x_34; -x_34 = lean_ctor_get(x_32, 0); -lean_dec(x_34); -lean_ctor_set(x_32, 0, x_31); -return x_32; -} -else -{ -lean_object* x_35; lean_object* x_36; -x_35 = lean_ctor_get(x_32, 1); -lean_inc(x_35); -lean_dec(x_32); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_31); -lean_ctor_set(x_36, 1, x_35); -return x_36; -} -} -else -{ -uint8_t x_37; -x_37 = !lean_is_exclusive(x_32); -if (x_37 == 0) -{ -return x_32; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_32, 0); -x_39 = lean_ctor_get(x_32, 1); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_32); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; -} -} -} -else -{ -uint8_t x_41; -lean_dec(x_24); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -x_41 = !lean_is_exclusive(x_28); -if (x_41 == 0) -{ -return x_28; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_28, 0); -x_43 = lean_ctor_get(x_28, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_28); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; -} -} -} -else -{ -uint8_t x_45; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_45 = !lean_is_exclusive(x_23); -if (x_45 == 0) -{ -return x_23; -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_ctor_get(x_23, 0); -x_47 = lean_ctor_get(x_23, 1); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_23); -x_48 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_48, 0, x_46); -lean_ctor_set(x_48, 1, x_47); -return x_48; -} -} -} -else -{ -uint8_t x_49; -lean_dec(x_17); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_49 = !lean_is_exclusive(x_20); -if (x_49 == 0) -{ -return x_20; -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_20, 0); -x_51 = lean_ctor_get(x_20, 1); -lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_20); -x_52 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_52, 0, x_50); -lean_ctor_set(x_52, 1, x_51); -return x_52; -} -} -} -block_109: -{ -if (x_65 == 0) -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; -x_66 = lean_st_ref_take(x_14, x_62); -x_67 = lean_ctor_get(x_66, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_66, 1); -lean_inc(x_68); -lean_dec(x_66); -x_69 = !lean_is_exclusive(x_67); -if (x_69 == 0) -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_70 = lean_ctor_get(x_67, 0); -x_71 = lean_ctor_get(x_67, 4); -lean_dec(x_71); -x_72 = l_Lean_Kernel_enableDiag(x_70, x_59); -x_73 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3; -lean_ctor_set(x_67, 4, x_73); -lean_ctor_set(x_67, 0, x_72); -x_74 = lean_st_ref_set(x_14, x_67, x_68); -x_75 = lean_ctor_get(x_74, 1); -lean_inc(x_75); -lean_dec(x_74); -x_76 = lean_box(0); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_4); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_5); -lean_inc(x_17); -x_77 = l_Lean_Elab_wfRecursion___lambda__6(x_57, x_59, x_17, x_5, x_11, x_12, x_4, x_9, x_10, x_6, x_76, x_13, x_14, x_75); -if (lean_obj_tag(x_77) == 0) -{ -lean_object* x_78; -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -lean_dec(x_77); -x_19 = x_78; -goto block_53; -} -else -{ -uint8_t x_79; -lean_dec(x_17); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_79 = !lean_is_exclusive(x_77); -if (x_79 == 0) -{ -return x_77; -} -else -{ -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_77, 0); -x_81 = lean_ctor_get(x_77, 1); -lean_inc(x_81); -lean_inc(x_80); -lean_dec(x_77); -x_82 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_82, 0, x_80); -lean_ctor_set(x_82, 1, x_81); -return x_82; -} -} -} -else -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_83 = lean_ctor_get(x_67, 0); -x_84 = lean_ctor_get(x_67, 1); -x_85 = lean_ctor_get(x_67, 2); -x_86 = lean_ctor_get(x_67, 3); -x_87 = lean_ctor_get(x_67, 5); -x_88 = lean_ctor_get(x_67, 6); -x_89 = lean_ctor_get(x_67, 7); -lean_inc(x_89); -lean_inc(x_88); -lean_inc(x_87); -lean_inc(x_86); -lean_inc(x_85); -lean_inc(x_84); -lean_inc(x_83); -lean_dec(x_67); -x_90 = l_Lean_Kernel_enableDiag(x_83, x_59); -x_91 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3; -x_92 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_92, 0, x_90); -lean_ctor_set(x_92, 1, x_84); -lean_ctor_set(x_92, 2, x_85); -lean_ctor_set(x_92, 3, x_86); -lean_ctor_set(x_92, 4, x_91); -lean_ctor_set(x_92, 5, x_87); -lean_ctor_set(x_92, 6, x_88); -lean_ctor_set(x_92, 7, x_89); -x_93 = lean_st_ref_set(x_14, x_92, x_68); -x_94 = lean_ctor_get(x_93, 1); -lean_inc(x_94); -lean_dec(x_93); -x_95 = lean_box(0); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_4); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_5); -lean_inc(x_17); -x_96 = l_Lean_Elab_wfRecursion___lambda__6(x_57, x_59, x_17, x_5, x_11, x_12, x_4, x_9, x_10, x_6, x_95, x_13, x_14, x_94); -if (lean_obj_tag(x_96) == 0) -{ -lean_object* x_97; -x_97 = lean_ctor_get(x_96, 1); -lean_inc(x_97); -lean_dec(x_96); -x_19 = x_97; -goto block_53; -} -else -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_17); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_98 = lean_ctor_get(x_96, 0); -lean_inc(x_98); -x_99 = lean_ctor_get(x_96, 1); -lean_inc(x_99); -if (lean_is_exclusive(x_96)) { - lean_ctor_release(x_96, 0); - lean_ctor_release(x_96, 1); - x_100 = x_96; -} else { - lean_dec_ref(x_96); - x_100 = lean_box(0); -} -if (lean_is_scalar(x_100)) { - x_101 = lean_alloc_ctor(1, 2, 0); -} else { - x_101 = x_100; -} -lean_ctor_set(x_101, 0, x_98); -lean_ctor_set(x_101, 1, x_99); -return x_101; -} -} -} -else -{ -lean_object* x_102; lean_object* x_103; -x_102 = lean_box(0); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_6); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_4); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_5); -lean_inc(x_17); -x_103 = l_Lean_Elab_wfRecursion___lambda__6(x_57, x_59, x_17, x_5, x_11, x_12, x_4, x_9, x_10, x_6, x_102, x_13, x_14, x_62); -if (lean_obj_tag(x_103) == 0) -{ -lean_object* x_104; -x_104 = lean_ctor_get(x_103, 1); -lean_inc(x_104); -lean_dec(x_103); -x_19 = x_104; -goto block_53; -} -else -{ -uint8_t x_105; -lean_dec(x_17); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_105 = !lean_is_exclusive(x_103); -if (x_105 == 0) -{ -return x_103; -} -else -{ -lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_106 = lean_ctor_get(x_103, 0); -x_107 = lean_ctor_get(x_103, 1); -lean_inc(x_107); -lean_inc(x_106); -lean_dec(x_103); -x_108 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_108, 0, x_106); -lean_ctor_set(x_108, 1, x_107); -return x_108; -} -} -} -} -} -else -{ -uint8_t x_112; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_112 = !lean_is_exclusive(x_16); -if (x_112 == 0) -{ -return x_16; -} -else -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; -x_113 = lean_ctor_get(x_16, 0); -x_114 = lean_ctor_get(x_16, 1); -lean_inc(x_114); -lean_inc(x_113); -lean_dec(x_16); -x_115 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_115, 0, x_113); -lean_ctor_set(x_115, 1, x_114); -return x_115; -} -} -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__8___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(">> ", 3, 3); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__8___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_wfRecursion___lambda__8___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__8___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" :=\n", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__8___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_wfRecursion___lambda__8___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__8(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; -x_16 = lean_ctor_get(x_1, 4); -lean_inc(x_16); -lean_inc(x_2); -x_17 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_17, 0, x_2); -x_18 = lean_box_usize(x_3); -x_19 = lean_box_usize(x_4); -lean_inc(x_16); -lean_inc(x_6); -lean_inc(x_5); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_wfRecursion___lambda__5___boxed), 16, 7); -lean_closure_set(x_20, 0, x_18); -lean_closure_set(x_20, 1, x_19); -lean_closure_set(x_20, 2, x_5); -lean_closure_set(x_20, 3, x_1); -lean_closure_set(x_20, 4, x_6); -lean_closure_set(x_20, 5, x_16); -lean_closure_set(x_20, 6, x_8); -x_21 = 0; -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -x_22 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_16, x_17, x_20, x_21, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -lean_dec(x_22); -x_25 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; -x_26 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_25, x_9, x_10, x_11, x_12, x_13, x_14, x_24); -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_unbox(x_27); -lean_dec(x_27); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -lean_dec(x_26); -x_30 = lean_box(0); -x_31 = l_Lean_Elab_wfRecursion___lambda__7(x_3, x_4, x_5, x_23, x_2, x_6, x_7, x_30, x_9, x_10, x_11, x_12, x_13, x_14, x_29); -return x_31; -} -else -{ -uint8_t x_32; -x_32 = !lean_is_exclusive(x_26); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_33 = lean_ctor_get(x_26, 1); -x_34 = lean_ctor_get(x_26, 0); -lean_dec(x_34); -x_35 = lean_ctor_get(x_23, 3); -lean_inc(x_35); -x_36 = l_Lean_MessageData_ofName(x_35); -x_37 = l_Lean_Elab_wfRecursion___lambda__8___closed__2; -lean_ctor_set_tag(x_26, 7); -lean_ctor_set(x_26, 1, x_36); -lean_ctor_set(x_26, 0, x_37); -x_38 = l_Lean_Elab_wfRecursion___lambda__8___closed__4; -x_39 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_39, 0, x_26); -lean_ctor_set(x_39, 1, x_38); -x_40 = lean_ctor_get(x_23, 5); -lean_inc(x_40); -x_41 = l_Lean_MessageData_ofExpr(x_40); -x_42 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_42, 0, x_39); -lean_ctor_set(x_42, 1, x_41); -x_43 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; -x_44 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -x_45 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_25, x_44, x_9, x_10, x_11, x_12, x_13, x_14, x_33); -x_46 = lean_ctor_get(x_45, 0); -lean_inc(x_46); -x_47 = lean_ctor_get(x_45, 1); -lean_inc(x_47); -lean_dec(x_45); -x_48 = l_Lean_Elab_wfRecursion___lambda__7(x_3, x_4, x_5, x_23, x_2, x_6, x_7, x_46, x_9, x_10, x_11, x_12, x_13, x_14, x_47); -lean_dec(x_46); -return x_48; -} -else -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_49 = lean_ctor_get(x_26, 1); -lean_inc(x_49); -lean_dec(x_26); -x_50 = lean_ctor_get(x_23, 3); -lean_inc(x_50); -x_51 = l_Lean_MessageData_ofName(x_50); -x_52 = l_Lean_Elab_wfRecursion___lambda__8___closed__2; -x_53 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_51); -x_54 = l_Lean_Elab_wfRecursion___lambda__8___closed__4; -x_55 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_55, 0, x_53); -lean_ctor_set(x_55, 1, x_54); -x_56 = lean_ctor_get(x_23, 5); -lean_inc(x_56); -x_57 = l_Lean_MessageData_ofExpr(x_56); -x_58 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_58, 0, x_55); -lean_ctor_set(x_58, 1, x_57); -x_59 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; -x_60 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_60, 0, x_58); -lean_ctor_set(x_60, 1, x_59); -x_61 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_25, x_60, x_9, x_10, x_11, x_12, x_13, x_14, x_49); -x_62 = lean_ctor_get(x_61, 0); -lean_inc(x_62); -x_63 = lean_ctor_get(x_61, 1); -lean_inc(x_63); -lean_dec(x_61); -x_64 = l_Lean_Elab_wfRecursion___lambda__7(x_3, x_4, x_5, x_23, x_2, x_6, x_7, x_62, x_9, x_10, x_11, x_12, x_13, x_14, x_63); -lean_dec(x_62); -return x_64; -} -} -} -else -{ -uint8_t x_65; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -x_65 = !lean_is_exclusive(x_22); -if (x_65 == 0) -{ -return x_22; -} -else -{ -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_22, 0); -x_67 = lean_ctor_get(x_22, 1); -lean_inc(x_67); -lean_inc(x_66); -lean_dec(x_22); -x_68 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -return x_68; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__9(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; @@ -9576,8 +1505,9 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_4); +lean_inc(x_2); lean_inc(x_1); -x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9(x_1, x_2, x_3, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_13 = l_Lean_Elab_WF_preDefsFromUnaryNonRec(x_1, x_2, x_3, x_4, x_8, x_9, x_10, x_11, x_12); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; lean_object* x_15; lean_object* x_16; @@ -9590,73 +1520,107 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_16 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10(x_2, x_3, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_15); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_4); +lean_inc(x_3); +x_16 = l_Lean_Elab_Mutual_addPreDefsFromUnary(x_3, x_14, x_4, x_6, x_7, x_8, x_9, x_10, x_11, x_15); +lean_dec(x_14); if (lean_obj_tag(x_16) == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_16, 0); +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); lean_dec(x_16); -lean_inc(x_14); -lean_inc(x_1); -x_19 = l_Lean_Elab_WF_packMutual(x_1, x_14, x_17, x_8, x_9, x_10, x_11, x_18); -if (lean_obj_tag(x_19) == 0) +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_18 = l_Lean_Elab_Mutual_cleanPreDefs(x_3, x_6, x_7, x_8, x_9, x_10, x_11, x_17); +if (lean_obj_tag(x_18) == 0) { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 0) +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_ctor_get(x_4, 3); +lean_inc(x_21); +lean_dec(x_4); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_19); +x_22 = l_Lean_Elab_WF_registerEqnsInfo(x_19, x_21, x_1, x_2, x_8, x_9, x_10, x_11, x_20); +if (lean_obj_tag(x_22) == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_19, 0); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_14); -lean_ctor_set(x_22, 1, x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_1); -lean_ctor_set(x_23, 1, x_22); -lean_ctor_set(x_19, 0, x_23); -return x_19; +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l_Lean_Elab_Mutual_addPreDefAttributes(x_19, x_6, x_7, x_8, x_9, x_10, x_11, x_23); +lean_dec(x_19); +return x_24; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_24 = lean_ctor_get(x_19, 0); -x_25 = lean_ctor_get(x_19, 1); -lean_inc(x_25); -lean_inc(x_24); +uint8_t x_25; lean_dec(x_19); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_14); -lean_ctor_set(x_26, 1, x_24); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_1); -lean_ctor_set(x_27, 1, x_26); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_25); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_25 = !lean_is_exclusive(x_22); +if (x_25 == 0) +{ +return x_22; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_22, 0); +x_27 = lean_ctor_get(x_22, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_22); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); return x_28; } } +} else { uint8_t x_29; -lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_29 = !lean_is_exclusive(x_19); +x_29 = !lean_is_exclusive(x_18); if (x_29 == 0) { -return x_19; +return x_18; } else { lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_30 = lean_ctor_get(x_19, 0); -x_31 = lean_ctor_get(x_19, 1); +x_30 = lean_ctor_get(x_18, 0); +x_31 = lean_ctor_get(x_18, 1); lean_inc(x_31); lean_inc(x_30); -lean_dec(x_19); +lean_dec(x_18); x_32 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -9667,11 +1631,15 @@ return x_32; else { uint8_t x_33; -lean_dec(x_14); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); x_33 = !lean_is_exclusive(x_16); if (x_33 == 0) @@ -9700,7 +1668,11 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); x_37 = !lean_is_exclusive(x_13); if (x_37 == 0) @@ -9723,6 +1695,409 @@ return x_40; } } } +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(">> ", 3, 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__6___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_wfRecursion___lambda__6___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__6___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" :=\n", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_wfRecursion___lambda__6___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_wfRecursion___lambda__6___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; +x_15 = lean_ctor_get(x_1, 4); +lean_inc(x_15); +lean_inc(x_2); +x_16 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_16, 0, x_2); +x_17 = lean_box_usize(x_3); +x_18 = lean_box_usize(x_4); +lean_inc(x_15); +lean_inc(x_6); +lean_inc(x_5); +x_19 = lean_alloc_closure((void*)(l_Lean_Elab_wfRecursion___lambda__4___boxed), 16, 7); +lean_closure_set(x_19, 0, x_17); +lean_closure_set(x_19, 1, x_18); +lean_closure_set(x_19, 2, x_5); +lean_closure_set(x_19, 3, x_1); +lean_closure_set(x_19, 4, x_6); +lean_closure_set(x_19, 5, x_15); +lean_closure_set(x_19, 6, x_7); +x_20 = 0; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_21 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Elab_Term_addAutoBoundImplicits_x27___spec__2___rarg(x_15, x_16, x_19, x_20, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_Elab_wfRecursion___lambda__2___closed__4; +x_25 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_24, x_8, x_9, x_10, x_11, x_12, x_13, x_23); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_unbox(x_26); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_box(0); +x_30 = l_Lean_Elab_wfRecursion___lambda__5(x_2, x_6, x_5, x_22, x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_28); +return x_30; +} +else +{ +uint8_t x_31; +x_31 = !lean_is_exclusive(x_25); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_32 = lean_ctor_get(x_25, 1); +x_33 = lean_ctor_get(x_25, 0); +lean_dec(x_33); +x_34 = lean_ctor_get(x_22, 3); +lean_inc(x_34); +x_35 = l_Lean_MessageData_ofName(x_34); +x_36 = l_Lean_Elab_wfRecursion___lambda__6___closed__2; +lean_ctor_set_tag(x_25, 7); +lean_ctor_set(x_25, 1, x_35); +lean_ctor_set(x_25, 0, x_36); +x_37 = l_Lean_Elab_wfRecursion___lambda__6___closed__4; +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_25); +lean_ctor_set(x_38, 1, x_37); +x_39 = lean_ctor_get(x_22, 5); +lean_inc(x_39); +x_40 = l_Lean_MessageData_ofExpr(x_39); +x_41 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_41, 0, x_38); +lean_ctor_set(x_41, 1, x_40); +x_42 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; +x_43 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +x_44 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_24, x_43, x_8, x_9, x_10, x_11, x_12, x_13, x_32); +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_dec(x_44); +x_47 = l_Lean_Elab_wfRecursion___lambda__5(x_2, x_6, x_5, x_22, x_45, x_8, x_9, x_10, x_11, x_12, x_13, x_46); +lean_dec(x_45); +return x_47; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_48 = lean_ctor_get(x_25, 1); +lean_inc(x_48); +lean_dec(x_25); +x_49 = lean_ctor_get(x_22, 3); +lean_inc(x_49); +x_50 = l_Lean_MessageData_ofName(x_49); +x_51 = l_Lean_Elab_wfRecursion___lambda__6___closed__2; +x_52 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_50); +x_53 = l_Lean_Elab_wfRecursion___lambda__6___closed__4; +x_54 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +x_55 = lean_ctor_get(x_22, 5); +lean_inc(x_55); +x_56 = l_Lean_MessageData_ofExpr(x_55); +x_57 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_57, 0, x_54); +lean_ctor_set(x_57, 1, x_56); +x_58 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; +x_59 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_59, 0, x_57); +lean_ctor_set(x_59, 1, x_58); +x_60 = l_Lean_addTrace___at_Lean_Elab_Term_traceAtCmdPos___spec__2(x_24, x_59, x_8, x_9, x_10, x_11, x_12, x_13, x_48); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +lean_dec(x_60); +x_63 = l_Lean_Elab_wfRecursion___lambda__5(x_2, x_6, x_5, x_22, x_61, x_8, x_9, x_10, x_11, x_12, x_13, x_62); +lean_dec(x_61); +return x_63; +} +} +} +else +{ +uint8_t x_64; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_64 = !lean_is_exclusive(x_21); +if (x_64 == 0) +{ +return x_21; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_21, 0); +x_66 = lean_ctor_get(x_21, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_21); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_4); +lean_inc(x_1); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4(x_1, x_2, x_3, x_4, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; size_t x_20; lean_object* x_21; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_array_get_size(x_4); +x_18 = lean_unsigned_to_nat(0u); +lean_inc(x_4); +x_19 = l_Array_toSubarray___rarg(x_4, x_18, x_17); +x_20 = lean_array_size(x_15); +lean_inc(x_7); +x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5(x_15, x_5, x_15, x_20, x_3, x_19, x_7, x_8, x_9, x_10, x_11, x_12, x_16); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_21, 1); +lean_inc(x_22); +lean_dec(x_21); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_23 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6(x_2, x_3, x_4, x_7, x_8, x_9, x_10, x_11, x_12, x_22); +lean_dec(x_7); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +lean_inc(x_15); +lean_inc(x_1); +x_26 = l_Lean_Elab_WF_packMutual(x_1, x_15, x_24, x_9, x_10, x_11, x_12, x_25); +if (lean_obj_tag(x_26) == 0) +{ +uint8_t x_27; +x_27 = !lean_is_exclusive(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_26, 0); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_15); +lean_ctor_set(x_29, 1, x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_1); +lean_ctor_set(x_30, 1, x_29); +lean_ctor_set(x_26, 0, x_30); +return x_26; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_31 = lean_ctor_get(x_26, 0); +x_32 = lean_ctor_get(x_26, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_26); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_15); +lean_ctor_set(x_33, 1, x_31); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_1); +lean_ctor_set(x_34, 1, x_33); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_32); +return x_35; +} +} +else +{ +uint8_t x_36; +lean_dec(x_15); +lean_dec(x_1); +x_36 = !lean_is_exclusive(x_26); +if (x_36 == 0) +{ +return x_26; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_26, 0); +x_38 = lean_ctor_get(x_26, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_26); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +uint8_t x_40; +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_23); +if (x_40 == 0) +{ +return x_23; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_23, 0); +x_42 = lean_ctor_get(x_23, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_23); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +else +{ +uint8_t x_44; +lean_dec(x_15); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_44 = !lean_is_exclusive(x_21); +if (x_44 == 0) +{ +return x_21; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_21, 0); +x_46 = lean_ctor_get(x_21, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_21); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; +} +} +} +else +{ +uint8_t x_48; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_1); +x_48 = !lean_is_exclusive(x_14); +if (x_48 == 0) +{ +return x_14; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_14, 0); +x_50 = lean_ctor_get(x_14, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_14); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +} static lean_object* _init_l_Lean_Elab_wfRecursion___closed__1() { _start: { @@ -9773,7 +2148,7 @@ lean_dec(x_40); x_43 = lean_box(0); lean_inc(x_8); lean_inc(x_7); -x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8(x_15, x_17, x_15, x_18, x_11, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_41); +x_44 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3(x_15, x_17, x_15, x_18, x_11, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_41); if (lean_obj_tag(x_44) == 0) { lean_object* x_45; lean_object* x_46; @@ -9784,10 +2159,8 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); lean_inc(x_15); -x_46 = l_Lean_Elab_getFixedPrefix(x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_45); +x_46 = l_Lean_Elab_Mutual_getFixedPrefix(x_15, x_5, x_6, x_7, x_8, x_45); if (lean_obj_tag(x_46) == 0) { uint8_t x_47; @@ -9797,7 +2170,7 @@ if (x_47 == 0) lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; uint8_t x_53; x_48 = lean_ctor_get(x_46, 0); x_49 = lean_ctor_get(x_46, 1); -x_50 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; +x_50 = l_Lean_Elab_wfRecursion___lambda__2___closed__4; x_51 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_50, x_3, x_4, x_5, x_6, x_7, x_8, x_49); x_52 = lean_ctor_get(x_51, 0); lean_inc(x_52); @@ -9814,8 +2187,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); +lean_inc(x_3); lean_inc(x_15); -x_55 = l_Lean_Elab_wfRecursion___lambda__9(x_48, x_18, x_11, x_15, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_54); +x_55 = l_Lean_Elab_wfRecursion___lambda__7(x_48, x_18, x_11, x_15, x_17, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_54); if (lean_obj_tag(x_55) == 0) { lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; @@ -9891,7 +2265,7 @@ x_73 = l_Lean_Elab_wfRecursion___closed__2; lean_ctor_set_tag(x_51, 7); lean_ctor_set(x_51, 1, x_72); lean_ctor_set(x_51, 0, x_73); -x_74 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_74 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; lean_ctor_set_tag(x_46, 7); lean_ctor_set(x_46, 1, x_74); lean_ctor_set(x_46, 0, x_51); @@ -9905,8 +2279,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); +lean_inc(x_3); lean_inc(x_15); -x_78 = l_Lean_Elab_wfRecursion___lambda__9(x_48, x_18, x_11, x_15, x_76, x_3, x_4, x_5, x_6, x_7, x_8, x_77); +x_78 = l_Lean_Elab_wfRecursion___lambda__7(x_48, x_18, x_11, x_15, x_17, x_76, x_3, x_4, x_5, x_6, x_7, x_8, x_77); lean_dec(x_76); if (lean_obj_tag(x_78) == 0) { @@ -9979,7 +2354,7 @@ x_94 = l_Lean_Elab_wfRecursion___closed__2; x_95 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_95, 0, x_94); lean_ctor_set(x_95, 1, x_93); -x_96 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_96 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; lean_ctor_set_tag(x_46, 7); lean_ctor_set(x_46, 1, x_96); lean_ctor_set(x_46, 0, x_95); @@ -9993,8 +2368,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); +lean_inc(x_3); lean_inc(x_15); -x_100 = l_Lean_Elab_wfRecursion___lambda__9(x_48, x_18, x_11, x_15, x_98, x_3, x_4, x_5, x_6, x_7, x_8, x_99); +x_100 = l_Lean_Elab_wfRecursion___lambda__7(x_48, x_18, x_11, x_15, x_17, x_98, x_3, x_4, x_5, x_6, x_7, x_8, x_99); lean_dec(x_98); if (lean_obj_tag(x_100) == 0) { @@ -10060,7 +2436,7 @@ x_112 = lean_ctor_get(x_46, 1); lean_inc(x_112); lean_inc(x_111); lean_dec(x_46); -x_113 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; +x_113 = l_Lean_Elab_wfRecursion___lambda__2___closed__4; x_114 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Term_traceAtCmdPos___spec__1(x_113, x_3, x_4, x_5, x_6, x_7, x_8, x_112); x_115 = lean_ctor_get(x_114, 0); lean_inc(x_115); @@ -10076,8 +2452,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); +lean_inc(x_3); lean_inc(x_15); -x_118 = l_Lean_Elab_wfRecursion___lambda__9(x_111, x_18, x_11, x_15, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_117); +x_118 = l_Lean_Elab_wfRecursion___lambda__7(x_111, x_18, x_11, x_15, x_17, x_43, x_3, x_4, x_5, x_6, x_7, x_8, x_117); if (lean_obj_tag(x_118) == 0) { lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; @@ -10159,7 +2536,7 @@ if (lean_is_scalar(x_130)) { } lean_ctor_set(x_135, 0, x_134); lean_ctor_set(x_135, 1, x_133); -x_136 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6; +x_136 = l_Lean_Elab_wfRecursion___lambda__2___closed__8; x_137 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_137, 0, x_135); lean_ctor_set(x_137, 1, x_136); @@ -10173,8 +2550,9 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); +lean_inc(x_3); lean_inc(x_15); -x_141 = l_Lean_Elab_wfRecursion___lambda__9(x_111, x_18, x_11, x_15, x_139, x_3, x_4, x_5, x_6, x_7, x_8, x_140); +x_141 = l_Lean_Elab_wfRecursion___lambda__7(x_111, x_18, x_11, x_15, x_17, x_139, x_3, x_4, x_5, x_6, x_7, x_8, x_140); lean_dec(x_139); if (lean_obj_tag(x_141) == 0) { @@ -10344,7 +2722,7 @@ lean_inc(x_26); x_27 = lean_ctor_get(x_25, 1); lean_inc(x_27); lean_dec(x_25); -x_28 = l_Lean_Elab_wfRecursion___lambda__8(x_24, x_22, x_18, x_11, x_15, x_23, x_17, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_27); +x_28 = l_Lean_Elab_wfRecursion___lambda__6(x_24, x_22, x_18, x_11, x_15, x_23, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_27); return x_28; } else @@ -10394,7 +2772,7 @@ lean_dec(x_21); x_36 = lean_ctor_get(x_12, 0); lean_inc(x_36); lean_dec(x_12); -x_37 = l_Lean_Elab_wfRecursion___lambda__8(x_35, x_33, x_18, x_11, x_15, x_34, x_17, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_20); +x_37 = l_Lean_Elab_wfRecursion___lambda__6(x_35, x_33, x_18, x_11, x_15, x_34, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_20); return x_37; } } @@ -10458,78 +2836,7 @@ lean_dec(x_4); return x_13; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -size_t x_11; size_t x_12; lean_object* x_13; -x_11 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_12 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__3(x_11, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_5); -lean_dec(x_4); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -uint8_t x_10; lean_object* x_11; -x_10 = lean_unbox(x_2); -lean_dec(x_2); -x_11 = l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -size_t x_4; size_t x_5; uint8_t x_6; lean_object* x_7; -x_4 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_5 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_6 = l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5(x_1, x_4, x_5); -lean_dec(x_1); -x_7 = lean_box(x_6); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -size_t x_15; size_t x_16; size_t x_17; lean_object* x_18; -x_15 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_16 = lean_unbox_usize(x_5); -lean_dec(x_5); -x_17 = lean_unbox_usize(x_6); -lean_dec(x_6); -x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__6(x_15, x_2, x_3, x_4, x_16, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_18; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -uint8_t x_10; lean_object* x_11; -x_10 = lean_unbox(x_1); -lean_dec(x_1); -x_11 = l_Lean_Elab_withEnableInfoTree___at_Lean_Elab_wfRecursion___spec__7(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { size_t x_14; size_t x_15; lean_object* x_16; @@ -10537,7 +2844,7 @@ x_14 = lean_unbox_usize(x_4); lean_dec(x_4); x_15 = lean_unbox_usize(x_5); lean_dec(x_5); -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__8(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__3(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -10548,7 +2855,7 @@ lean_dec(x_1); return x_16; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { size_t x_12; size_t x_13; lean_object* x_14; @@ -10556,13 +2863,33 @@ x_12 = lean_unbox_usize(x_2); lean_dec(x_2); x_13 = lean_unbox_usize(x_3); lean_dec(x_3); -x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__9(x_1, x_12, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__4(x_1, x_12, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_6); lean_dec(x_5); return x_14; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_15 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5(x_1, x_2, x_3, x_14, x_15, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { size_t x_11; size_t x_12; lean_object* x_13; @@ -10570,23 +2897,13 @@ x_11 = lean_unbox_usize(x_1); lean_dec(x_1); x_12 = lean_unbox_usize(x_2); lean_dec(x_2); -x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10(x_11, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6(x_11, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_5); lean_dec(x_4); return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1___boxed(lean_object* x_1) { -_start: -{ -uint8_t x_2; lean_object* x_3; -x_2 = l_Lean_Elab_wfRecursion___lambda__1(x_1); -lean_dec(x_1); -x_3 = lean_box(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__1___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -10611,12 +2928,12 @@ x_18 = lean_unbox_usize(x_2); lean_dec(x_2); x_19 = lean_unbox_usize(x_3); lean_dec(x_3); -x_20 = l_Lean_Elab_wfRecursion___lambda__2(x_1, x_18, x_19, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_20 = l_Lean_Elab_wfRecursion___lambda__1(x_1, x_18, x_19, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); lean_dec(x_10); return x_20; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { size_t x_17; size_t x_18; lean_object* x_19; @@ -10624,11 +2941,11 @@ x_17 = lean_unbox_usize(x_2); lean_dec(x_2); x_18 = lean_unbox_usize(x_3); lean_dec(x_3); -x_19 = l_Lean_Elab_wfRecursion___lambda__3(x_1, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_19 = l_Lean_Elab_wfRecursion___lambda__2(x_1, x_17, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); return x_19; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__3___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -10653,13 +2970,13 @@ x_18 = lean_unbox_usize(x_2); lean_dec(x_2); x_19 = lean_unbox_usize(x_3); lean_dec(x_3); -x_20 = l_Lean_Elab_wfRecursion___lambda__4(x_1, x_18, x_19, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_20 = l_Lean_Elab_wfRecursion___lambda__3(x_1, x_18, x_19, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); lean_dec(x_10); lean_dec(x_1); return x_20; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { size_t x_17; size_t x_18; lean_object* x_19; @@ -10667,64 +2984,47 @@ x_17 = lean_unbox_usize(x_1); lean_dec(x_1); x_18 = lean_unbox_usize(x_2); lean_dec(x_2); -x_19 = l_Lean_Elab_wfRecursion___lambda__5(x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_19 = l_Lean_Elab_wfRecursion___lambda__4(x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); return x_19; } } +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Elab_wfRecursion___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_5); +return x_13; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { -uint8_t x_15; lean_object* x_16; -x_15 = lean_unbox(x_2); +size_t x_15; size_t x_16; lean_object* x_17; +x_15 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_16 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_17 = l_Lean_Elab_wfRecursion___lambda__6(x_1, x_2, x_15, x_16, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_2); lean_dec(x_2); -x_16 = l_Lean_Elab_wfRecursion___lambda__6(x_1, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_11); +x_15 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_16 = l_Lean_Elab_wfRecursion___lambda__7(x_1, x_14, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +lean_dec(x_6); +lean_dec(x_5); return x_16; } } -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -size_t x_16; size_t x_17; lean_object* x_18; -x_16 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_17 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_18 = l_Lean_Elab_wfRecursion___lambda__7(x_16, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_8); -lean_dec(x_7); -return x_18; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -size_t x_16; size_t x_17; lean_object* x_18; -x_16 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_17 = lean_unbox_usize(x_4); -lean_dec(x_4); -x_18 = l_Lean_Elab_wfRecursion___lambda__8(x_1, x_2, x_16, x_17, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_7); -return x_18; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_wfRecursion___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -size_t x_13; size_t x_14; lean_object* x_15; -x_13 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_14 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_15 = l_Lean_Elab_wfRecursion___lambda__9(x_1, x_13, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -return x_15; -} -} -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1() { _start: { lean_object* x_1; @@ -10732,27 +3032,27 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2; -x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2; +x_2 = l_Lean_Elab_wfRecursion___lambda__2___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4() { _start: { lean_object* x_1; @@ -10760,17 +3060,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6() { _start: { lean_object* x_1; @@ -10778,37 +3078,37 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8; -x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8; +x_2 = l_Lean_Elab_wfRecursion___lambda__2___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10() { _start: { lean_object* x_1; @@ -10816,17 +3116,17 @@ x_1 = lean_mk_string_unchecked("PreDefinition", 13, 13); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12() { _start: { lean_object* x_1; @@ -10834,17 +3134,17 @@ x_1 = lean_mk_string_unchecked("WF", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14() { _start: { lean_object* x_1; @@ -10852,17 +3152,17 @@ x_1 = lean_mk_string_unchecked("Main", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16() { _start: { lean_object* x_1; @@ -10870,39 +3170,40 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15; -x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16; +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15; +x_2 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18() { +static lean_object* _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17; -x_2 = lean_unsigned_to_nat(2739u); +x_1 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17; +x_2 = lean_unsigned_to_nat(1249u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; -x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4; +x_2 = l_Lean_Elab_wfRecursion___lambda__2___closed__4; x_3 = 0; -x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18; +x_4 = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } } lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_TerminationArgument(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_Mutual(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_WF_PackMutual(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_WF_Preprocess(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_WF_Rel(uint8_t builtin, lean_object*); @@ -10921,6 +3222,9 @@ lean_dec_ref(res); res = initialize_Lean_Elab_PreDefinition_TerminationArgument(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_Mutual(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Lean_Elab_PreDefinition_WF_PackMutual(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -10942,188 +3246,91 @@ lean_dec_ref(res); res = initialize_Lean_Elab_PreDefinition_WF_GuessLex(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___lambda__2___closed__1); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__1); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__2); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__3); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__4); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__5); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__6); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__7); -l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_PreDefinition_WF_Main_0__Lean_Elab_addNonRecPreDefs___spec__1___closed__8); -l_Lean_Elab_withCommonTelescope___rarg___closed__1 = _init_l_Lean_Elab_withCommonTelescope___rarg___closed__1(); -lean_mark_persistent(l_Lean_Elab_withCommonTelescope___rarg___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__1(); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__2___closed__2); -l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1 = _init_l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1(); -lean_mark_persistent(l_Lean_Meta_forEachExpr_x27_visit___at_Lean_Elab_getFixedPrefix___spec__4___boxed__const__1); -l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1 = _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1(); -lean_mark_persistent(l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__1); -l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2 = _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2(); -lean_mark_persistent(l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__2); -l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3 = _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3(); -lean_mark_persistent(l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__3); -l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4 = _init_l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4(); -lean_mark_persistent(l_Lean_Meta_forEachExpr_x27___at_Lean_Elab_getFixedPrefix___spec__3___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__2___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__3); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__5); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__6); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__7); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___lambda__3___closed__8); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_getFixedPrefix___spec__14___closed__2); -l_Lean_Elab_getFixedPrefix___lambda__2___closed__1 = _init_l_Lean_Elab_getFixedPrefix___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_getFixedPrefix___lambda__2___closed__1); -l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1 = _init_l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1(); -lean_mark_persistent(l_panic___at_Lean_Elab_varyingVarNames___spec__1___closed__1); -l_Lean_Elab_varyingVarNames___lambda__2___closed__1 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__1); -l_Lean_Elab_varyingVarNames___lambda__2___closed__2 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__2); -l_Lean_Elab_varyingVarNames___lambda__2___closed__3 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__3); -l_Lean_Elab_varyingVarNames___lambda__2___closed__4 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__4); -l_Lean_Elab_varyingVarNames___lambda__2___closed__5 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__5); -l_Lean_Elab_varyingVarNames___lambda__2___closed__6 = _init_l_Lean_Elab_varyingVarNames___lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___lambda__2___closed__6); -l_Lean_Elab_varyingVarNames___closed__1 = _init_l_Lean_Elab_varyingVarNames___closed__1(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__1); -l_Lean_Elab_varyingVarNames___closed__2 = _init_l_Lean_Elab_varyingVarNames___closed__2(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__2); -l_Lean_Elab_varyingVarNames___closed__3 = _init_l_Lean_Elab_varyingVarNames___closed__3(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__3); -l_Lean_Elab_varyingVarNames___closed__4 = _init_l_Lean_Elab_varyingVarNames___closed__4(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__4); -l_Lean_Elab_varyingVarNames___closed__5 = _init_l_Lean_Elab_varyingVarNames___closed__5(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__5); -l_Lean_Elab_varyingVarNames___closed__6 = _init_l_Lean_Elab_varyingVarNames___closed__6(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__6); -l_Lean_Elab_varyingVarNames___closed__7 = _init_l_Lean_Elab_varyingVarNames___closed__7(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__7); -l_Lean_Elab_varyingVarNames___closed__8 = _init_l_Lean_Elab_varyingVarNames___closed__8(); -lean_mark_persistent(l_Lean_Elab_varyingVarNames___closed__8); l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__1(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__1); l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__2(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__2___closed__2); -l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1 = _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1(); -lean_mark_persistent(l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__1); -l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2 = _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2(); -lean_mark_persistent(l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__2); -l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3 = _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3(); -lean_mark_persistent(l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__3); -l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4 = _init_l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4(); -lean_mark_persistent(l_Lean_setReducibilityStatus___at_Lean_Elab_wfRecursion___spec__4___closed__4); -l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1(); -lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__1); -l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2(); -lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__2); -l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3(); -lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__3); -l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4 = _init_l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4(); -lean_mark_persistent(l_Array_anyMUnsafe_any___at_Lean_Elab_wfRecursion___spec__5___closed__4); -l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__1); -l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2(); -lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__10___closed__2); -l_Lean_Elab_wfRecursion___lambda__1___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__1___closed__1); -l_Lean_Elab_wfRecursion___lambda__1___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__1___closed__2(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__1___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_wfRecursion___spec__5___closed__4); +l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__1); +l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2 = _init_l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2(); +lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Elab_wfRecursion___spec__6___closed__2); l_Lean_Elab_wfRecursion___lambda__2___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__1); -l_Lean_Elab_wfRecursion___lambda__3___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__3___closed__1); -l_Lean_Elab_wfRecursion___lambda__3___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__3___closed__2); -l_Lean_Elab_wfRecursion___lambda__5___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__5___closed__1(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__5___closed__1); -l_Lean_Elab_wfRecursion___lambda__5___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__5___closed__2(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__5___closed__2); +l_Lean_Elab_wfRecursion___lambda__2___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__2); +l_Lean_Elab_wfRecursion___lambda__2___closed__3 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__3); +l_Lean_Elab_wfRecursion___lambda__2___closed__4 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__4); +l_Lean_Elab_wfRecursion___lambda__2___closed__5 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__5); +l_Lean_Elab_wfRecursion___lambda__2___closed__6 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__6); +l_Lean_Elab_wfRecursion___lambda__2___closed__7 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__7); +l_Lean_Elab_wfRecursion___lambda__2___closed__8 = _init_l_Lean_Elab_wfRecursion___lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__2___closed__8); +l_Lean_Elab_wfRecursion___lambda__4___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__4___closed__1); +l_Lean_Elab_wfRecursion___lambda__4___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__4___closed__2); l_Lean_Elab_wfRecursion___lambda__6___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__6___closed__1); -l_Lean_Elab_wfRecursion___lambda__7___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__7___closed__1(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__7___closed__1); -l_Lean_Elab_wfRecursion___lambda__7___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__7___closed__2(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__7___closed__2); -l_Lean_Elab_wfRecursion___lambda__8___closed__1 = _init_l_Lean_Elab_wfRecursion___lambda__8___closed__1(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__8___closed__1); -l_Lean_Elab_wfRecursion___lambda__8___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__8___closed__2(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__8___closed__2); -l_Lean_Elab_wfRecursion___lambda__8___closed__3 = _init_l_Lean_Elab_wfRecursion___lambda__8___closed__3(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__8___closed__3); -l_Lean_Elab_wfRecursion___lambda__8___closed__4 = _init_l_Lean_Elab_wfRecursion___lambda__8___closed__4(); -lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__8___closed__4); +l_Lean_Elab_wfRecursion___lambda__6___closed__2 = _init_l_Lean_Elab_wfRecursion___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__6___closed__2); +l_Lean_Elab_wfRecursion___lambda__6___closed__3 = _init_l_Lean_Elab_wfRecursion___lambda__6___closed__3(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__6___closed__3); +l_Lean_Elab_wfRecursion___lambda__6___closed__4 = _init_l_Lean_Elab_wfRecursion___lambda__6___closed__4(); +lean_mark_persistent(l_Lean_Elab_wfRecursion___lambda__6___closed__4); l_Lean_Elab_wfRecursion___closed__1 = _init_l_Lean_Elab_wfRecursion___closed__1(); lean_mark_persistent(l_Lean_Elab_wfRecursion___closed__1); l_Lean_Elab_wfRecursion___closed__2 = _init_l_Lean_Elab_wfRecursion___closed__2(); lean_mark_persistent(l_Lean_Elab_wfRecursion___closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__1); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__2); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__3); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__4); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__5); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__6); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__7); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__8); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__9); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__10); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__11); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__12); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__13); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__14); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__15); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__16); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__17); -l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18(); -lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739____closed__18); -if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_2739_(lean_io_mk_world()); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__1); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__2); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__3); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__4); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__5); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__6); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__7); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__8); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__9); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__10); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__11); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__12); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__13); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__14); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__15); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__16); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__17); +l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18 = _init_l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18(); +lean_mark_persistent(l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249____closed__18); +if (builtin) {res = l_Lean_Elab_initFn____x40_Lean_Elab_PreDefinition_WF_Main___hyg_1249_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/PreDefinition/WF/PackMutual.c b/stage0/stdlib/Lean/Elab/PreDefinition/WF/PackMutual.c index 929a67007a..98e6463487 100644 --- a/stage0/stdlib/Lean/Elab/PreDefinition/WF/PackMutual.c +++ b/stage0/stdlib/Lean/Elab/PreDefinition/WF/PackMutual.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Elab.PreDefinition.WF.PackMutual -// Imports: Lean.Meta.ArgsPacker Lean.Elab.PreDefinition.Basic +// Imports: Lean.Meta.ArgsPacker Lean.Elab.PreDefinition.Basic Lean.Elab.PreDefinition.WF.Eqns #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,89 +14,149 @@ extern "C" { #endif lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_instInhabitedPreDefinition; lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); lean_object* l_Lean_Meta_ArgsPacker_uncurryType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_sort___override(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); lean_object* l_Array_toSubarray___rarg(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_mutualName___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1; lean_object* lean_array_fget(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_packMutual___lambda__3___closed__2; +lean_object* l_Lean_Expr_fvarId_x21(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6; lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3; static lean_object* l_Lean_Elab_WF_withAppN___closed__1; -lean_object* l_Lean_Meta_ArgsPacker_arities(lean_object*); -static lean_object* l_Lean_Elab_WF_packMutual___lambda__1___closed__1; +uint8_t l_Lean_Meta_ArgsPacker_onlyOneUnary(lean_object*); +lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_preDefsFromUnaryNonRec___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_ArgsPacker_uncurry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___closed__1; +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_withAppN___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_mutualName___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__3; lean_object* l_outOfBounds___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___closed__2; +lean_object* l_Lean_Meta_ArgsPacker_curryProj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__4; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4; +lean_object* l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2; +static lean_object* l_Lean_Elab_WF_packCalls___lambda__4___closed__1; lean_object* l_Lean_Name_append(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___lambda__6___closed__1; extern lean_object* l_Lean_levelZero; -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_constName_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__2; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__6; +lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); -static lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1; +lean_object* l_Lean_MessageData_ofExpr(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_ArgsPacker_pack(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_WF_withAppN___lambda__2___closed__2; +lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Expr_constLevels_x21(lean_object*); lean_object* l_Lean_Expr_bindingDomain_x21(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_packMutual___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_packCalls___closed__5; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_mutualName___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_WF_packMutual___lambda__3___closed__4; +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_FVarId_getUserName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_addAsAxiom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_panic_fn(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4; lean_object* l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec__3(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6; lean_object* l_Array_ofSubarray___rarg(lean_object*); +static lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3; +static lean_object* l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); -static lean_object* l_Lean_Elab_WF_packMutual___lambda__3___closed__3; -static lean_object* l_Lean_Elab_WF_packMutual___lambda__3___closed__1; +lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_string_append(lean_object*, lean_object*); +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_mutualName___boxed(lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_mutualName___closed__3; lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_preDefsFromUnaryNonRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); uint8_t l_Lean_Expr_isConst(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isForall(lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_mutualName(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_WF_withAppN___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -190,7 +250,7 @@ lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_dec(x_2); lean_dec(x_1); x_15 = l_Lean_Elab_WF_withAppN___lambda__2___closed__2; -x_16 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_15, x_6, x_7, x_8, x_9, x_10); +x_16 = l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__3(x_15, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -397,7 +457,28 @@ lean_dec(x_3); return x_11; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +static lean_object* _init_l_Lean_Elab_WF_packCalls___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; +x_7 = l_Lean_Elab_WF_packCalls___lambda__1___closed__1; +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_7); +lean_ctor_set(x_8, 1, x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; lean_object* x_9; @@ -409,85 +490,69 @@ lean_ctor_set(x_9, 1, x_7); return x_9; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_13 = lean_unsigned_to_nat(0u); -lean_inc(x_1); -lean_inc(x_7); -x_14 = l_Array_toSubarray___rarg(x_7, x_13, x_1); -x_15 = lean_array_get_size(x_7); -x_16 = l_Array_toSubarray___rarg(x_7, x_1, x_15); -x_17 = l_Array_ofSubarray___rarg(x_16); -lean_dec(x_16); -x_18 = l_Lean_Meta_ArgsPacker_pack(x_2, x_3, x_4, x_17, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_17); -if (lean_obj_tag(x_18) == 0) -{ -uint8_t x_19; -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_20 = lean_ctor_get(x_18, 0); -x_21 = l_Lean_Expr_const___override(x_5, x_6); -x_22 = l_Array_ofSubarray___rarg(x_14); +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_array_get_size(x_6); +x_13 = l_Array_toSubarray___rarg(x_6, x_1, x_12); +x_14 = l_Array_ofSubarray___rarg(x_13); +lean_dec(x_13); +x_15 = l_Lean_Meta_ArgsPacker_pack(x_2, x_3, x_4, x_14, x_7, x_8, x_9, x_10, x_11); lean_dec(x_14); -x_23 = l_Lean_mkAppN(x_21, x_22); -lean_dec(x_22); -x_24 = l_Lean_Expr_app___override(x_23, x_20); -lean_ctor_set(x_18, 0, x_24); -return x_18; +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; +x_16 = !lean_is_exclusive(x_15); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_15, 0); +x_18 = l_Lean_Expr_app___override(x_5, x_17); +lean_ctor_set(x_15, 0, x_18); +return x_15; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_25 = lean_ctor_get(x_18, 0); -x_26 = lean_ctor_get(x_18, 1); -lean_inc(x_26); -lean_inc(x_25); -lean_dec(x_18); -x_27 = l_Lean_Expr_const___override(x_5, x_6); -x_28 = l_Array_ofSubarray___rarg(x_14); -lean_dec(x_14); -x_29 = l_Lean_mkAppN(x_27, x_28); -lean_dec(x_28); -x_30 = l_Lean_Expr_app___override(x_29, x_25); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_26); -return x_31; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_15, 0); +x_20 = lean_ctor_get(x_15, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_15); +x_21 = l_Lean_Expr_app___override(x_5, x_19); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_20); +return x_22; } } else { -uint8_t x_32; -lean_dec(x_14); -lean_dec(x_6); +uint8_t x_23; lean_dec(x_5); -x_32 = !lean_is_exclusive(x_18); -if (x_32 == 0) +x_23 = !lean_is_exclusive(x_15); +if (x_23 == 0) { -return x_18; +return x_15; } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_33 = lean_ctor_get(x_18, 0); -x_34 = lean_ctor_get(x_18, 1); -lean_inc(x_34); -lean_inc(x_33); -lean_dec(x_18); -x_35 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); -return x_35; +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_15, 0); +x_25 = lean_ctor_get(x_15, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_15); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } } } -static lean_object* _init_l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Elab_WF_packCalls___lambda__4___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -496,335 +561,331 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_14 = l_Lean_Expr_constName_x21(x_1); -x_15 = l_Lean_Expr_constLevels_x21(x_1); -x_16 = lean_unsigned_to_nat(0u); -x_17 = l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec__3(x_3, x_14, x_16); +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = l_Lean_Expr_constName_x21(x_2); +x_15 = lean_unsigned_to_nat(0u); +x_16 = l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec__3(x_3, x_14, x_15); lean_dec(x_14); -if (lean_obj_tag(x_17) == 0) +if (lean_obj_tag(x_16) == 0) { -lean_object* x_18; lean_object* x_19; -lean_dec(x_15); +lean_object* x_17; lean_object* x_18; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_18 = lean_box(0); -x_19 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1(x_2, x_18, x_9, x_10, x_11, x_12, x_13); +x_17 = lean_box(0); +x_18 = l_Lean_Elab_WF_packCalls___lambda__2(x_1, x_17, x_9, x_10, x_11, x_12, x_13); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); -return x_19; +return x_18; } else { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_17); -if (x_20 == 0) +uint8_t x_19; +x_19 = !lean_is_exclusive(x_16); +if (x_19 == 0) { -lean_object* x_21; lean_object* x_22; uint8_t x_23; lean_object* x_24; -x_21 = lean_ctor_get(x_17, 0); -x_22 = lean_array_get_size(x_4); -x_23 = lean_nat_dec_lt(x_21, x_22); -lean_dec(x_22); -lean_inc(x_21); +lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_16, 0); +x_21 = lean_array_get_size(x_4); +x_22 = lean_nat_dec_lt(x_20, x_21); +lean_dec(x_21); +lean_inc(x_20); lean_inc(x_4); lean_inc(x_5); -x_24 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2___boxed), 12, 6); -lean_closure_set(x_24, 0, x_5); -lean_closure_set(x_24, 1, x_4); -lean_closure_set(x_24, 2, x_6); -lean_closure_set(x_24, 3, x_21); -lean_closure_set(x_24, 4, x_7); -lean_closure_set(x_24, 5, x_15); -if (x_23 == 0) +x_23 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packCalls___lambda__3___boxed), 11, 5); +lean_closure_set(x_23, 0, x_5); +lean_closure_set(x_23, 1, x_4); +lean_closure_set(x_23, 2, x_6); +lean_closure_set(x_23, 3, x_20); +lean_closure_set(x_23, 4, x_7); +if (x_22 == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_dec(x_21); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_20); lean_dec(x_4); -x_25 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1; -x_26 = l_outOfBounds___rarg(x_25); -x_27 = lean_array_get_size(x_26); +x_24 = l_Lean_Elab_WF_packCalls___lambda__4___closed__1; +x_25 = l_outOfBounds___rarg(x_24); +x_26 = lean_array_get_size(x_25); +lean_dec(x_25); +x_27 = lean_nat_add(x_5, x_26); lean_dec(x_26); -x_28 = lean_nat_add(x_5, x_27); -lean_dec(x_27); lean_dec(x_5); -x_29 = l_Lean_Elab_WF_withAppN(x_28, x_2, x_24, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_29) == 0) +x_28 = l_Lean_Elab_WF_withAppN(x_27, x_1, x_23, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_28) == 0) { -uint8_t x_30; -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) +uint8_t x_29; +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) { -lean_object* x_31; -x_31 = lean_ctor_get(x_29, 0); -lean_ctor_set_tag(x_17, 0); -lean_ctor_set(x_17, 0, x_31); -lean_ctor_set(x_29, 0, x_17); -return x_29; +lean_object* x_30; +x_30 = lean_ctor_get(x_28, 0); +lean_ctor_set_tag(x_16, 0); +lean_ctor_set(x_16, 0, x_30); +lean_ctor_set(x_28, 0, x_16); +return x_28; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_29, 0); -x_33 = lean_ctor_get(x_29, 1); -lean_inc(x_33); +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_28, 0); +x_32 = lean_ctor_get(x_28, 1); lean_inc(x_32); -lean_dec(x_29); -lean_ctor_set_tag(x_17, 0); -lean_ctor_set(x_17, 0, x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_17); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_inc(x_31); +lean_dec(x_28); +lean_ctor_set_tag(x_16, 0); +lean_ctor_set(x_16, 0, x_31); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_16); +lean_ctor_set(x_33, 1, x_32); +return x_33; } } else { -uint8_t x_35; -lean_free_object(x_17); -x_35 = !lean_is_exclusive(x_29); -if (x_35 == 0) +uint8_t x_34; +lean_free_object(x_16); +x_34 = !lean_is_exclusive(x_28); +if (x_34 == 0) { -return x_29; +return x_28; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_29, 0); -x_37 = lean_ctor_get(x_29, 1); -lean_inc(x_37); +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_28, 0); +x_36 = lean_ctor_get(x_28, 1); lean_inc(x_36); -lean_dec(x_29); -x_38 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_38, 0, x_36); -lean_ctor_set(x_38, 1, x_37); -return x_38; +lean_inc(x_35); +lean_dec(x_28); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; } } } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_39 = lean_array_fget(x_4, x_21); -lean_dec(x_21); +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_38 = lean_array_fget(x_4, x_20); +lean_dec(x_20); lean_dec(x_4); -x_40 = lean_array_get_size(x_39); +x_39 = lean_array_get_size(x_38); +lean_dec(x_38); +x_40 = lean_nat_add(x_5, x_39); lean_dec(x_39); -x_41 = lean_nat_add(x_5, x_40); -lean_dec(x_40); lean_dec(x_5); -x_42 = l_Lean_Elab_WF_withAppN(x_41, x_2, x_24, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_42) == 0) +x_41 = l_Lean_Elab_WF_withAppN(x_40, x_1, x_23, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_41) == 0) { -uint8_t x_43; -x_43 = !lean_is_exclusive(x_42); -if (x_43 == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_41); +if (x_42 == 0) { -lean_object* x_44; -x_44 = lean_ctor_get(x_42, 0); -lean_ctor_set_tag(x_17, 0); -lean_ctor_set(x_17, 0, x_44); -lean_ctor_set(x_42, 0, x_17); -return x_42; +lean_object* x_43; +x_43 = lean_ctor_get(x_41, 0); +lean_ctor_set_tag(x_16, 0); +lean_ctor_set(x_16, 0, x_43); +lean_ctor_set(x_41, 0, x_16); +return x_41; } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_42, 0); -x_46 = lean_ctor_get(x_42, 1); -lean_inc(x_46); +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_41, 0); +x_45 = lean_ctor_get(x_41, 1); lean_inc(x_45); -lean_dec(x_42); -lean_ctor_set_tag(x_17, 0); -lean_ctor_set(x_17, 0, x_45); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_17); -lean_ctor_set(x_47, 1, x_46); -return x_47; +lean_inc(x_44); +lean_dec(x_41); +lean_ctor_set_tag(x_16, 0); +lean_ctor_set(x_16, 0, x_44); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_16); +lean_ctor_set(x_46, 1, x_45); +return x_46; } } else { -uint8_t x_48; -lean_free_object(x_17); -x_48 = !lean_is_exclusive(x_42); -if (x_48 == 0) +uint8_t x_47; +lean_free_object(x_16); +x_47 = !lean_is_exclusive(x_41); +if (x_47 == 0) { -return x_42; +return x_41; } else { -lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_49 = lean_ctor_get(x_42, 0); -x_50 = lean_ctor_get(x_42, 1); -lean_inc(x_50); +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_41, 0); +x_49 = lean_ctor_get(x_41, 1); lean_inc(x_49); -lean_dec(x_42); -x_51 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_51, 0, x_49); -lean_ctor_set(x_51, 1, x_50); -return x_51; +lean_inc(x_48); +lean_dec(x_41); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; } } } } else { -lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; -x_52 = lean_ctor_get(x_17, 0); -lean_inc(x_52); -lean_dec(x_17); -x_53 = lean_array_get_size(x_4); -x_54 = lean_nat_dec_lt(x_52, x_53); -lean_dec(x_53); -lean_inc(x_52); +lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; +x_51 = lean_ctor_get(x_16, 0); +lean_inc(x_51); +lean_dec(x_16); +x_52 = lean_array_get_size(x_4); +x_53 = lean_nat_dec_lt(x_51, x_52); +lean_dec(x_52); +lean_inc(x_51); lean_inc(x_4); lean_inc(x_5); -x_55 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2___boxed), 12, 6); -lean_closure_set(x_55, 0, x_5); -lean_closure_set(x_55, 1, x_4); -lean_closure_set(x_55, 2, x_6); -lean_closure_set(x_55, 3, x_52); -lean_closure_set(x_55, 4, x_7); -lean_closure_set(x_55, 5, x_15); -if (x_54 == 0) +x_54 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packCalls___lambda__3___boxed), 11, 5); +lean_closure_set(x_54, 0, x_5); +lean_closure_set(x_54, 1, x_4); +lean_closure_set(x_54, 2, x_6); +lean_closure_set(x_54, 3, x_51); +lean_closure_set(x_54, 4, x_7); +if (x_53 == 0) { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -lean_dec(x_52); +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_51); lean_dec(x_4); -x_56 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1; -x_57 = l_outOfBounds___rarg(x_56); -x_58 = lean_array_get_size(x_57); +x_55 = l_Lean_Elab_WF_packCalls___lambda__4___closed__1; +x_56 = l_outOfBounds___rarg(x_55); +x_57 = lean_array_get_size(x_56); +lean_dec(x_56); +x_58 = lean_nat_add(x_5, x_57); lean_dec(x_57); -x_59 = lean_nat_add(x_5, x_58); -lean_dec(x_58); lean_dec(x_5); -x_60 = l_Lean_Elab_WF_withAppN(x_59, x_2, x_55, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_60) == 0) +x_59 = l_Lean_Elab_WF_withAppN(x_58, x_1, x_54, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_59) == 0) { -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_61 = lean_ctor_get(x_60, 0); +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); -lean_inc(x_62); -if (lean_is_exclusive(x_60)) { - lean_ctor_release(x_60, 0); - lean_ctor_release(x_60, 1); - x_63 = x_60; +if (lean_is_exclusive(x_59)) { + lean_ctor_release(x_59, 0); + lean_ctor_release(x_59, 1); + x_62 = x_59; } else { - lean_dec_ref(x_60); - x_63 = lean_box(0); + lean_dec_ref(x_59); + x_62 = lean_box(0); } -x_64 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_64, 0, x_61); -if (lean_is_scalar(x_63)) { - x_65 = lean_alloc_ctor(0, 2, 0); +x_63 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_63, 0, x_60); +if (lean_is_scalar(x_62)) { + x_64 = lean_alloc_ctor(0, 2, 0); } else { - x_65 = x_63; + x_64 = x_62; } -lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_62); -return x_65; +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_61); +return x_64; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_66 = lean_ctor_get(x_60, 0); +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_65 = lean_ctor_get(x_59, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_59, 1); lean_inc(x_66); -x_67 = lean_ctor_get(x_60, 1); -lean_inc(x_67); -if (lean_is_exclusive(x_60)) { - lean_ctor_release(x_60, 0); - lean_ctor_release(x_60, 1); - x_68 = x_60; +if (lean_is_exclusive(x_59)) { + lean_ctor_release(x_59, 0); + lean_ctor_release(x_59, 1); + x_67 = x_59; } else { - lean_dec_ref(x_60); - x_68 = lean_box(0); + lean_dec_ref(x_59); + x_67 = lean_box(0); } -if (lean_is_scalar(x_68)) { - x_69 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(1, 2, 0); } else { - x_69 = x_68; + x_68 = x_67; } -lean_ctor_set(x_69, 0, x_66); -lean_ctor_set(x_69, 1, x_67); -return x_69; +lean_ctor_set(x_68, 0, x_65); +lean_ctor_set(x_68, 1, x_66); +return x_68; } } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_70 = lean_array_fget(x_4, x_52); -lean_dec(x_52); +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_69 = lean_array_fget(x_4, x_51); +lean_dec(x_51); lean_dec(x_4); -x_71 = lean_array_get_size(x_70); +x_70 = lean_array_get_size(x_69); +lean_dec(x_69); +x_71 = lean_nat_add(x_5, x_70); lean_dec(x_70); -x_72 = lean_nat_add(x_5, x_71); -lean_dec(x_71); lean_dec(x_5); -x_73 = l_Lean_Elab_WF_withAppN(x_72, x_2, x_55, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_73) == 0) +x_72 = l_Lean_Elab_WF_withAppN(x_71, x_1, x_54, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_72) == 0) { -lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_74 = lean_ctor_get(x_73, 0); +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_72, 1); lean_inc(x_74); -x_75 = lean_ctor_get(x_73, 1); -lean_inc(x_75); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - x_76 = x_73; +if (lean_is_exclusive(x_72)) { + lean_ctor_release(x_72, 0); + lean_ctor_release(x_72, 1); + x_75 = x_72; } else { - lean_dec_ref(x_73); - x_76 = lean_box(0); + lean_dec_ref(x_72); + x_75 = lean_box(0); } -x_77 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_77, 0, x_74); -if (lean_is_scalar(x_76)) { - x_78 = lean_alloc_ctor(0, 2, 0); +x_76 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_76, 0, x_73); +if (lean_is_scalar(x_75)) { + x_77 = lean_alloc_ctor(0, 2, 0); } else { - x_78 = x_76; + x_77 = x_75; } -lean_ctor_set(x_78, 0, x_77); -lean_ctor_set(x_78, 1, x_75); -return x_78; +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_74); +return x_77; } else { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_79 = lean_ctor_get(x_73, 0); +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_78 = lean_ctor_get(x_72, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_72, 1); lean_inc(x_79); -x_80 = lean_ctor_get(x_73, 1); -lean_inc(x_80); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - x_81 = x_73; +if (lean_is_exclusive(x_72)) { + lean_ctor_release(x_72, 0); + lean_ctor_release(x_72, 1); + x_80 = x_72; } else { - lean_dec_ref(x_73); - x_81 = lean_box(0); + lean_dec_ref(x_72); + x_80 = lean_box(0); } -if (lean_is_scalar(x_81)) { - x_82 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_80)) { + x_81 = lean_alloc_ctor(1, 2, 0); } else { - x_82 = x_81; + x_81 = x_80; } -lean_ctor_set(x_82, 0, x_79); -lean_ctor_set(x_82, 1, x_80); -return x_82; +lean_ctor_set(x_81, 0, x_78); +lean_ctor_set(x_81, 1, x_79); +return x_81; } } } } } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; uint8_t x_13; @@ -840,8 +901,8 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); -lean_dec(x_1); x_14 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_14, 0, x_6); x_15 = lean_alloc_ctor(0, 2, 0); @@ -853,17 +914,216 @@ else { lean_object* x_16; lean_object* x_17; x_16 = lean_box(0); -x_17 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3(x_12, x_6, x_3, x_2, x_1, x_4, x_5, x_16, x_7, x_8, x_9, x_10, x_11); +x_17 = l_Lean_Elab_WF_packCalls___lambda__4(x_6, x_12, x_1, x_2, x_3, x_4, x_5, x_16, x_7, x_8, x_9, x_10, x_11); lean_dec(x_12); return x_17; } } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +static lean_object* _init_l_Lean_Elab_WF_packCalls___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packCalls___lambda__1___boxed), 6, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; uint8_t x_17; lean_object* x_18; +x_13 = l_Lean_Expr_bindingDomain_x21(x_1); +x_14 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packCalls___lambda__5___boxed), 11, 5); +lean_closure_set(x_14, 0, x_2); +lean_closure_set(x_14, 1, x_3); +lean_closure_set(x_14, 2, x_4); +lean_closure_set(x_14, 3, x_13); +lean_closure_set(x_14, 4, x_5); +x_15 = l_Lean_Elab_WF_packCalls___lambda__6___closed__1; +x_16 = 0; +x_17 = 1; +x_18 = l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(x_6, x_15, x_14, x_16, x_17, x_8, x_9, x_10, x_11, x_12); +return x_18; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Not a forall: ", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_WF_packCalls___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" : ", 3, 3); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_WF_packCalls___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_packCalls___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_WF_packCalls___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_4); +x_11 = lean_infer_type(x_4, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +x_14 = l_Lean_Expr_isForall(x_12); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_15 = l_Lean_MessageData_ofExpr(x_4); +x_16 = l_Lean_Elab_WF_packCalls___closed__2; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Lean_Elab_WF_packCalls___closed__4; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Lean_MessageData_ofExpr(x_12); +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +x_22 = l_Lean_Elab_WF_packCalls___closed__6; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__3(x_23, x_6, x_7, x_8, x_9, x_13); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_25 = !lean_is_exclusive(x_24); +if (x_25 == 0) +{ +return x_24; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_24, 0); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_24); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_box(0); +x_30 = l_Lean_Elab_WF_packCalls___lambda__6(x_12, x_3, x_2, x_1, x_4, x_5, x_29, x_6, x_7, x_8, x_9, x_13); +lean_dec(x_12); +return x_30; +} +} +else +{ +uint8_t x_31; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_31 = !lean_is_exclusive(x_11); +if (x_31 == 0) +{ +return x_11; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_11, 0); +x_33 = lean_ctor_get(x_11, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_11); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Elab_WF_packCalls___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Elab_WF_packCalls___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); @@ -872,35 +1132,195 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_2); -return x_13; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; -x_14 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -lean_dec(x_8); -lean_dec(x_3); -lean_dec(x_1); -return x_14; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; -x_12 = l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); +x_12 = l_Lean_Elab_WF_packCalls___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); return x_12; } } +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Lean_Elab_WF_packCalls___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +lean_dec(x_3); +lean_dec(x_2); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_WF_packCalls___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packCalls___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Elab_WF_packCalls___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_1); +return x_13; +} +} +static lean_object* _init_l_Lean_Elab_WF_mutualName___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_unary", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_mutualName___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_WF_mutualName___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_WF_mutualName___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_mutual", 7, 7); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_mutualName___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_WF_mutualName___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_mutualName(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; +x_3 = l_Lean_Meta_ArgsPacker_onlyOneUnary(x_1); +if (x_3 == 0) +{ +lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_4 = lean_array_get_size(x_1); +x_5 = lean_unsigned_to_nat(1u); +x_6 = lean_nat_dec_lt(x_5, x_4); +lean_dec(x_4); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_7 = lean_array_get_size(x_2); +x_8 = lean_unsigned_to_nat(0u); +x_9 = lean_nat_dec_lt(x_8, x_7); +lean_dec(x_7); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = l_Lean_Elab_instInhabitedPreDefinition; +x_11 = l_outOfBounds___rarg(x_10); +x_12 = lean_ctor_get(x_11, 3); +lean_inc(x_12); +lean_dec(x_11); +x_13 = l_Lean_Elab_WF_mutualName___closed__2; +x_14 = l_Lean_Name_append(x_12, x_13); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_array_fget(x_2, x_8); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Elab_WF_mutualName___closed__2; +x_18 = l_Lean_Name_append(x_16, x_17); +return x_18; +} +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_array_get_size(x_2); +x_20 = lean_unsigned_to_nat(0u); +x_21 = lean_nat_dec_lt(x_20, x_19); +lean_dec(x_19); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_22 = l_Lean_Elab_instInhabitedPreDefinition; +x_23 = l_outOfBounds___rarg(x_22); +x_24 = lean_ctor_get(x_23, 3); +lean_inc(x_24); +lean_dec(x_23); +x_25 = l_Lean_Elab_WF_mutualName___closed__4; +x_26 = l_Lean_Name_append(x_24, x_25); +return x_26; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_27 = lean_array_fget(x_2, x_20); +x_28 = lean_ctor_get(x_27, 3); +lean_inc(x_28); +lean_dec(x_27); +x_29 = l_Lean_Elab_WF_mutualName___closed__4; +x_30 = l_Lean_Name_append(x_28, x_29); +return x_30; +} +} +} +else +{ +lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_31 = lean_array_get_size(x_2); +x_32 = lean_unsigned_to_nat(0u); +x_33 = lean_nat_dec_lt(x_32, x_31); +lean_dec(x_31); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = l_Lean_Elab_instInhabitedPreDefinition; +x_35 = l_outOfBounds___rarg(x_34); +x_36 = lean_ctor_get(x_35, 3); +lean_inc(x_36); +lean_dec(x_35); +return x_36; +} +else +{ +lean_object* x_37; lean_object* x_38; +x_37 = lean_array_fget(x_2, x_32); +x_38 = lean_ctor_get(x_37, 3); +lean_inc(x_38); +lean_dec(x_37); +return x_38; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_mutualName___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Elab_WF_mutualName(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -1055,63 +1475,7 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3(size_t x_1, size_t x_2, lean_object* x_3) { -_start: -{ -uint8_t x_4; -x_4 = lean_usize_dec_lt(x_2, x_1); -if (x_4 == 0) -{ -return x_3; -} -else -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; lean_object* x_11; -x_5 = lean_array_uget(x_3, x_2); -x_6 = lean_unsigned_to_nat(0u); -x_7 = lean_array_uset(x_3, x_2, x_6); -x_8 = lean_ctor_get(x_5, 3); -lean_inc(x_8); -lean_dec(x_5); -x_9 = 1; -x_10 = lean_usize_add(x_2, x_9); -x_11 = lean_array_uset(x_7, x_2, x_8); -x_2 = x_10; -x_3 = x_11; -goto _start; -} -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_alloc_ctor(2, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; -x_7 = l_Lean_Elab_WF_packMutual___lambda__1___closed__1; -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_7); -lean_ctor_set(x_8, 1, x_6); -return x_8; -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packMutual___lambda__1___boxed), 6, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { size_t x_13; size_t x_14; lean_object* x_15; @@ -1153,211 +1517,220 @@ x_21 = l_Lean_Meta_ArgsPacker_uncurryType(x_2, x_16, x_8, x_9, x_10, x_11, x_20) lean_dec(x_16); if (lean_obj_tag(x_21) == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; uint8_t x_26; uint8_t x_27; lean_object* x_28; +lean_object* x_22; lean_object* x_23; uint8_t x_24; uint8_t x_25; uint8_t x_26; lean_object* x_27; x_22 = lean_ctor_get(x_21, 0); lean_inc(x_22); x_23 = lean_ctor_get(x_21, 1); lean_inc(x_23); lean_dec(x_21); -x_24 = l_Lean_Expr_bindingDomain_x21(x_22); -x_25 = 0; +x_24 = 0; +x_25 = 1; x_26 = 1; -x_27 = 1; -x_28 = l_Lean_Meta_mkForallFVars(x_6, x_22, x_25, x_26, x_27, x_8, x_9, x_10, x_11, x_23); -if (lean_obj_tag(x_28) == 0) +x_27 = l_Lean_Meta_mkForallFVars(x_6, x_22, x_24, x_25, x_26, x_8, x_9, x_10, x_11, x_23); +if (lean_obj_tag(x_27) == 0) { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_28, 0); +lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); +lean_dec(x_27); +x_30 = lean_ctor_get(x_3, 0); lean_inc(x_30); -lean_dec(x_28); -x_31 = !lean_is_exclusive(x_3); -if (x_31 == 0) -{ -lean_object* x_32; uint8_t x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_32 = lean_ctor_get(x_3, 0); -x_33 = lean_ctor_get_uint8(x_3, sizeof(void*)*7); -x_34 = lean_ctor_get(x_3, 1); -x_35 = lean_ctor_get(x_3, 2); -x_36 = lean_ctor_get(x_3, 6); -x_37 = lean_ctor_get(x_3, 4); -lean_dec(x_37); -x_38 = lean_ctor_get(x_3, 3); -lean_dec(x_38); -lean_inc(x_36); -lean_inc(x_29); -lean_inc(x_4); -lean_inc(x_35); -lean_inc(x_34); +x_31 = lean_ctor_get_uint8(x_3, sizeof(void*)*7); +x_32 = lean_ctor_get(x_3, 1); lean_inc(x_32); -lean_ctor_set(x_3, 4, x_29); +x_33 = lean_ctor_get(x_3, 2); +lean_inc(x_33); +x_34 = lean_ctor_get(x_3, 5); +lean_inc(x_34); +x_35 = lean_ctor_get(x_3, 6); +lean_inc(x_35); +lean_inc(x_35); +lean_inc(x_28); +lean_inc(x_4); +lean_inc(x_33); +lean_inc(x_32); +lean_inc(x_30); +x_36 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_36, 0, x_30); +lean_ctor_set(x_36, 1, x_32); +lean_ctor_set(x_36, 2, x_33); +lean_ctor_set(x_36, 3, x_4); +lean_ctor_set(x_36, 4, x_28); +lean_ctor_set(x_36, 5, x_34); +lean_ctor_set(x_36, 6, x_35); +lean_ctor_set_uint8(x_36, sizeof(void*)*7, x_31); +lean_inc(x_11); +lean_inc(x_10); +x_37 = l_Lean_Elab_addAsAxiom(x_36, x_8, x_9, x_10, x_11, x_29); +lean_dec(x_36); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; uint8_t x_39; +x_38 = lean_ctor_get(x_37, 1); +lean_inc(x_38); +lean_dec(x_37); +x_39 = !lean_is_exclusive(x_3); +if (x_39 == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_40 = lean_ctor_get(x_3, 1); +x_41 = lean_ctor_get(x_3, 6); +lean_dec(x_41); +x_42 = lean_ctor_get(x_3, 5); +lean_dec(x_42); +x_43 = lean_ctor_get(x_3, 4); +lean_dec(x_43); +x_44 = lean_ctor_get(x_3, 3); +lean_dec(x_44); +x_45 = lean_ctor_get(x_3, 2); +lean_dec(x_45); +x_46 = lean_ctor_get(x_3, 0); +lean_dec(x_46); +x_47 = lean_box(0); +x_48 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_40, x_47); +lean_inc(x_4); +x_49 = l_Lean_Expr_const___override(x_4, x_48); +x_50 = l_Lean_mkAppN(x_49, x_6); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_51 = l_Lean_Meta_ArgsPacker_uncurry(x_2, x_19, x_8, x_9, x_10, x_11, x_38); +lean_dec(x_19); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(x_13, x_14, x_1); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_55 = l_Lean_Elab_WF_packCalls(x_5, x_2, x_54, x_50, x_52, x_8, x_9, x_10, x_11, x_53); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +x_58 = l_Lean_Meta_mkLambdaFVars(x_6, x_56, x_24, x_25, x_24, x_26, x_8, x_9, x_10, x_11, x_57); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +if (lean_obj_tag(x_58) == 0) +{ +uint8_t x_59; +x_59 = !lean_is_exclusive(x_58); +if (x_59 == 0) +{ +lean_object* x_60; +x_60 = lean_ctor_get(x_58, 0); +lean_ctor_set(x_3, 5, x_60); +lean_ctor_set(x_3, 4, x_28); lean_ctor_set(x_3, 3, x_4); -lean_inc(x_11); -lean_inc(x_10); -x_39 = l_Lean_Elab_addAsAxiom(x_3, x_8, x_9, x_10, x_11, x_30); -lean_dec(x_3); -if (lean_obj_tag(x_39) == 0) -{ -lean_object* x_40; lean_object* x_41; -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -lean_dec(x_39); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_41 = l_Lean_Meta_ArgsPacker_uncurry(x_2, x_19, x_8, x_9, x_10, x_11, x_40); -lean_dec(x_19); -if (lean_obj_tag(x_41) == 0) -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_42 = lean_ctor_get(x_41, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_41, 1); -lean_inc(x_43); -lean_dec(x_41); -x_44 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3(x_13, x_14, x_1); -lean_inc(x_4); -x_45 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___boxed), 11, 5); -lean_closure_set(x_45, 0, x_5); -lean_closure_set(x_45, 1, x_2); -lean_closure_set(x_45, 2, x_44); -lean_closure_set(x_45, 3, x_24); -lean_closure_set(x_45, 4, x_4); -x_46 = l_Lean_Elab_WF_packMutual___lambda__2___closed__1; -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_47 = l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(x_42, x_46, x_45, x_25, x_26, x_8, x_9, x_10, x_11, x_43); -if (lean_obj_tag(x_47) == 0) -{ -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 1); -lean_inc(x_49); -lean_dec(x_47); -x_50 = l_Lean_Meta_mkLambdaFVars(x_6, x_48, x_25, x_26, x_25, x_27, x_8, x_9, x_10, x_11, x_49); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -if (lean_obj_tag(x_50) == 0) -{ -uint8_t x_51; -x_51 = !lean_is_exclusive(x_50); -if (x_51 == 0) -{ -lean_object* x_52; lean_object* x_53; -x_52 = lean_ctor_get(x_50, 0); -x_53 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_53, 0, x_32); -lean_ctor_set(x_53, 1, x_34); -lean_ctor_set(x_53, 2, x_35); -lean_ctor_set(x_53, 3, x_4); -lean_ctor_set(x_53, 4, x_29); -lean_ctor_set(x_53, 5, x_52); -lean_ctor_set(x_53, 6, x_36); -lean_ctor_set_uint8(x_53, sizeof(void*)*7, x_33); -lean_ctor_set(x_50, 0, x_53); -return x_50; +lean_ctor_set(x_58, 0, x_3); +return x_58; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_54 = lean_ctor_get(x_50, 0); -x_55 = lean_ctor_get(x_50, 1); -lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_50); -x_56 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_56, 0, x_32); -lean_ctor_set(x_56, 1, x_34); -lean_ctor_set(x_56, 2, x_35); -lean_ctor_set(x_56, 3, x_4); -lean_ctor_set(x_56, 4, x_29); -lean_ctor_set(x_56, 5, x_54); -lean_ctor_set(x_56, 6, x_36); -lean_ctor_set_uint8(x_56, sizeof(void*)*7, x_33); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_55); -return x_57; +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_58, 0); +x_62 = lean_ctor_get(x_58, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_58); +lean_ctor_set(x_3, 5, x_61); +lean_ctor_set(x_3, 4, x_28); +lean_ctor_set(x_3, 3, x_4); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_3); +lean_ctor_set(x_63, 1, x_62); +return x_63; } } else { -uint8_t x_58; -lean_dec(x_36); +uint8_t x_64; +lean_free_object(x_3); lean_dec(x_35); -lean_dec(x_34); +lean_dec(x_33); lean_dec(x_32); -lean_dec(x_29); +lean_dec(x_30); +lean_dec(x_28); lean_dec(x_4); -x_58 = !lean_is_exclusive(x_50); -if (x_58 == 0) +x_64 = !lean_is_exclusive(x_58); +if (x_64 == 0) { -return x_50; +return x_58; } else { -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_50, 0); -x_60 = lean_ctor_get(x_50, 1); -lean_inc(x_60); -lean_inc(x_59); -lean_dec(x_50); -x_61 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -return x_61; +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_58, 0); +x_66 = lean_ctor_get(x_58, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_58); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; } } } else { -uint8_t x_62; -lean_dec(x_36); +uint8_t x_68; +lean_free_object(x_3); lean_dec(x_35); -lean_dec(x_34); +lean_dec(x_33); lean_dec(x_32); -lean_dec(x_29); +lean_dec(x_30); +lean_dec(x_28); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_4); -x_62 = !lean_is_exclusive(x_47); -if (x_62 == 0) +x_68 = !lean_is_exclusive(x_55); +if (x_68 == 0) { -return x_47; +return x_55; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_47, 0); -x_64 = lean_ctor_get(x_47, 1); -lean_inc(x_64); -lean_inc(x_63); -lean_dec(x_47); -x_65 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -return x_65; +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_55, 0); +x_70 = lean_ctor_get(x_55, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_55); +x_71 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +return x_71; } } } else { -uint8_t x_66; -lean_dec(x_36); +uint8_t x_72; +lean_dec(x_50); +lean_free_object(x_3); lean_dec(x_35); -lean_dec(x_34); +lean_dec(x_33); lean_dec(x_32); -lean_dec(x_29); -lean_dec(x_24); +lean_dec(x_30); +lean_dec(x_28); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -1366,197 +1739,157 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_66 = !lean_is_exclusive(x_41); -if (x_66 == 0) +x_72 = !lean_is_exclusive(x_51); +if (x_72 == 0) { -return x_41; +return x_51; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_67 = lean_ctor_get(x_41, 0); -x_68 = lean_ctor_get(x_41, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_41); -x_69 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_68); -return x_69; +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_51, 0); +x_74 = lean_ctor_get(x_51, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_51); +x_75 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +return x_75; } } } else { -uint8_t x_70; -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_34); -lean_dec(x_32); -lean_dec(x_29); -lean_dec(x_24); -lean_dec(x_19); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_70 = !lean_is_exclusive(x_39); -if (x_70 == 0) -{ -return x_39; -} -else -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_39, 0); -x_72 = lean_ctor_get(x_39, 1); -lean_inc(x_72); -lean_inc(x_71); -lean_dec(x_39); -x_73 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -return x_73; -} -} -} -else -{ -lean_object* x_74; uint8_t x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_74 = lean_ctor_get(x_3, 0); -x_75 = lean_ctor_get_uint8(x_3, sizeof(void*)*7); +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; x_76 = lean_ctor_get(x_3, 1); -x_77 = lean_ctor_get(x_3, 2); -x_78 = lean_ctor_get(x_3, 5); -x_79 = lean_ctor_get(x_3, 6); -lean_inc(x_79); -lean_inc(x_78); -lean_inc(x_77); lean_inc(x_76); -lean_inc(x_74); lean_dec(x_3); -lean_inc(x_79); -lean_inc(x_29); +x_77 = lean_box(0); +x_78 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_76, x_77); lean_inc(x_4); -lean_inc(x_77); -lean_inc(x_76); -lean_inc(x_74); -x_80 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_80, 0, x_74); -lean_ctor_set(x_80, 1, x_76); -lean_ctor_set(x_80, 2, x_77); -lean_ctor_set(x_80, 3, x_4); -lean_ctor_set(x_80, 4, x_29); -lean_ctor_set(x_80, 5, x_78); -lean_ctor_set(x_80, 6, x_79); -lean_ctor_set_uint8(x_80, sizeof(void*)*7, x_75); +x_79 = l_Lean_Expr_const___override(x_4, x_78); +x_80 = l_Lean_mkAppN(x_79, x_6); lean_inc(x_11); lean_inc(x_10); -x_81 = l_Lean_Elab_addAsAxiom(x_80, x_8, x_9, x_10, x_11, x_30); -lean_dec(x_80); +lean_inc(x_9); +lean_inc(x_8); +x_81 = l_Lean_Meta_ArgsPacker_uncurry(x_2, x_19, x_8, x_9, x_10, x_11, x_38); +lean_dec(x_19); if (lean_obj_tag(x_81) == 0) { -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_81, 1); +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_82 = lean_ctor_get(x_81, 0); lean_inc(x_82); +x_83 = lean_ctor_get(x_81, 1); +lean_inc(x_83); lean_dec(x_81); +x_84 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_registerEqnsInfo___spec__2(x_13, x_14, x_1); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_83 = l_Lean_Meta_ArgsPacker_uncurry(x_2, x_19, x_8, x_9, x_10, x_11, x_82); -lean_dec(x_19); -if (lean_obj_tag(x_83) == 0) +x_85 = l_Lean_Elab_WF_packCalls(x_5, x_2, x_84, x_80, x_82, x_8, x_9, x_10, x_11, x_83); +if (lean_obj_tag(x_85) == 0) { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_84 = lean_ctor_get(x_83, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_83, 1); -lean_inc(x_85); -lean_dec(x_83); -x_86 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3(x_13, x_14, x_1); -lean_inc(x_4); -x_87 = lean_alloc_closure((void*)(l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___boxed), 11, 5); -lean_closure_set(x_87, 0, x_5); -lean_closure_set(x_87, 1, x_2); -lean_closure_set(x_87, 2, x_86); -lean_closure_set(x_87, 3, x_24); -lean_closure_set(x_87, 4, x_4); -x_88 = l_Lean_Elab_WF_packMutual___lambda__2___closed__1; -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_89 = l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(x_84, x_88, x_87, x_25, x_26, x_8, x_9, x_10, x_11, x_85); -if (lean_obj_tag(x_89) == 0) -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_89, 0); -lean_inc(x_90); -x_91 = lean_ctor_get(x_89, 1); -lean_inc(x_91); -lean_dec(x_89); -x_92 = l_Lean_Meta_mkLambdaFVars(x_6, x_90, x_25, x_26, x_25, x_27, x_8, x_9, x_10, x_11, x_91); +lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_85, 0); +lean_inc(x_86); +x_87 = lean_ctor_get(x_85, 1); +lean_inc(x_87); +lean_dec(x_85); +x_88 = l_Lean_Meta_mkLambdaFVars(x_6, x_86, x_24, x_25, x_24, x_26, x_8, x_9, x_10, x_11, x_87); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -if (lean_obj_tag(x_92) == 0) +if (lean_obj_tag(x_88) == 0) { -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_93 = lean_ctor_get(x_92, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_92, 1); +lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_89 = lean_ctor_get(x_88, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_88)) { + lean_ctor_release(x_88, 0); + lean_ctor_release(x_88, 1); + x_91 = x_88; +} else { + lean_dec_ref(x_88); + x_91 = lean_box(0); +} +x_92 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_92, 0, x_30); +lean_ctor_set(x_92, 1, x_32); +lean_ctor_set(x_92, 2, x_33); +lean_ctor_set(x_92, 3, x_4); +lean_ctor_set(x_92, 4, x_28); +lean_ctor_set(x_92, 5, x_89); +lean_ctor_set(x_92, 6, x_35); +lean_ctor_set_uint8(x_92, sizeof(void*)*7, x_31); +if (lean_is_scalar(x_91)) { + x_93 = lean_alloc_ctor(0, 2, 0); +} else { + x_93 = x_91; +} +lean_ctor_set(x_93, 0, x_92); +lean_ctor_set(x_93, 1, x_90); +return x_93; +} +else +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_4); +x_94 = lean_ctor_get(x_88, 0); lean_inc(x_94); -if (lean_is_exclusive(x_92)) { - lean_ctor_release(x_92, 0); - lean_ctor_release(x_92, 1); - x_95 = x_92; +x_95 = lean_ctor_get(x_88, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_88)) { + lean_ctor_release(x_88, 0); + lean_ctor_release(x_88, 1); + x_96 = x_88; } else { - lean_dec_ref(x_92); - x_95 = lean_box(0); + lean_dec_ref(x_88); + x_96 = lean_box(0); } -x_96 = lean_alloc_ctor(0, 7, 1); -lean_ctor_set(x_96, 0, x_74); -lean_ctor_set(x_96, 1, x_76); -lean_ctor_set(x_96, 2, x_77); -lean_ctor_set(x_96, 3, x_4); -lean_ctor_set(x_96, 4, x_29); -lean_ctor_set(x_96, 5, x_93); -lean_ctor_set(x_96, 6, x_79); -lean_ctor_set_uint8(x_96, sizeof(void*)*7, x_75); -if (lean_is_scalar(x_95)) { - x_97 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_96)) { + x_97 = lean_alloc_ctor(1, 2, 0); } else { - x_97 = x_95; + x_97 = x_96; } -lean_ctor_set(x_97, 0, x_96); -lean_ctor_set(x_97, 1, x_94); +lean_ctor_set(x_97, 0, x_94); +lean_ctor_set(x_97, 1, x_95); return x_97; } +} else { lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -lean_dec(x_79); -lean_dec(x_77); -lean_dec(x_76); -lean_dec(x_74); -lean_dec(x_29); +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); lean_dec(x_4); -x_98 = lean_ctor_get(x_92, 0); +x_98 = lean_ctor_get(x_85, 0); lean_inc(x_98); -x_99 = lean_ctor_get(x_92, 1); +x_99 = lean_ctor_get(x_85, 1); lean_inc(x_99); -if (lean_is_exclusive(x_92)) { - lean_ctor_release(x_92, 0); - lean_ctor_release(x_92, 1); - x_100 = x_92; +if (lean_is_exclusive(x_85)) { + lean_ctor_release(x_85, 0); + lean_ctor_release(x_85, 1); + x_100 = x_85; } else { - lean_dec_ref(x_92); + lean_dec_ref(x_85); x_100 = lean_box(0); } if (lean_is_scalar(x_100)) { @@ -1572,26 +1905,30 @@ return x_101; else { lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; -lean_dec(x_79); -lean_dec(x_77); -lean_dec(x_76); -lean_dec(x_74); -lean_dec(x_29); +lean_dec(x_80); +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); +lean_dec(x_5); lean_dec(x_4); -x_102 = lean_ctor_get(x_89, 0); +lean_dec(x_2); +lean_dec(x_1); +x_102 = lean_ctor_get(x_81, 0); lean_inc(x_102); -x_103 = lean_ctor_get(x_89, 1); +x_103 = lean_ctor_get(x_81, 1); lean_inc(x_103); -if (lean_is_exclusive(x_89)) { - lean_ctor_release(x_89, 0); - lean_ctor_release(x_89, 1); - x_104 = x_89; +if (lean_is_exclusive(x_81)) { + lean_ctor_release(x_81, 0); + lean_ctor_release(x_81, 1); + x_104 = x_81; } else { - lean_dec_ref(x_89); + lean_dec_ref(x_81); x_104 = lean_box(0); } if (lean_is_scalar(x_104)) { @@ -1604,90 +1941,15 @@ lean_ctor_set(x_105, 1, x_103); return x_105; } } -else -{ -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; -lean_dec(x_79); -lean_dec(x_77); -lean_dec(x_76); -lean_dec(x_74); -lean_dec(x_29); -lean_dec(x_24); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_106 = lean_ctor_get(x_83, 0); -lean_inc(x_106); -x_107 = lean_ctor_get(x_83, 1); -lean_inc(x_107); -if (lean_is_exclusive(x_83)) { - lean_ctor_release(x_83, 0); - lean_ctor_release(x_83, 1); - x_108 = x_83; -} else { - lean_dec_ref(x_83); - x_108 = lean_box(0); -} -if (lean_is_scalar(x_108)) { - x_109 = lean_alloc_ctor(1, 2, 0); -} else { - x_109 = x_108; -} -lean_ctor_set(x_109, 0, x_106); -lean_ctor_set(x_109, 1, x_107); -return x_109; -} } else { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; -lean_dec(x_79); -lean_dec(x_77); -lean_dec(x_76); -lean_dec(x_74); -lean_dec(x_29); -lean_dec(x_24); -lean_dec(x_19); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_110 = lean_ctor_get(x_81, 0); -lean_inc(x_110); -x_111 = lean_ctor_get(x_81, 1); -lean_inc(x_111); -if (lean_is_exclusive(x_81)) { - lean_ctor_release(x_81, 0); - lean_ctor_release(x_81, 1); - x_112 = x_81; -} else { - lean_dec_ref(x_81); - x_112 = lean_box(0); -} -if (lean_is_scalar(x_112)) { - x_113 = lean_alloc_ctor(1, 2, 0); -} else { - x_113 = x_112; -} -lean_ctor_set(x_113, 0, x_110); -lean_ctor_set(x_113, 1, x_111); -return x_113; -} -} -} -else -{ -uint8_t x_114; -lean_dec(x_24); +uint8_t x_106; +lean_dec(x_35); +lean_dec(x_33); +lean_dec(x_32); +lean_dec(x_30); +lean_dec(x_28); lean_dec(x_19); lean_dec(x_11); lean_dec(x_10); @@ -1698,19 +1960,85 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_114 = !lean_is_exclusive(x_28); +x_106 = !lean_is_exclusive(x_37); +if (x_106 == 0) +{ +return x_37; +} +else +{ +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_37, 0); +x_108 = lean_ctor_get(x_37, 1); +lean_inc(x_108); +lean_inc(x_107); +lean_dec(x_37); +x_109 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_109, 0, x_107); +lean_ctor_set(x_109, 1, x_108); +return x_109; +} +} +} +else +{ +uint8_t x_110; +lean_dec(x_19); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_110 = !lean_is_exclusive(x_27); +if (x_110 == 0) +{ +return x_27; +} +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_111 = lean_ctor_get(x_27, 0); +x_112 = lean_ctor_get(x_27, 1); +lean_inc(x_112); +lean_inc(x_111); +lean_dec(x_27); +x_113 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_113, 0, x_111); +lean_ctor_set(x_113, 1, x_112); +return x_113; +} +} +} +else +{ +uint8_t x_114; +lean_dec(x_19); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_114 = !lean_is_exclusive(x_21); if (x_114 == 0) { -return x_28; +return x_21; } else { lean_object* x_115; lean_object* x_116; lean_object* x_117; -x_115 = lean_ctor_get(x_28, 0); -x_116 = lean_ctor_get(x_28, 1); +x_115 = lean_ctor_get(x_21, 0); +x_116 = lean_ctor_get(x_21, 1); lean_inc(x_116); lean_inc(x_115); -lean_dec(x_28); +lean_dec(x_21); x_117 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_117, 0, x_115); lean_ctor_set(x_117, 1, x_116); @@ -1721,7 +2049,7 @@ return x_117; else { uint8_t x_118; -lean_dec(x_19); +lean_dec(x_16); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -1731,19 +2059,19 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_118 = !lean_is_exclusive(x_21); +x_118 = !lean_is_exclusive(x_18); if (x_118 == 0) { -return x_21; +return x_18; } else { lean_object* x_119; lean_object* x_120; lean_object* x_121; -x_119 = lean_ctor_get(x_21, 0); -x_120 = lean_ctor_get(x_21, 1); +x_119 = lean_ctor_get(x_18, 0); +x_120 = lean_ctor_get(x_18, 1); lean_inc(x_120); lean_inc(x_119); -lean_dec(x_21); +lean_dec(x_18); x_121 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_121, 0, x_119); lean_ctor_set(x_121, 1, x_120); @@ -1754,7 +2082,6 @@ return x_121; else { uint8_t x_122; -lean_dec(x_16); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -1764,19 +2091,19 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_122 = !lean_is_exclusive(x_18); +x_122 = !lean_is_exclusive(x_15); if (x_122 == 0) { -return x_18; +return x_15; } else { lean_object* x_123; lean_object* x_124; lean_object* x_125; -x_123 = lean_ctor_get(x_18, 0); -x_124 = lean_ctor_get(x_18, 1); +x_123 = lean_ctor_get(x_15, 0); +x_124 = lean_ctor_get(x_15, 1); lean_inc(x_124); lean_inc(x_123); -lean_dec(x_18); +lean_dec(x_15); x_125 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_125, 0, x_123); lean_ctor_set(x_125, 1, x_124); @@ -1784,248 +2111,96 @@ return x_125; } } } -else +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: { -uint8_t x_126; +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; lean_object* x_15; +x_10 = l_Lean_Elab_WF_mutualName(x_1, x_2); +x_11 = lean_array_get_size(x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_nat_dec_lt(x_12, x_11); lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_126 = !lean_is_exclusive(x_15); -if (x_126 == 0) -{ -return x_15; -} -else -{ -lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_127 = lean_ctor_get(x_15, 0); -x_128 = lean_ctor_get(x_15, 1); -lean_inc(x_128); -lean_inc(x_127); -lean_dec(x_15); -x_129 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_129, 0, x_127); -lean_ctor_set(x_129, 1, x_128); -return x_129; -} -} -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("_unary", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_WF_packMutual___lambda__3___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("_mutual", 7, 7); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Elab_WF_packMutual___lambda__3___closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; -x_10 = lean_array_get_size(x_1); -x_11 = lean_unsigned_to_nat(1u); -x_12 = lean_nat_dec_lt(x_11, x_10); -lean_dec(x_10); -x_13 = lean_array_get_size(x_2); -x_14 = lean_unsigned_to_nat(0u); -x_15 = lean_nat_dec_lt(x_14, x_13); -lean_dec(x_13); lean_inc(x_3); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_3); -if (x_12 == 0) +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_3); +if (x_13 == 0) { -if (x_15 == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_28 = l_Lean_Elab_instInhabitedPreDefinition; -x_29 = l_outOfBounds___rarg(x_28); -x_30 = lean_ctor_get(x_29, 3); -lean_inc(x_30); -lean_dec(x_29); -x_31 = l_Lean_Elab_WF_packMutual___lambda__3___closed__2; -x_32 = l_Lean_Name_append(x_30, x_31); -x_17 = x_32; -goto block_27; +lean_object* x_21; lean_object* x_22; +x_21 = l_Lean_Elab_instInhabitedPreDefinition; +x_22 = l_outOfBounds___rarg(x_21); +x_15 = x_22; +goto block_20; } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_33 = lean_array_fget(x_2, x_14); -x_34 = lean_ctor_get(x_33, 3); -lean_inc(x_34); -lean_dec(x_33); -x_35 = l_Lean_Elab_WF_packMutual___lambda__3___closed__2; -x_36 = l_Lean_Name_append(x_34, x_35); -x_17 = x_36; -goto block_27; +lean_object* x_23; +x_23 = lean_array_fget(x_2, x_12); +x_15 = x_23; +goto block_20; } -} -else +block_20: { -if (x_15 == 0) -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_37 = l_Lean_Elab_instInhabitedPreDefinition; -x_38 = l_outOfBounds___rarg(x_37); -x_39 = lean_ctor_get(x_38, 3); -lean_inc(x_39); -lean_dec(x_38); -x_40 = l_Lean_Elab_WF_packMutual___lambda__3___closed__4; -x_41 = l_Lean_Name_append(x_39, x_40); -x_17 = x_41; -goto block_27; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_42 = lean_array_fget(x_2, x_14); -x_43 = lean_ctor_get(x_42, 3); -lean_inc(x_43); -lean_dec(x_42); -x_44 = l_Lean_Elab_WF_packMutual___lambda__3___closed__4; -x_45 = l_Lean_Name_append(x_43, x_44); -x_17 = x_45; -goto block_27; -} -} -block_27: -{ -lean_object* x_18; -if (x_15 == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = l_Lean_Elab_instInhabitedPreDefinition; -x_25 = l_outOfBounds___rarg(x_24); -x_18 = x_25; -goto block_23; -} -else -{ -lean_object* x_26; -x_26 = lean_array_fget(x_2, x_14); -x_18 = x_26; -goto block_23; -} -block_23: -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; -x_19 = lean_ctor_get(x_18, 4); -lean_inc(x_19); -x_20 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packMutual___lambda__2___boxed), 12, 5); -lean_closure_set(x_20, 0, x_2); -lean_closure_set(x_20, 1, x_1); -lean_closure_set(x_20, 2, x_18); -lean_closure_set(x_20, 3, x_17); -lean_closure_set(x_20, 4, x_3); -x_21 = 0; -x_22 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_19, x_16, x_20, x_21, x_5, x_6, x_7, x_8, x_9); -return x_22; -} +lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; +x_16 = lean_ctor_get(x_15, 4); +lean_inc(x_16); +x_17 = lean_alloc_closure((void*)(l_Lean_Elab_WF_packMutual___lambda__1___boxed), 12, 5); +lean_closure_set(x_17, 0, x_2); +lean_closure_set(x_17, 1, x_1); +lean_closure_set(x_17, 2, x_15); +lean_closure_set(x_17, 3, x_10); +lean_closure_set(x_17, 4, x_3); +x_18 = 0; +x_19 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_16, x_14, x_17, x_18, x_5, x_6, x_7, x_8, x_9); +return x_19; } } } LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -lean_inc(x_2); -x_9 = l_Lean_Meta_ArgsPacker_arities(x_2); -x_10 = lean_array_get_size(x_9); -x_11 = lean_unsigned_to_nat(1u); -x_12 = lean_nat_dec_eq(x_10, x_11); -lean_dec(x_10); -if (x_12 == 0) +uint8_t x_9; +x_9 = l_Lean_Meta_ArgsPacker_onlyOneUnary(x_2); +if (x_9 == 0) { -lean_object* x_13; lean_object* x_14; -lean_dec(x_9); -x_13 = lean_box(0); -x_14 = l_Lean_Elab_WF_packMutual___lambda__3(x_2, x_3, x_1, x_13, x_4, x_5, x_6, x_7, x_8); -return x_14; +lean_object* x_10; lean_object* x_11; +x_10 = lean_box(0); +x_11 = l_Lean_Elab_WF_packMutual___lambda__2(x_2, x_3, x_1, x_10, x_4, x_5, x_6, x_7, x_8); +return x_11; } else { -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_unsigned_to_nat(0u); -x_16 = lean_array_fget(x_9, x_15); -lean_dec(x_9); -x_17 = lean_nat_dec_eq(x_16, x_11); -lean_dec(x_16); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; -x_18 = lean_box(0); -x_19 = l_Lean_Elab_WF_packMutual___lambda__3(x_2, x_3, x_1, x_18, x_4, x_5, x_6, x_7, x_8); -return x_19; -} -else -{ -lean_object* x_20; uint8_t x_21; +lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_20 = lean_array_get_size(x_3); -x_21 = lean_nat_dec_lt(x_15, x_20); -lean_dec(x_20); -if (x_21 == 0) +x_12 = lean_array_get_size(x_3); +x_13 = lean_unsigned_to_nat(0u); +x_14 = lean_nat_dec_lt(x_13, x_12); +lean_dec(x_12); +if (x_14 == 0) { -lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_dec(x_3); -x_22 = l_Lean_Elab_instInhabitedPreDefinition; -x_23 = l_outOfBounds___rarg(x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_8); -return x_24; +x_15 = l_Lean_Elab_instInhabitedPreDefinition; +x_16 = l_outOfBounds___rarg(x_15); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_8); +return x_17; } else { -lean_object* x_25; lean_object* x_26; -x_25 = lean_array_fget(x_3, x_15); +lean_object* x_18; lean_object* x_19; +x_18 = lean_array_fget(x_3, x_13); lean_dec(x_3); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_8); -return x_26; -} +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_8); +return x_19; } } } @@ -2056,52 +2231,933 @@ lean_dec(x_1); return x_12; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -size_t x_4; size_t x_5; lean_object* x_6; -x_4 = lean_unbox_usize(x_1); -lean_dec(x_1); -x_5 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_6 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_packMutual___spec__3(x_4, x_5, x_3); -return x_6; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_Elab_WF_packMutual___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; -x_13 = l_Lean_Elab_WF_packMutual___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_13 = l_Lean_Elab_WF_packMutual___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_7); lean_dec(x_6); return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_WF_packMutual___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Elab_WF_packMutual___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Elab_WF_packMutual___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_4); return x_10; } } +static lean_object* _init_l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instInhabitedMetaM___boxed), 5, 1); +lean_closure_set(x_1, 0, lean_box(0)); +return x_1; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1; +x_8 = lean_panic_fn(x_7, x_1); +x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_2, x_1); +if (x_9 == 0) +{ +lean_object* x_10; +lean_dec(x_4); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_3); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_11 = lean_array_uget(x_3, x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_array_uset(x_3, x_2, x_12); +x_14 = l_Lean_Expr_fvarId_x21(x_11); +lean_dec(x_11); +lean_inc(x_4); +x_15 = l_Lean_FVarId_getUserName(x_14, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; size_t x_18; size_t x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = 1; +x_19 = lean_usize_add(x_2, x_18); +x_20 = lean_array_uset(x_13, x_2, x_16); +x_2 = x_19; +x_3 = x_20; +x_8 = x_17; +goto _start; +} +else +{ +uint8_t x_22; +lean_dec(x_13); +lean_dec(x_4); +x_22 = !lean_is_exclusive(x_15); +if (x_22 == 0) +{ +return x_15; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_15, 0); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_15); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; +x_8 = lean_array_get_size(x_1); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_7); +return x_9; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("xs.size = arity\n ", 20, 20); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1; +x_2 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.PreDefinition.WF.PackMutual", 37, 37); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Elab.WF.varyingVarNames", 28, 28); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4; +x_2 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5; +x_3 = lean_unsigned_to_nat(111u); +x_4 = lean_unsigned_to_nat(4u); +x_5 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_array_get_size(x_3); +x_11 = lean_nat_dec_eq(x_10, x_1); +lean_dec(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; +lean_dec(x_3); +lean_dec(x_2); +x_12 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6; +x_13 = l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1(x_12, x_5, x_6, x_7, x_8, x_9); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; +x_14 = lean_array_get_size(x_3); +x_15 = l_Array_toSubarray___rarg(x_3, x_2, x_14); +x_16 = l_Array_ofSubarray___rarg(x_15); +lean_dec(x_15); +x_17 = lean_array_size(x_16); +x_18 = 0; +x_19 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2(x_17, x_18, x_16, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_19; +} +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_WF_varyingVarNames___lambda__1___boxed), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fixedPrefixSize ≤ arity\n ", 28, 26); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1; +x_2 = l_Lean_Elab_WF_varyingVarNames___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_WF_varyingVarNames___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4; +x_2 = l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5; +x_3 = lean_unsigned_to_nat(109u); +x_4 = lean_unsigned_to_nat(2u); +x_5 = l_Lean_Elab_WF_varyingVarNames___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_2, 5); +lean_inc(x_8); +x_9 = l_Lean_Elab_WF_varyingVarNames___closed__1; +x_10 = 0; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_11 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_8, x_9, x_10, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +x_14 = lean_nat_dec_le(x_1, x_12); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_dec(x_12); +lean_dec(x_2); +lean_dec(x_1); +x_15 = l_Lean_Elab_WF_varyingVarNames___closed__4; +x_16 = l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1(x_15, x_3, x_4, x_5, x_6, x_13); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = lean_ctor_get(x_2, 4); +lean_inc(x_17); +lean_dec(x_2); +lean_inc(x_12); +x_18 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_18, 0, x_12); +x_19 = lean_alloc_closure((void*)(l_Lean_Elab_WF_varyingVarNames___lambda__2___boxed), 9, 2); +lean_closure_set(x_19, 0, x_12); +lean_closure_set(x_19, 1, x_1); +x_20 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_17, x_18, x_19, x_10, x_3, x_4, x_5, x_6, x_13); +return x_20; +} +} +else +{ +uint8_t x_21; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_21 = !lean_is_exclusive(x_11); +if (x_21 == 0) +{ +return x_11; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_11, 0); +x_23 = lean_ctor_get(x_11, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_11); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Elab_WF_varyingVarNames___spec__2(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_WF_varyingVarNames___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_varyingVarNames___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Elab_WF_varyingVarNames___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_4); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_1, 3); +lean_inc(x_12); +lean_dec(x_1); +x_13 = l_Lean_Expr_const___override(x_12, x_2); +x_14 = l_Lean_mkAppN(x_13, x_5); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_15 = l_Lean_Meta_ArgsPacker_curryProj(x_3, x_14, x_4, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = 0; +x_19 = 1; +x_20 = 1; +x_21 = l_Lean_Meta_mkLambdaFVars(x_5, x_16, x_18, x_19, x_18, x_20, x_7, x_8, x_9, x_10, x_17); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_21; +} +else +{ +uint8_t x_22; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_22 = !lean_is_exclusive(x_15); +if (x_22 == 0) +{ +return x_15; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_15, 0); +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_15); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_alloc_ctor(0, 7, 1); +lean_ctor_set(x_15, 0, x_1); +lean_ctor_set(x_15, 1, x_3); +lean_ctor_set(x_15, 2, x_4); +lean_ctor_set(x_15, 3, x_5); +lean_ctor_set(x_15, 4, x_6); +lean_ctor_set(x_15, 5, x_7); +lean_ctor_set(x_15, 6, x_8); +lean_ctor_set_uint8(x_15, sizeof(void*)*7, x_2); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Elab", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("definition", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("wf", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1; +x_2 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2; +x_3 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" := ", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_unsigned_to_nat(0u); +x_17 = lean_nat_dec_eq(x_7, x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; lean_object* x_31; +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_sub(x_7, x_18); +lean_dec(x_7); +x_20 = lean_array_fget(x_6, x_8); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get_uint8(x_20, sizeof(void*)*7); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +x_24 = lean_ctor_get(x_20, 2); +lean_inc(x_24); +x_25 = lean_ctor_get(x_20, 3); +lean_inc(x_25); +x_26 = lean_ctor_get(x_20, 4); +lean_inc(x_26); +x_27 = lean_ctor_get(x_20, 6); +lean_inc(x_27); +lean_dec(x_20); +lean_inc(x_1); +x_28 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_28, 0, x_1); +lean_inc(x_8); +lean_inc(x_2); +lean_inc(x_5); +lean_inc(x_4); +x_29 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1___boxed), 11, 4); +lean_closure_set(x_29, 0, x_4); +lean_closure_set(x_29, 1, x_5); +lean_closure_set(x_29, 2, x_2); +lean_closure_set(x_29, 3, x_8); +x_30 = 0; +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_26); +x_31 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_26, x_28, x_29, x_30, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4; +x_35 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_34, x_11, x_12, x_13, x_14, x_33); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_unbox(x_36); +lean_dec(x_36); +if (x_37 == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_38 = lean_ctor_get(x_35, 1); +lean_inc(x_38); +lean_dec(x_35); +x_39 = lean_box(0); +x_40 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(x_21, x_22, x_23, x_24, x_25, x_26, x_32, x_27, x_39, x_11, x_12, x_13, x_14, x_38); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = lean_nat_add(x_8, x_18); +lean_dec(x_8); +x_44 = lean_array_push(x_10, x_41); +x_7 = x_19; +x_8 = x_43; +x_9 = lean_box(0); +x_10 = x_44; +x_15 = x_42; +goto _start; +} +else +{ +uint8_t x_46; +x_46 = !lean_is_exclusive(x_35); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_47 = lean_ctor_get(x_35, 1); +x_48 = lean_ctor_get(x_35, 0); +lean_dec(x_48); +lean_inc(x_25); +x_49 = l_Lean_MessageData_ofName(x_25); +x_50 = l_Lean_Elab_WF_packCalls___closed__6; +lean_ctor_set_tag(x_35, 7); +lean_ctor_set(x_35, 1, x_49); +lean_ctor_set(x_35, 0, x_50); +x_51 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6; +x_52 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_52, 0, x_35); +lean_ctor_set(x_52, 1, x_51); +lean_inc(x_32); +x_53 = l_Lean_MessageData_ofExpr(x_32); +x_54 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +x_55 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_50); +x_56 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_34, x_55, x_11, x_12, x_13, x_14, x_47); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +x_59 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(x_21, x_22, x_23, x_24, x_25, x_26, x_32, x_27, x_57, x_11, x_12, x_13, x_14, x_58); +lean_dec(x_57); +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); +lean_dec(x_59); +x_62 = lean_nat_add(x_8, x_18); +lean_dec(x_8); +x_63 = lean_array_push(x_10, x_60); +x_7 = x_19; +x_8 = x_62; +x_9 = lean_box(0); +x_10 = x_63; +x_15 = x_61; +goto _start; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_65 = lean_ctor_get(x_35, 1); +lean_inc(x_65); +lean_dec(x_35); +lean_inc(x_25); +x_66 = l_Lean_MessageData_ofName(x_25); +x_67 = l_Lean_Elab_WF_packCalls___closed__6; +x_68 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_66); +x_69 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6; +x_70 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +lean_inc(x_32); +x_71 = l_Lean_MessageData_ofExpr(x_32); +x_72 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +x_73 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_67); +x_74 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_34, x_73, x_11, x_12, x_13, x_14, x_65); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +lean_dec(x_74); +x_77 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(x_21, x_22, x_23, x_24, x_25, x_26, x_32, x_27, x_75, x_11, x_12, x_13, x_14, x_76); +lean_dec(x_75); +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_77, 1); +lean_inc(x_79); +lean_dec(x_77); +x_80 = lean_nat_add(x_8, x_18); +lean_dec(x_8); +x_81 = lean_array_push(x_10, x_78); +x_7 = x_19; +x_8 = x_80; +x_9 = lean_box(0); +x_10 = x_81; +x_15 = x_79; +goto _start; +} +} +} +else +{ +uint8_t x_83; +lean_dec(x_27); +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_21); +lean_dec(x_19); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_83 = !lean_is_exclusive(x_31); +if (x_83 == 0) +{ +return x_31; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_31, 0); +x_85 = lean_ctor_get(x_31, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_31); +x_86 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_86, 0, x_84); +lean_ctor_set(x_86, 1, x_85); +return x_86; +} +} +} +else +{ +lean_object* x_87; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_10); +lean_ctor_set(x_87, 1, x_15); +return x_87; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_preDefsFromUnaryNonRec(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_10 = lean_ctor_get(x_4, 1); +lean_inc(x_10); +x_11 = lean_box(0); +x_12 = l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(x_10, x_11); +x_13 = lean_st_ref_get(x_8, x_9); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +lean_dec(x_14); +lean_inc(x_8); +lean_inc(x_7); +x_17 = l_Lean_Elab_addAsAxiom(x_4, x_5, x_6, x_7, x_8, x_15); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +lean_dec(x_17); +x_19 = lean_array_get_size(x_3); +x_20 = lean_mk_empty_array_with_capacity(x_19); +x_21 = lean_unsigned_to_nat(0u); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_22 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1(x_1, x_2, x_3, x_4, x_12, x_3, x_19, x_21, lean_box(0), x_20, x_5, x_6, x_7, x_8, x_18); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); +x_25 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_16, x_5, x_6, x_7, x_8, x_24); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_26 = !lean_is_exclusive(x_25); +if (x_26 == 0) +{ +lean_object* x_27; +x_27 = lean_ctor_get(x_25, 0); +lean_dec(x_27); +lean_ctor_set(x_25, 0, x_23); +return x_25; +} +else +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_22, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_22, 1); +lean_inc(x_31); +lean_dec(x_22); +x_32 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_16, x_5, x_6, x_7, x_8, x_31); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) +{ +lean_object* x_34; +x_34 = lean_ctor_get(x_32, 0); +lean_dec(x_34); +lean_ctor_set_tag(x_32, 1); +lean_ctor_set(x_32, 0, x_30); +return x_32; +} +else +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_dec(x_32); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_30); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +lean_dec(x_12); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_37 = lean_ctor_get(x_17, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_17, 1); +lean_inc(x_38); +lean_dec(x_17); +x_39 = l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(x_16, x_5, x_6, x_7, x_8, x_38); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_40 = !lean_is_exclusive(x_39); +if (x_40 == 0) +{ +lean_object* x_41; +x_41 = lean_ctor_get(x_39, 0); +lean_dec(x_41); +lean_ctor_set_tag(x_39, 1); +lean_ctor_set(x_39, 0, x_37); +return x_39; +} +else +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_39, 1); +lean_inc(x_42); +lean_dec(x_39); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_37); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +uint8_t x_15; lean_object* x_16; +x_15 = lean_unbox(x_2); +lean_dec(x_2); +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___lambda__2(x_1, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +lean_object* x_16; +x_16 = l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +lean_dec(x_6); +lean_dec(x_3); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_WF_preDefsFromUnaryNonRec___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Elab_WF_preDefsFromUnaryNonRec(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_3); +return x_10; +} +} lean_object* initialize_Lean_Meta_ArgsPacker(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_PreDefinition_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_PreDefinition_WF_Eqns(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Elab_PreDefinition_WF_PackMutual(uint8_t builtin, lean_object* w) { lean_object * res; @@ -2113,26 +3169,75 @@ lean_dec_ref(res); res = initialize_Lean_Elab_PreDefinition_Basic(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Elab_PreDefinition_WF_Eqns(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Elab_WF_withAppN___lambda__2___closed__1 = _init_l_Lean_Elab_WF_withAppN___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_WF_withAppN___lambda__2___closed__1); l_Lean_Elab_WF_withAppN___lambda__2___closed__2 = _init_l_Lean_Elab_WF_withAppN___lambda__2___closed__2(); lean_mark_persistent(l_Lean_Elab_WF_withAppN___lambda__2___closed__2); l_Lean_Elab_WF_withAppN___closed__1 = _init_l_Lean_Elab_WF_withAppN___closed__1(); lean_mark_persistent(l_Lean_Elab_WF_withAppN___closed__1); -l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1 = _init_l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1(); -lean_mark_persistent(l___private_Lean_Elab_PreDefinition_WF_PackMutual_0__Lean_Elab_WF_post___lambda__3___closed__1); -l_Lean_Elab_WF_packMutual___lambda__1___closed__1 = _init_l_Lean_Elab_WF_packMutual___lambda__1___closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__1___closed__1); -l_Lean_Elab_WF_packMutual___lambda__2___closed__1 = _init_l_Lean_Elab_WF_packMutual___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__2___closed__1); -l_Lean_Elab_WF_packMutual___lambda__3___closed__1 = _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__3___closed__1); -l_Lean_Elab_WF_packMutual___lambda__3___closed__2 = _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__3___closed__2); -l_Lean_Elab_WF_packMutual___lambda__3___closed__3 = _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__3___closed__3); -l_Lean_Elab_WF_packMutual___lambda__3___closed__4 = _init_l_Lean_Elab_WF_packMutual___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Elab_WF_packMutual___lambda__3___closed__4); +l_Lean_Elab_WF_packCalls___lambda__1___closed__1 = _init_l_Lean_Elab_WF_packCalls___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___lambda__1___closed__1); +l_Lean_Elab_WF_packCalls___lambda__4___closed__1 = _init_l_Lean_Elab_WF_packCalls___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___lambda__4___closed__1); +l_Lean_Elab_WF_packCalls___lambda__6___closed__1 = _init_l_Lean_Elab_WF_packCalls___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___lambda__6___closed__1); +l_Lean_Elab_WF_packCalls___closed__1 = _init_l_Lean_Elab_WF_packCalls___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__1); +l_Lean_Elab_WF_packCalls___closed__2 = _init_l_Lean_Elab_WF_packCalls___closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__2); +l_Lean_Elab_WF_packCalls___closed__3 = _init_l_Lean_Elab_WF_packCalls___closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__3); +l_Lean_Elab_WF_packCalls___closed__4 = _init_l_Lean_Elab_WF_packCalls___closed__4(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__4); +l_Lean_Elab_WF_packCalls___closed__5 = _init_l_Lean_Elab_WF_packCalls___closed__5(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__5); +l_Lean_Elab_WF_packCalls___closed__6 = _init_l_Lean_Elab_WF_packCalls___closed__6(); +lean_mark_persistent(l_Lean_Elab_WF_packCalls___closed__6); +l_Lean_Elab_WF_mutualName___closed__1 = _init_l_Lean_Elab_WF_mutualName___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_mutualName___closed__1); +l_Lean_Elab_WF_mutualName___closed__2 = _init_l_Lean_Elab_WF_mutualName___closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_mutualName___closed__2); +l_Lean_Elab_WF_mutualName___closed__3 = _init_l_Lean_Elab_WF_mutualName___closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_mutualName___closed__3); +l_Lean_Elab_WF_mutualName___closed__4 = _init_l_Lean_Elab_WF_mutualName___closed__4(); +lean_mark_persistent(l_Lean_Elab_WF_mutualName___closed__4); +l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1 = _init_l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1(); +lean_mark_persistent(l_panic___at_Lean_Elab_WF_varyingVarNames___spec__1___closed__1); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__1); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__2); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__3); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__4); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__5); +l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6 = _init_l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___lambda__2___closed__6); +l_Lean_Elab_WF_varyingVarNames___closed__1 = _init_l_Lean_Elab_WF_varyingVarNames___closed__1(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___closed__1); +l_Lean_Elab_WF_varyingVarNames___closed__2 = _init_l_Lean_Elab_WF_varyingVarNames___closed__2(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___closed__2); +l_Lean_Elab_WF_varyingVarNames___closed__3 = _init_l_Lean_Elab_WF_varyingVarNames___closed__3(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___closed__3); +l_Lean_Elab_WF_varyingVarNames___closed__4 = _init_l_Lean_Elab_WF_varyingVarNames___closed__4(); +lean_mark_persistent(l_Lean_Elab_WF_varyingVarNames___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__1); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__2); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__3); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__4); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__5); +l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6 = _init_l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6(); +lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Elab_WF_preDefsFromUnaryNonRec___spec__1___closed__6); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Elab/Structure.c b/stage0/stdlib/Lean/Elab/Structure.c index 1c2ad30b2d..619e957689 100644 --- a/stage0/stdlib/Lean/Elab/Structure.c +++ b/stage0/stdlib/Lean/Elab/Structure.c @@ -17,7 +17,6 @@ static lean_object* l_Lean_Elab_Command_initFn____x40_Lean_Elab_Structure___hyg_ lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); lean_object* l_Lean_setReducibilityStatus___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowFromRec___spec__7(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_utf8_extract(lean_object*, lean_object*, lean_object*); -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFields_go___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addParentInstances___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -442,6 +441,7 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_withFie static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldInfo____x40_Lean_Elab_Structure___hyg_1023____closed__1; lean_object* lean_replace_expr(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_registerStructure___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___closed__10; static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldInfo____x40_Lean_Elab_Structure___hyg_1023____closed__27; @@ -468,6 +468,7 @@ static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_addProj LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_expandFields___spec__1___boxed(lean_object**); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldKind____x40_Lean_Elab_Structure___hyg_796____closed__20; +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addParentInstances___spec__5(lean_object*, lean_object*, size_t, size_t); static lean_object* l_panic___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_copyNewFieldsFrom_mkCompositeField___spec__1___closed__1; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); @@ -1277,7 +1278,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_ge LEAN_EXPORT lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_processSubfields_go___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_getDeclarationRange_x3f___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addProjections___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldKind____x40_Lean_Elab_Structure___hyg_796____closed__4; -lean_object* l_panic___at_Lean_Meta_mkPProdFst___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_collectFVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addParentInstances___spec__21(uint8_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Structure_0__Lean_Elab_Command_addParentInstances___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -2661,7 +2661,7 @@ lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_obj x_3 = lean_ctor_get(x_1, 0); lean_inc(x_3); x_4 = lean_unsigned_to_nat(0u); -x_5 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_3, x_4); +x_5 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_3, x_4); x_6 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_reprStructFieldInfo____x40_Lean_Elab_Structure___hyg_1023____closed__7; x_7 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_7, 0, x_6); @@ -32356,7 +32356,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_38 = l___private_Lean_Elab_Structure_0__Lean_Elab_Command_mkCoercionToCopiedParent_copyFields___closed__1; -x_39 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_38, x_5, x_6, x_7, x_8, x_9); +x_39 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_38, x_5, x_6, x_7, x_8, x_9); return x_39; } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Attr.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Attr.c index fcb3327772..95958d15d2 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Attr.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Attr.c @@ -1039,7 +1039,7 @@ x_1 = lean_unsigned_to_nat(10u); x_2 = 1; x_3 = 0; x_4 = l_Lean_Meta_Simp_defaultMaxSteps; -x_5 = lean_alloc_ctor(0, 2, 6); +x_5 = lean_alloc_ctor(0, 2, 7); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_4); lean_ctor_set_uint8(x_5, sizeof(void*)*2, x_2); @@ -1047,7 +1047,8 @@ lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 1, x_2); lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 2, x_3); lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 3, x_2); lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 4, x_2); -lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 5, x_3); +lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 5, x_2); +lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 6, x_3); return x_5; } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVDecide.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVDecide.c index a2e25c3b22..ac59a75c15 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVDecide.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVDecide.c @@ -15105,7 +15105,7 @@ _start: lean_object* x_14; uint8_t x_15; x_14 = lean_ctor_get(x_2, 5); lean_inc(x_14); -x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*2 + 5); +x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*2 + 6); lean_dec(x_14); if (x_15 == 0) { diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVTrace.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVTrace.c index ac16b5c1d8..0774b64480 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVTrace.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/BVTrace.c @@ -1513,62 +1513,64 @@ return x_204; } else { -lean_object* x_205; uint8_t x_206; uint8_t x_207; uint8_t x_208; uint8_t x_209; uint8_t x_210; lean_object* x_211; uint8_t x_212; lean_object* x_213; lean_object* x_214; +lean_object* x_205; uint8_t x_206; uint8_t x_207; uint8_t x_208; uint8_t x_209; uint8_t x_210; uint8_t x_211; lean_object* x_212; uint8_t x_213; lean_object* x_214; lean_object* x_215; x_205 = lean_ctor_get(x_22, 0); x_206 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 1); x_207 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 2); x_208 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 3); x_209 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 4); x_210 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 5); -x_211 = lean_ctor_get(x_22, 1); -lean_inc(x_211); +x_211 = lean_ctor_get_uint8(x_22, sizeof(void*)*2 + 6); +x_212 = lean_ctor_get(x_22, 1); +lean_inc(x_212); lean_inc(x_205); lean_dec(x_22); -x_212 = 0; -x_213 = lean_alloc_ctor(0, 2, 6); -lean_ctor_set(x_213, 0, x_205); -lean_ctor_set(x_213, 1, x_211); -lean_ctor_set_uint8(x_213, sizeof(void*)*2, x_212); -lean_ctor_set_uint8(x_213, sizeof(void*)*2 + 1, x_206); -lean_ctor_set_uint8(x_213, sizeof(void*)*2 + 2, x_207); -lean_ctor_set_uint8(x_213, sizeof(void*)*2 + 3, x_208); -lean_ctor_set_uint8(x_213, sizeof(void*)*2 + 4, x_209); -lean_ctor_set_uint8(x_213, sizeof(void*)*2 + 5, x_210); +x_213 = 0; +x_214 = lean_alloc_ctor(0, 2, 7); +lean_ctor_set(x_214, 0, x_205); +lean_ctor_set(x_214, 1, x_212); +lean_ctor_set_uint8(x_214, sizeof(void*)*2, x_213); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 1, x_206); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 2, x_207); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 3, x_208); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 4, x_209); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 5, x_210); +lean_ctor_set_uint8(x_214, sizeof(void*)*2 + 6, x_211); lean_inc(x_8); lean_inc(x_4); -x_214 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_getLratFileName(x_4, x_5, x_6, x_7, x_8, x_9, x_23); -if (lean_obj_tag(x_214) == 0) +x_215 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_getLratFileName(x_4, x_5, x_6, x_7, x_8, x_9, x_23); +if (lean_obj_tag(x_215) == 0) { -lean_object* x_215; lean_object* x_216; lean_object* x_217; -x_215 = lean_ctor_get(x_214, 0); -lean_inc(x_215); -x_216 = lean_ctor_get(x_214, 1); +lean_object* x_216; lean_object* x_217; lean_object* x_218; +x_216 = lean_ctor_get(x_215, 0); lean_inc(x_216); -lean_dec(x_214); +x_217 = lean_ctor_get(x_215, 1); +lean_inc(x_217); +lean_dec(x_215); lean_inc(x_4); -x_217 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVCheck_mkContext(x_215, x_213, x_4, x_5, x_6, x_7, x_8, x_9, x_216); -if (lean_obj_tag(x_217) == 0) +x_218 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVCheck_mkContext(x_216, x_214, x_4, x_5, x_6, x_7, x_8, x_9, x_217); +if (lean_obj_tag(x_218) == 0) { -lean_object* x_218; lean_object* x_219; lean_object* x_220; -x_218 = lean_ctor_get(x_217, 0); -lean_inc(x_218); -x_219 = lean_ctor_get(x_217, 1); +lean_object* x_219; lean_object* x_220; lean_object* x_221; +x_219 = lean_ctor_get(x_218, 0); lean_inc(x_219); -lean_dec(x_217); -x_220 = l_Lean_Elab_Tactic_getMainGoal(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_219); -if (lean_obj_tag(x_220) == 0) +x_220 = lean_ctor_get(x_218, 1); +lean_inc(x_220); +lean_dec(x_218); +x_221 = l_Lean_Elab_Tactic_getMainGoal(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_220); +if (lean_obj_tag(x_221) == 0) { -lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; -x_221 = lean_ctor_get(x_220, 0); -lean_inc(x_221); -x_222 = lean_ctor_get(x_220, 1); +lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; +x_222 = lean_ctor_get(x_221, 0); lean_inc(x_222); -lean_dec(x_220); -lean_inc(x_218); -lean_inc(x_221); -x_223 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__1___boxed), 11, 2); -lean_closure_set(x_223, 0, x_221); -lean_closure_set(x_223, 1, x_218); +x_223 = lean_ctor_get(x_221, 1); +lean_inc(x_223); +lean_dec(x_221); +lean_inc(x_219); +lean_inc(x_222); +x_224 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__1___boxed), 11, 2); +lean_closure_set(x_224, 0, x_222); +lean_closure_set(x_224, 1, x_219); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); @@ -1577,185 +1579,408 @@ lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_224 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_withMainContext___spec__1___rarg(x_221, x_223, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_222); -if (lean_obj_tag(x_224) == 0) -{ -lean_object* x_225; -x_225 = lean_ctor_get(x_224, 0); -lean_inc(x_225); +x_225 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_withMainContext___spec__1___rarg(x_222, x_224, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_223); if (lean_obj_tag(x_225) == 0) { -lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; -lean_dec(x_218); -lean_dec(x_215); +lean_object* x_226; +x_226 = lean_ctor_get(x_225, 0); +lean_inc(x_226); +if (lean_obj_tag(x_226) == 0) +{ +lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; +lean_dec(x_219); +lean_dec(x_216); lean_dec(x_17); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_226 = lean_ctor_get(x_224, 1); -lean_inc(x_226); -lean_dec(x_224); -x_227 = lean_ctor_get(x_8, 5); +x_227 = lean_ctor_get(x_225, 1); lean_inc(x_227); -x_228 = l_Lean_SourceInfo_fromRef(x_227, x_212); -x_229 = lean_st_ref_get(x_9, x_226); -x_230 = lean_ctor_get(x_229, 1); -lean_inc(x_230); -if (lean_is_exclusive(x_229)) { - lean_ctor_release(x_229, 0); - lean_ctor_release(x_229, 1); - x_231 = x_229; +lean_dec(x_225); +x_228 = lean_ctor_get(x_8, 5); +lean_inc(x_228); +x_229 = l_Lean_SourceInfo_fromRef(x_228, x_213); +x_230 = lean_st_ref_get(x_9, x_227); +x_231 = lean_ctor_get(x_230, 1); +lean_inc(x_231); +if (lean_is_exclusive(x_230)) { + lean_ctor_release(x_230, 0); + lean_ctor_release(x_230, 1); + x_232 = x_230; } else { - lean_dec_ref(x_229); - x_231 = lean_box(0); + lean_dec_ref(x_230); + x_232 = lean_box(0); } -x_232 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__7; -lean_inc(x_228); -if (lean_is_scalar(x_231)) { - x_233 = lean_alloc_ctor(2, 2, 0); +x_233 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__7; +lean_inc(x_229); +if (lean_is_scalar(x_232)) { + x_234 = lean_alloc_ctor(2, 2, 0); } else { - x_233 = x_231; - lean_ctor_set_tag(x_233, 2); + x_234 = x_232; + lean_ctor_set_tag(x_234, 2); } -lean_ctor_set(x_233, 0, x_228); -lean_ctor_set(x_233, 1, x_232); -x_234 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__9; -x_235 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__10; -lean_inc(x_228); -x_236 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_236, 0, x_228); -lean_ctor_set(x_236, 1, x_234); -lean_ctor_set(x_236, 2, x_235); -lean_inc(x_228); -x_237 = l_Lean_Syntax_node1(x_228, x_18, x_236); -x_238 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__6; -x_239 = l_Lean_Syntax_node2(x_228, x_238, x_233, x_237); -x_240 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2___closed__2; -x_241 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_241, 0, x_240); -lean_ctor_set(x_241, 1, x_239); -x_242 = lean_box(0); -x_243 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_243, 0, x_241); -lean_ctor_set(x_243, 1, x_242); -lean_ctor_set(x_243, 2, x_242); -lean_ctor_set(x_243, 3, x_242); -lean_ctor_set(x_243, 4, x_242); -lean_ctor_set(x_243, 5, x_242); -x_244 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_244, 0, x_227); -x_245 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2___closed__9; -x_246 = l_Lean_Meta_Tactic_TryThis_addSuggestion(x_15, x_243, x_244, x_245, x_242, x_6, x_7, x_8, x_9, x_230); +lean_ctor_set(x_234, 0, x_229); +lean_ctor_set(x_234, 1, x_233); +x_235 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__9; +x_236 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__10; +lean_inc(x_229); +x_237 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_237, 0, x_229); +lean_ctor_set(x_237, 1, x_235); +lean_ctor_set(x_237, 2, x_236); +lean_inc(x_229); +x_238 = l_Lean_Syntax_node1(x_229, x_18, x_237); +x_239 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__6; +x_240 = l_Lean_Syntax_node2(x_229, x_239, x_234, x_238); +x_241 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2___closed__2; +x_242 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_242, 0, x_241); +lean_ctor_set(x_242, 1, x_240); +x_243 = lean_box(0); +x_244 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_244, 0, x_242); +lean_ctor_set(x_244, 1, x_243); +lean_ctor_set(x_244, 2, x_243); +lean_ctor_set(x_244, 3, x_243); +lean_ctor_set(x_244, 4, x_243); +lean_ctor_set(x_244, 5, x_243); +x_245 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_245, 0, x_228); +x_246 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2___closed__9; +x_247 = l_Lean_Meta_Tactic_TryThis_addSuggestion(x_15, x_244, x_245, x_246, x_243, x_6, x_7, x_8, x_9, x_231); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_244); +lean_dec(x_245); lean_dec(x_15); -return x_246; +return x_247; } else { -lean_object* x_247; lean_object* x_248; uint8_t x_249; +lean_object* x_248; lean_object* x_249; uint8_t x_250; +if (lean_is_exclusive(x_226)) { + lean_ctor_release(x_226, 0); + x_248 = x_226; +} else { + lean_dec_ref(x_226); + x_248 = lean_box(0); +} +x_249 = lean_ctor_get(x_219, 5); +lean_inc(x_249); +lean_dec(x_219); +x_250 = lean_ctor_get_uint8(x_249, sizeof(void*)*2); +lean_dec(x_249); +if (x_250 == 0) +{ +lean_object* x_251; lean_object* x_252; lean_object* x_253; +lean_dec(x_248); +x_251 = lean_ctor_get(x_225, 1); +lean_inc(x_251); +lean_dec(x_225); +x_252 = lean_box(0); +x_253 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2(x_216, x_17, x_15, x_252, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_251); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_15); +lean_dec(x_216); +return x_253; +} +else +{ +lean_object* x_254; lean_object* x_255; +x_254 = lean_ctor_get(x_225, 1); +lean_inc(x_254); +lean_dec(x_225); +lean_inc(x_4); +x_255 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVCheck_getSrcDir(x_4, x_5, x_6, x_7, x_8, x_9, x_254); +if (lean_obj_tag(x_255) == 0) +{ +lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; +x_256 = lean_ctor_get(x_255, 0); +lean_inc(x_256); +x_257 = lean_ctor_get(x_255, 1); +lean_inc(x_257); +lean_dec(x_255); +x_258 = l_System_FilePath_join(x_256, x_216); +x_259 = lean_ctor_get(x_8, 5); +lean_inc(x_259); +x_260 = l_Std_Tactic_BVDecide_LRAT_loadLRATProof(x_258, x_257); +if (lean_obj_tag(x_260) == 0) +{ +lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; +x_261 = lean_ctor_get(x_260, 0); +lean_inc(x_261); +x_262 = lean_ctor_get(x_260, 1); +lean_inc(x_262); +lean_dec(x_260); +x_263 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__11; +x_264 = l_Lean_Elab_Tactic_BVDecide_LRAT_trim_M_run___rarg(x_261, x_263); +lean_dec(x_261); +x_265 = l_IO_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_LratCert_ofFile___spec__4(x_264, x_262); +if (lean_obj_tag(x_265) == 0) +{ +lean_object* x_266; lean_object* x_267; lean_object* x_268; +x_266 = lean_ctor_get(x_265, 0); +lean_inc(x_266); +x_267 = lean_ctor_get(x_265, 1); +lean_inc(x_267); +lean_dec(x_265); +x_268 = l_Std_Tactic_BVDecide_LRAT_dumpLRATProof(x_258, x_266, x_206, x_267); +lean_dec(x_266); +lean_dec(x_258); +if (lean_obj_tag(x_268) == 0) +{ +lean_object* x_269; lean_object* x_270; lean_object* x_271; +lean_dec(x_259); +lean_dec(x_248); +x_269 = lean_ctor_get(x_268, 0); +lean_inc(x_269); +x_270 = lean_ctor_get(x_268, 1); +lean_inc(x_270); +lean_dec(x_268); +x_271 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2(x_216, x_17, x_15, x_269, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_270); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_269); +lean_dec(x_15); +lean_dec(x_216); +return x_271; +} +else +{ +lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; +lean_dec(x_216); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_272 = lean_ctor_get(x_268, 0); +lean_inc(x_272); +x_273 = lean_ctor_get(x_268, 1); +lean_inc(x_273); +if (lean_is_exclusive(x_268)) { + lean_ctor_release(x_268, 0); + lean_ctor_release(x_268, 1); + x_274 = x_268; +} else { + lean_dec_ref(x_268); + x_274 = lean_box(0); +} +x_275 = lean_io_error_to_string(x_272); +if (lean_is_scalar(x_248)) { + x_276 = lean_alloc_ctor(3, 1, 0); +} else { + x_276 = x_248; + lean_ctor_set_tag(x_276, 3); +} +lean_ctor_set(x_276, 0, x_275); +x_277 = l_Lean_MessageData_ofFormat(x_276); +x_278 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_278, 0, x_259); +lean_ctor_set(x_278, 1, x_277); +if (lean_is_scalar(x_274)) { + x_279 = lean_alloc_ctor(1, 2, 0); +} else { + x_279 = x_274; +} +lean_ctor_set(x_279, 0, x_278); +lean_ctor_set(x_279, 1, x_273); +return x_279; +} +} +else +{ +lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; +lean_dec(x_258); +lean_dec(x_216); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_280 = lean_ctor_get(x_265, 0); +lean_inc(x_280); +x_281 = lean_ctor_get(x_265, 1); +lean_inc(x_281); +if (lean_is_exclusive(x_265)) { + lean_ctor_release(x_265, 0); + lean_ctor_release(x_265, 1); + x_282 = x_265; +} else { + lean_dec_ref(x_265); + x_282 = lean_box(0); +} +x_283 = lean_io_error_to_string(x_280); +if (lean_is_scalar(x_248)) { + x_284 = lean_alloc_ctor(3, 1, 0); +} else { + x_284 = x_248; + lean_ctor_set_tag(x_284, 3); +} +lean_ctor_set(x_284, 0, x_283); +x_285 = l_Lean_MessageData_ofFormat(x_284); +x_286 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_286, 0, x_259); +lean_ctor_set(x_286, 1, x_285); +if (lean_is_scalar(x_282)) { + x_287 = lean_alloc_ctor(1, 2, 0); +} else { + x_287 = x_282; +} +lean_ctor_set(x_287, 0, x_286); +lean_ctor_set(x_287, 1, x_281); +return x_287; +} +} +else +{ +lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; +lean_dec(x_258); +lean_dec(x_216); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_288 = lean_ctor_get(x_260, 0); +lean_inc(x_288); +x_289 = lean_ctor_get(x_260, 1); +lean_inc(x_289); +if (lean_is_exclusive(x_260)) { + lean_ctor_release(x_260, 0); + lean_ctor_release(x_260, 1); + x_290 = x_260; +} else { + lean_dec_ref(x_260); + x_290 = lean_box(0); +} +x_291 = lean_io_error_to_string(x_288); +if (lean_is_scalar(x_248)) { + x_292 = lean_alloc_ctor(3, 1, 0); +} else { + x_292 = x_248; + lean_ctor_set_tag(x_292, 3); +} +lean_ctor_set(x_292, 0, x_291); +x_293 = l_Lean_MessageData_ofFormat(x_292); +x_294 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_294, 0, x_259); +lean_ctor_set(x_294, 1, x_293); +if (lean_is_scalar(x_290)) { + x_295 = lean_alloc_ctor(1, 2, 0); +} else { + x_295 = x_290; +} +lean_ctor_set(x_295, 0, x_294); +lean_ctor_set(x_295, 1, x_289); +return x_295; +} +} +else +{ +lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; +lean_dec(x_248); +lean_dec(x_216); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_296 = lean_ctor_get(x_255, 0); +lean_inc(x_296); +x_297 = lean_ctor_get(x_255, 1); +lean_inc(x_297); +if (lean_is_exclusive(x_255)) { + lean_ctor_release(x_255, 0); + lean_ctor_release(x_255, 1); + x_298 = x_255; +} else { + lean_dec_ref(x_255); + x_298 = lean_box(0); +} +if (lean_is_scalar(x_298)) { + x_299 = lean_alloc_ctor(1, 2, 0); +} else { + x_299 = x_298; +} +lean_ctor_set(x_299, 0, x_296); +lean_ctor_set(x_299, 1, x_297); +return x_299; +} +} +} +} +else +{ +lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; +lean_dec(x_219); +lean_dec(x_216); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_300 = lean_ctor_get(x_225, 0); +lean_inc(x_300); +x_301 = lean_ctor_get(x_225, 1); +lean_inc(x_301); if (lean_is_exclusive(x_225)) { lean_ctor_release(x_225, 0); - x_247 = x_225; + lean_ctor_release(x_225, 1); + x_302 = x_225; } else { lean_dec_ref(x_225); - x_247 = lean_box(0); + x_302 = lean_box(0); +} +if (lean_is_scalar(x_302)) { + x_303 = lean_alloc_ctor(1, 2, 0); +} else { + x_303 = x_302; +} +lean_ctor_set(x_303, 0, x_300); +lean_ctor_set(x_303, 1, x_301); +return x_303; } -x_248 = lean_ctor_get(x_218, 5); -lean_inc(x_248); -lean_dec(x_218); -x_249 = lean_ctor_get_uint8(x_248, sizeof(void*)*2); -lean_dec(x_248); -if (x_249 == 0) -{ -lean_object* x_250; lean_object* x_251; lean_object* x_252; -lean_dec(x_247); -x_250 = lean_ctor_get(x_224, 1); -lean_inc(x_250); -lean_dec(x_224); -x_251 = lean_box(0); -x_252 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2(x_215, x_17, x_15, x_251, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_250); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_15); -lean_dec(x_215); -return x_252; } else { -lean_object* x_253; lean_object* x_254; -x_253 = lean_ctor_get(x_224, 1); -lean_inc(x_253); -lean_dec(x_224); -lean_inc(x_4); -x_254 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVCheck_getSrcDir(x_4, x_5, x_6, x_7, x_8, x_9, x_253); -if (lean_obj_tag(x_254) == 0) -{ -lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; -x_255 = lean_ctor_get(x_254, 0); -lean_inc(x_255); -x_256 = lean_ctor_get(x_254, 1); -lean_inc(x_256); -lean_dec(x_254); -x_257 = l_System_FilePath_join(x_255, x_215); -x_258 = lean_ctor_get(x_8, 5); -lean_inc(x_258); -x_259 = l_Std_Tactic_BVDecide_LRAT_loadLRATProof(x_257, x_256); -if (lean_obj_tag(x_259) == 0) -{ -lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; -x_260 = lean_ctor_get(x_259, 0); -lean_inc(x_260); -x_261 = lean_ctor_get(x_259, 1); -lean_inc(x_261); -lean_dec(x_259); -x_262 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___closed__11; -x_263 = l_Lean_Elab_Tactic_BVDecide_LRAT_trim_M_run___rarg(x_260, x_262); -lean_dec(x_260); -x_264 = l_IO_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_LratCert_ofFile___spec__4(x_263, x_261); -if (lean_obj_tag(x_264) == 0) -{ -lean_object* x_265; lean_object* x_266; lean_object* x_267; -x_265 = lean_ctor_get(x_264, 0); -lean_inc(x_265); -x_266 = lean_ctor_get(x_264, 1); -lean_inc(x_266); -lean_dec(x_264); -x_267 = l_Std_Tactic_BVDecide_LRAT_dumpLRATProof(x_257, x_265, x_206, x_266); -lean_dec(x_265); -lean_dec(x_257); -if (lean_obj_tag(x_267) == 0) -{ -lean_object* x_268; lean_object* x_269; lean_object* x_270; -lean_dec(x_258); -lean_dec(x_247); -x_268 = lean_ctor_get(x_267, 0); -lean_inc(x_268); -x_269 = lean_ctor_get(x_267, 1); -lean_inc(x_269); -lean_dec(x_267); -x_270 = l_Lean_Elab_Tactic_BVDecide_Frontend_BVTrace_evalBvTrace___lambda__2(x_215, x_17, x_15, x_268, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_269); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_268); -lean_dec(x_15); -lean_dec(x_215); -return x_270; -} -else -{ -lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; -lean_dec(x_215); +lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; +lean_dec(x_219); +lean_dec(x_216); lean_dec(x_17); lean_dec(x_15); lean_dec(x_9); @@ -1766,255 +1991,32 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_271 = lean_ctor_get(x_267, 0); -lean_inc(x_271); -x_272 = lean_ctor_get(x_267, 1); -lean_inc(x_272); -if (lean_is_exclusive(x_267)) { - lean_ctor_release(x_267, 0); - lean_ctor_release(x_267, 1); - x_273 = x_267; -} else { - lean_dec_ref(x_267); - x_273 = lean_box(0); -} -x_274 = lean_io_error_to_string(x_271); -if (lean_is_scalar(x_247)) { - x_275 = lean_alloc_ctor(3, 1, 0); -} else { - x_275 = x_247; - lean_ctor_set_tag(x_275, 3); -} -lean_ctor_set(x_275, 0, x_274); -x_276 = l_Lean_MessageData_ofFormat(x_275); -x_277 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_277, 0, x_258); -lean_ctor_set(x_277, 1, x_276); -if (lean_is_scalar(x_273)) { - x_278 = lean_alloc_ctor(1, 2, 0); -} else { - x_278 = x_273; -} -lean_ctor_set(x_278, 0, x_277); -lean_ctor_set(x_278, 1, x_272); -return x_278; -} -} -else -{ -lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; -lean_dec(x_257); -lean_dec(x_215); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_279 = lean_ctor_get(x_264, 0); -lean_inc(x_279); -x_280 = lean_ctor_get(x_264, 1); -lean_inc(x_280); -if (lean_is_exclusive(x_264)) { - lean_ctor_release(x_264, 0); - lean_ctor_release(x_264, 1); - x_281 = x_264; -} else { - lean_dec_ref(x_264); - x_281 = lean_box(0); -} -x_282 = lean_io_error_to_string(x_279); -if (lean_is_scalar(x_247)) { - x_283 = lean_alloc_ctor(3, 1, 0); -} else { - x_283 = x_247; - lean_ctor_set_tag(x_283, 3); -} -lean_ctor_set(x_283, 0, x_282); -x_284 = l_Lean_MessageData_ofFormat(x_283); -x_285 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_285, 0, x_258); -lean_ctor_set(x_285, 1, x_284); -if (lean_is_scalar(x_281)) { - x_286 = lean_alloc_ctor(1, 2, 0); -} else { - x_286 = x_281; -} -lean_ctor_set(x_286, 0, x_285); -lean_ctor_set(x_286, 1, x_280); -return x_286; -} -} -else -{ -lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; -lean_dec(x_257); -lean_dec(x_215); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_287 = lean_ctor_get(x_259, 0); -lean_inc(x_287); -x_288 = lean_ctor_get(x_259, 1); -lean_inc(x_288); -if (lean_is_exclusive(x_259)) { - lean_ctor_release(x_259, 0); - lean_ctor_release(x_259, 1); - x_289 = x_259; -} else { - lean_dec_ref(x_259); - x_289 = lean_box(0); -} -x_290 = lean_io_error_to_string(x_287); -if (lean_is_scalar(x_247)) { - x_291 = lean_alloc_ctor(3, 1, 0); -} else { - x_291 = x_247; - lean_ctor_set_tag(x_291, 3); -} -lean_ctor_set(x_291, 0, x_290); -x_292 = l_Lean_MessageData_ofFormat(x_291); -x_293 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_293, 0, x_258); -lean_ctor_set(x_293, 1, x_292); -if (lean_is_scalar(x_289)) { - x_294 = lean_alloc_ctor(1, 2, 0); -} else { - x_294 = x_289; -} -lean_ctor_set(x_294, 0, x_293); -lean_ctor_set(x_294, 1, x_288); -return x_294; -} -} -else -{ -lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; -lean_dec(x_247); -lean_dec(x_215); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_295 = lean_ctor_get(x_254, 0); -lean_inc(x_295); -x_296 = lean_ctor_get(x_254, 1); -lean_inc(x_296); -if (lean_is_exclusive(x_254)) { - lean_ctor_release(x_254, 0); - lean_ctor_release(x_254, 1); - x_297 = x_254; -} else { - lean_dec_ref(x_254); - x_297 = lean_box(0); -} -if (lean_is_scalar(x_297)) { - x_298 = lean_alloc_ctor(1, 2, 0); -} else { - x_298 = x_297; -} -lean_ctor_set(x_298, 0, x_295); -lean_ctor_set(x_298, 1, x_296); -return x_298; -} -} -} -} -else -{ -lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; -lean_dec(x_218); -lean_dec(x_215); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_299 = lean_ctor_get(x_224, 0); -lean_inc(x_299); -x_300 = lean_ctor_get(x_224, 1); -lean_inc(x_300); -if (lean_is_exclusive(x_224)) { - lean_ctor_release(x_224, 0); - lean_ctor_release(x_224, 1); - x_301 = x_224; -} else { - lean_dec_ref(x_224); - x_301 = lean_box(0); -} -if (lean_is_scalar(x_301)) { - x_302 = lean_alloc_ctor(1, 2, 0); -} else { - x_302 = x_301; -} -lean_ctor_set(x_302, 0, x_299); -lean_ctor_set(x_302, 1, x_300); -return x_302; -} -} -else -{ -lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; -lean_dec(x_218); -lean_dec(x_215); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_303 = lean_ctor_get(x_220, 0); -lean_inc(x_303); -x_304 = lean_ctor_get(x_220, 1); +x_304 = lean_ctor_get(x_221, 0); lean_inc(x_304); -if (lean_is_exclusive(x_220)) { - lean_ctor_release(x_220, 0); - lean_ctor_release(x_220, 1); - x_305 = x_220; +x_305 = lean_ctor_get(x_221, 1); +lean_inc(x_305); +if (lean_is_exclusive(x_221)) { + lean_ctor_release(x_221, 0); + lean_ctor_release(x_221, 1); + x_306 = x_221; } else { - lean_dec_ref(x_220); - x_305 = lean_box(0); + lean_dec_ref(x_221); + x_306 = lean_box(0); } -if (lean_is_scalar(x_305)) { - x_306 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_306)) { + x_307 = lean_alloc_ctor(1, 2, 0); } else { - x_306 = x_305; + x_307 = x_306; } -lean_ctor_set(x_306, 0, x_303); -lean_ctor_set(x_306, 1, x_304); -return x_306; +lean_ctor_set(x_307, 0, x_304); +lean_ctor_set(x_307, 1, x_305); +return x_307; } } else { -lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; -lean_dec(x_215); +lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; +lean_dec(x_216); lean_dec(x_17); lean_dec(x_15); lean_dec(x_9); @@ -2025,32 +2027,32 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_307 = lean_ctor_get(x_217, 0); -lean_inc(x_307); -x_308 = lean_ctor_get(x_217, 1); +x_308 = lean_ctor_get(x_218, 0); lean_inc(x_308); -if (lean_is_exclusive(x_217)) { - lean_ctor_release(x_217, 0); - lean_ctor_release(x_217, 1); - x_309 = x_217; +x_309 = lean_ctor_get(x_218, 1); +lean_inc(x_309); +if (lean_is_exclusive(x_218)) { + lean_ctor_release(x_218, 0); + lean_ctor_release(x_218, 1); + x_310 = x_218; } else { - lean_dec_ref(x_217); - x_309 = lean_box(0); + lean_dec_ref(x_218); + x_310 = lean_box(0); } -if (lean_is_scalar(x_309)) { - x_310 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_310)) { + x_311 = lean_alloc_ctor(1, 2, 0); } else { - x_310 = x_309; + x_311 = x_310; } -lean_ctor_set(x_310, 0, x_307); -lean_ctor_set(x_310, 1, x_308); -return x_310; +lean_ctor_set(x_311, 0, x_308); +lean_ctor_set(x_311, 1, x_309); +return x_311; } } else { -lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; -lean_dec(x_213); +lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; +lean_dec(x_214); lean_dec(x_17); lean_dec(x_15); lean_dec(x_9); @@ -2061,32 +2063,32 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_311 = lean_ctor_get(x_214, 0); -lean_inc(x_311); -x_312 = lean_ctor_get(x_214, 1); +x_312 = lean_ctor_get(x_215, 0); lean_inc(x_312); -if (lean_is_exclusive(x_214)) { - lean_ctor_release(x_214, 0); - lean_ctor_release(x_214, 1); - x_313 = x_214; +x_313 = lean_ctor_get(x_215, 1); +lean_inc(x_313); +if (lean_is_exclusive(x_215)) { + lean_ctor_release(x_215, 0); + lean_ctor_release(x_215, 1); + x_314 = x_215; } else { - lean_dec_ref(x_214); - x_313 = lean_box(0); + lean_dec_ref(x_215); + x_314 = lean_box(0); } -if (lean_is_scalar(x_313)) { - x_314 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_314)) { + x_315 = lean_alloc_ctor(1, 2, 0); } else { - x_314 = x_313; + x_315 = x_314; } -lean_ctor_set(x_314, 0, x_311); -lean_ctor_set(x_314, 1, x_312); -return x_314; +lean_ctor_set(x_315, 0, x_312); +lean_ctor_set(x_315, 1, x_313); +return x_315; } } } else { -uint8_t x_315; +uint8_t x_316; lean_dec(x_17); lean_dec(x_15); lean_dec(x_9); @@ -2097,23 +2099,23 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_315 = !lean_is_exclusive(x_21); -if (x_315 == 0) +x_316 = !lean_is_exclusive(x_21); +if (x_316 == 0) { return x_21; } else { -lean_object* x_316; lean_object* x_317; lean_object* x_318; -x_316 = lean_ctor_get(x_21, 0); -x_317 = lean_ctor_get(x_21, 1); +lean_object* x_317; lean_object* x_318; lean_object* x_319; +x_317 = lean_ctor_get(x_21, 0); +x_318 = lean_ctor_get(x_21, 1); +lean_inc(x_318); lean_inc(x_317); -lean_inc(x_316); lean_dec(x_21); -x_318 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_318, 0, x_316); -lean_ctor_set(x_318, 1, x_317); -return x_318; +x_319 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_319, 0, x_317); +lean_ctor_set(x_319, 1, x_318); +return x_319; } } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/LRAT.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/LRAT.c index 74a5cdf945..5c059f168a 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/LRAT.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/LRAT.c @@ -949,28 +949,30 @@ goto block_66; } else { -lean_object* x_80; uint8_t x_81; uint8_t x_82; uint8_t x_83; uint8_t x_84; uint8_t x_85; lean_object* x_86; uint8_t x_87; lean_object* x_88; +lean_object* x_80; uint8_t x_81; uint8_t x_82; uint8_t x_83; uint8_t x_84; uint8_t x_85; uint8_t x_86; lean_object* x_87; uint8_t x_88; lean_object* x_89; x_80 = lean_ctor_get(x_2, 0); x_81 = lean_ctor_get_uint8(x_2, sizeof(void*)*2); x_82 = lean_ctor_get_uint8(x_2, sizeof(void*)*2 + 2); x_83 = lean_ctor_get_uint8(x_2, sizeof(void*)*2 + 3); x_84 = lean_ctor_get_uint8(x_2, sizeof(void*)*2 + 4); x_85 = lean_ctor_get_uint8(x_2, sizeof(void*)*2 + 5); -x_86 = lean_ctor_get(x_2, 1); -lean_inc(x_86); +x_86 = lean_ctor_get_uint8(x_2, sizeof(void*)*2 + 6); +x_87 = lean_ctor_get(x_2, 1); +lean_inc(x_87); lean_inc(x_80); lean_dec(x_2); -x_87 = 0; -x_88 = lean_alloc_ctor(0, 2, 6); -lean_ctor_set(x_88, 0, x_80); -lean_ctor_set(x_88, 1, x_86); -lean_ctor_set_uint8(x_88, sizeof(void*)*2, x_81); -lean_ctor_set_uint8(x_88, sizeof(void*)*2 + 1, x_87); -lean_ctor_set_uint8(x_88, sizeof(void*)*2 + 2, x_82); -lean_ctor_set_uint8(x_88, sizeof(void*)*2 + 3, x_83); -lean_ctor_set_uint8(x_88, sizeof(void*)*2 + 4, x_84); -lean_ctor_set_uint8(x_88, sizeof(void*)*2 + 5, x_85); -x_10 = x_88; +x_88 = 0; +x_89 = lean_alloc_ctor(0, 2, 7); +lean_ctor_set(x_89, 0, x_80); +lean_ctor_set(x_89, 1, x_87); +lean_ctor_set_uint8(x_89, sizeof(void*)*2, x_81); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 1, x_88); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 2, x_82); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 3, x_83); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 4, x_84); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 5, x_85); +lean_ctor_set_uint8(x_89, sizeof(void*)*2 + 6, x_86); +x_10 = x_89; x_11 = x_76; x_12 = x_77; goto block_66; @@ -978,27 +980,27 @@ goto block_66; } else { -uint8_t x_89; +uint8_t x_90; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_89 = !lean_is_exclusive(x_68); -if (x_89 == 0) +x_90 = !lean_is_exclusive(x_68); +if (x_90 == 0) { return x_68; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_68, 0); -x_91 = lean_ctor_get(x_68, 1); +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_68, 0); +x_92 = lean_ctor_get(x_68, 1); +lean_inc(x_92); lean_inc(x_91); -lean_inc(x_90); lean_dec(x_68); -x_92 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_92, 0, x_90); -lean_ctor_set(x_92, 1, x_91); -return x_92; +x_93 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_93, 0, x_91); +lean_ctor_set(x_93, 1, x_92); +return x_93; } } } diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize.c index f88f18e924..e9bbecab50 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Elab.Tactic.BVDecide.Frontend.Normalize -// Imports: Lean.Elab.Tactic.FalseOrByContra Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Basic Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Simproc Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Rewrite Lean.Elab.Tactic.BVDecide.Frontend.Normalize.AndFlatten Lean.Elab.Tactic.BVDecide.Frontend.Normalize.EmbeddedConstraint Lean.Elab.Tactic.BVDecide.Frontend.Normalize.AC +// Imports: Lean.Elab.Tactic.FalseOrByContra Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Basic Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Simproc Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Rewrite Lean.Elab.Tactic.BVDecide.Frontend.Normalize.AndFlatten Lean.Elab.Tactic.BVDecide.Frontend.Normalize.EmbeddedConstraint Lean.Elab.Tactic.BVDecide.Frontend.Normalize.AC Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Structures #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -22,10 +22,10 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Fro static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__4___closed__3; double lean_float_div(double, double); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__4___closed__2; extern lean_object* l_Lean_Elab_Tactic_tacticElabAttribute; +extern lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize__1___closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -62,12 +62,13 @@ lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_mono_nanos_now(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize__1___closed__5; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__1; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__2___closed__1; @@ -75,6 +76,7 @@ uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler_threshold; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -83,18 +85,24 @@ static lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_ static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize___closed__4; double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize___closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__3___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2; +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_throwUnsupportedSyntax___at_Lean_Elab_Tactic_evalExact___spec__1___rarg(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__4; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize__1___closed__6; -lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize__1___closed__7; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1; lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___closed__2; extern lean_object* l_Lean_trace_profiler; @@ -107,7 +115,6 @@ lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___s static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize___closed__5; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_evalBVNormalize__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_acNormalizePass; @@ -120,6 +127,7 @@ lean_object* l_Lean_Elab_Tactic_replaceMainGoal(lean_object*, lean_object*, lean LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_falseOrByContra(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3; double lean_float_sub(double, double); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: @@ -344,6 +352,230 @@ return x_17; } } } +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Running fixpoint pipeline on:\n", 30, 30); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +lean_inc(x_1); +x_11 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_unbox(x_12); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +lean_dec(x_1); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_dec(x_11); +x_15 = lean_box(0); +x_16 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_2, x_15, x_4, x_5, x_6, x_7, x_8, x_9, x_14); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_11); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_18 = lean_ctor_get(x_11, 1); +x_19 = lean_ctor_get(x_11, 0); +lean_dec(x_19); +lean_inc(x_2); +x_20 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_20, 0, x_2); +x_21 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2; +lean_ctor_set_tag(x_11, 7); +lean_ctor_set(x_11, 1, x_20); +lean_ctor_set(x_11, 0, x_21); +x_22 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_11); +lean_ctor_set(x_23, 1, x_22); +x_24 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_1, x_23, x_4, x_5, x_6, x_7, x_8, x_9, x_18); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +x_27 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_2, x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_26); +lean_dec(x_25); +return x_27; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_28 = lean_ctor_get(x_11, 1); +lean_inc(x_28); +lean_dec(x_11); +lean_inc(x_2); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_2); +x_30 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2; +x_31 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_29); +x_32 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; +x_33 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +x_34 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_1, x_33, x_4, x_5, x_6, x_7, x_8, x_9, x_28); +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +lean_dec(x_34); +x_37 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_2, x_35, x_4, x_5, x_6, x_7, x_8, x_9, x_36); +lean_dec(x_35); +return x_37; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; +x_12 = lean_ctor_get_uint8(x_5, sizeof(void*)*2 + 5); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +lean_dec(x_2); +x_13 = lean_box(0); +x_14 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2(x_1, x_3, x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; +x_15 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_16 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run(x_15, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_16); +if (x_18 == 0) +{ +lean_object* x_19; +x_19 = lean_ctor_get(x_16, 0); +lean_dec(x_19); +lean_ctor_set(x_16, 0, x_2); +return x_16; +} +else +{ +lean_object* x_20; lean_object* x_21; +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_dec(x_16); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_2); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_2); +x_22 = lean_ctor_get(x_16, 1); +lean_inc(x_22); +lean_dec(x_16); +x_23 = lean_ctor_get(x_17, 0); +lean_inc(x_23); +lean_dec(x_17); +x_24 = lean_box(0); +x_25 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2(x_1, x_23, x_24, x_5, x_6, x_7, x_8, x_9, x_10, x_22); +return x_25; +} +} +else +{ +uint8_t x_26; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_26 = !lean_is_exclusive(x_16); +if (x_26 == 0) +{ +return x_16; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_16, 0); +x_28 = lean_ctor_get(x_16, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_16); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +} static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__1() { _start: { @@ -396,23 +628,6 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("", 0, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { @@ -470,7 +685,7 @@ if (x_17 == 0) lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; x_18 = lean_ctor_get(x_11, 0); x_19 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__4; -x_20 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_19, x_2, x_3, x_4, x_5, x_6, x_7, x_16); +x_20 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_19, x_2, x_3, x_4, x_5, x_6, x_7, x_16); x_21 = lean_ctor_get(x_20, 0); lean_inc(x_21); x_22 = lean_unbox(x_21); @@ -483,7 +698,7 @@ x_23 = lean_ctor_get(x_20, 1); lean_inc(x_23); lean_dec(x_20); x_24 = lean_box(0); -x_25 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_18, x_24, x_2, x_3, x_4, x_5, x_6, x_7, x_23); +x_25 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_19, x_9, x_18, x_24, x_2, x_3, x_4, x_5, x_6, x_7, x_23); return x_25; } else @@ -501,17 +716,17 @@ x_29 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__6 lean_ctor_set_tag(x_20, 7); lean_ctor_set(x_20, 1, x_11); lean_ctor_set(x_20, 0, x_29); -x_30 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8; +x_30 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; x_31 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_31, 0, x_20); lean_ctor_set(x_31, 1, x_30); -x_32 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_19, x_31, x_2, x_3, x_4, x_5, x_6, x_7, x_27); +x_32 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_19, x_31, x_2, x_3, x_4, x_5, x_6, x_7, x_27); x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); lean_dec(x_32); -x_35 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_18, x_33, x_2, x_3, x_4, x_5, x_6, x_7, x_34); +x_35 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_19, x_9, x_18, x_33, x_2, x_3, x_4, x_5, x_6, x_7, x_34); lean_dec(x_33); return x_35; } @@ -526,17 +741,17 @@ x_37 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__6 x_38 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_11); -x_39 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8; +x_39 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; x_40 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_40, 0, x_38); lean_ctor_set(x_40, 1, x_39); -x_41 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_19, x_40, x_2, x_3, x_4, x_5, x_6, x_7, x_36); +x_41 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_19, x_40, x_2, x_3, x_4, x_5, x_6, x_7, x_36); x_42 = lean_ctor_get(x_41, 0); lean_inc(x_42); x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); lean_dec(x_41); -x_44 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_18, x_42, x_2, x_3, x_4, x_5, x_6, x_7, x_43); +x_44 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_19, x_9, x_18, x_42, x_2, x_3, x_4, x_5, x_6, x_7, x_43); lean_dec(x_42); return x_44; } @@ -549,7 +764,7 @@ x_45 = lean_ctor_get(x_11, 0); lean_inc(x_45); lean_dec(x_11); x_46 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__4; -x_47 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_46, x_2, x_3, x_4, x_5, x_6, x_7, x_16); +x_47 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_46, x_2, x_3, x_4, x_5, x_6, x_7, x_16); x_48 = lean_ctor_get(x_47, 0); lean_inc(x_48); x_49 = lean_unbox(x_48); @@ -561,7 +776,7 @@ x_50 = lean_ctor_get(x_47, 1); lean_inc(x_50); lean_dec(x_47); x_51 = lean_box(0); -x_52 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_45, x_51, x_2, x_3, x_4, x_5, x_6, x_7, x_50); +x_52 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_46, x_9, x_45, x_51, x_2, x_3, x_4, x_5, x_6, x_7, x_50); return x_52; } else @@ -589,17 +804,17 @@ if (lean_is_scalar(x_54)) { } lean_ctor_set(x_57, 0, x_56); lean_ctor_set(x_57, 1, x_55); -x_58 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8; +x_58 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4; x_59 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_59, 0, x_57); lean_ctor_set(x_59, 1, x_58); -x_60 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_46, x_59, x_2, x_3, x_4, x_5, x_6, x_7, x_53); +x_60 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_46, x_59, x_2, x_3, x_4, x_5, x_6, x_7, x_53); x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); x_62 = lean_ctor_get(x_60, 1); lean_inc(x_62); lean_dec(x_60); -x_63 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__1(x_45, x_61, x_2, x_3, x_4, x_5, x_6, x_7, x_62); +x_63 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_46, x_9, x_45, x_61, x_2, x_3, x_4, x_5, x_6, x_7, x_62); lean_dec(x_61); return x_63; } @@ -645,6 +860,24 @@ lean_dec(x_2); return x_10; } } +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_3); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_4); +return x_12; +} +} LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -2183,7 +2416,7 @@ lean_closure_set(x_9, 2, x_8); x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___closed__1; x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___closed__2; x_12 = 1; -x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7; +x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3; x_14 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1(x_10, x_11, x_9, x_12, x_13, x_3, x_4, x_5, x_6, x_7); return x_14; } @@ -2653,6 +2886,7 @@ lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Rewrite(uin lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_AndFlatten(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_EmbeddedConstraint(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_AC(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Structures(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize(uint8_t builtin, lean_object* w) { lean_object * res; @@ -2679,6 +2913,9 @@ lean_dec_ref(res); res = initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_AC(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Structures(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___lambda__2___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__1(); @@ -2687,6 +2924,14 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__2 = _init_ lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__2); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__3(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_passPipeline___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___lambda__2___closed__4); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__2(); @@ -2699,10 +2944,6 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__5 = _ini lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__5); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__6 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__6(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__6); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__7); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize_go___closed__8); l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__2___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__2___closed__1(); l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__3___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__3___closed__1(); lean_mark_persistent(l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_bvNormalize___spec__1___lambda__3___closed__1); diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/AndFlatten.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/AndFlatten.c index b3fe072d49..3e74d8c407 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/AndFlatten.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/AndFlatten.c @@ -40,7 +40,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatt static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__1___closed__12; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__4___closed__1; size_t lean_usize_of_nat(lean_object*); -lean_object* l_Lean_MVarId_getNondepPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__1___closed__10; lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -52,6 +52,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatt lean_object* l_StateRefT_x27_lift___rarg___boxed(lean_object*, lean_object*); lean_object* lean_nat_div(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__1___closed__19; lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -66,6 +67,7 @@ static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlattening LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Expr_hash(lean_object*); lean_object* l_Lean_FVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__3(lean_object*); @@ -2231,6 +2233,24 @@ static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlat _start: { lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_getPropHyps), 5, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__1; +x_2 = lean_alloc_closure((void*)(l_StateRefT_x27_lift___rarg___boxed), 2, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3() { +_start: +{ +lean_object* x_1; x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___lambda__1___boxed), 7, 0); return x_1; } @@ -2238,18 +2258,14 @@ return x_1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -lean_inc(x_1); -x_8 = lean_alloc_closure((void*)(l_Lean_MVarId_getNondepPropHyps), 6, 1); -lean_closure_set(x_8, 0, x_1); -x_9 = lean_alloc_closure((void*)(l_StateRefT_x27_lift___rarg___boxed), 2, 1); -lean_closure_set(x_9, 0, x_8); -x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__1; -x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__2___rarg), 8, 2); -lean_closure_set(x_11, 0, x_9); -lean_closure_set(x_11, 1, x_10); -x_12 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__3___rarg(x_1, x_11, x_2, x_3, x_4, x_5, x_6, x_7); -return x_12; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3; +x_10 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__2___rarg), 8, 2); +lean_closure_set(x_10, 0, x_8); +lean_closure_set(x_10, 1, x_9); +x_11 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__3___rarg(x_1, x_10, x_2, x_3, x_4, x_5, x_6, x_7); +return x_11; } } LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { @@ -2770,6 +2786,10 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lamb lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_trySplit___lambda__4___closed__2); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass_processGoal___closed__3); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass___elambda__1___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass___elambda__1___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass___elambda__1___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_andFlatteningPass___elambda__1___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Basic.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Basic.c index 2897476d70..c4189d2655 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Basic.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Basic.c @@ -14,26 +14,21 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentArray_toArray___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___closed__3; double lean_float_div(double, double); -static lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4; size_t lean_uint64_to_usize(uint64_t); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1; lean_object* l_Lean_replaceRef(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_float_decLt(double, double); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__3; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1; lean_object* lean_io_get_num_heartbeats(lean_object*); @@ -41,117 +36,105 @@ lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler_useHeartbeats; lean_object* l_Lean_stringToMessageData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_getConfig___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__4; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); uint64_t l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(lean_object*); size_t lean_usize_of_nat(lean_object*); -static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; -lean_object* l_Lean_MVarId_getNondepPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1; +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; lean_object* lean_nat_div(lean_object*, lean_object*); lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___closed__5; -lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); +lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__1; -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run(lean_object*); -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_mono_nanos_now(lean_object*); -static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2; +LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11; +lean_object* l_Lean_Meta_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___boxed(lean_object**); +static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_getConfig(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler_threshold; -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static double l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_MessageData_ofExpr(lean_object*); lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Util_Trace_0__Lean_addTraceNode___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__1; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10; +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5; double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9; +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1; +static double l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___boxed(lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__2; lean_object* lean_nat_mul(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(lean_object*); -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3; +LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__1; size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledForCore(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); static double l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___closed__4; -lean_object* l_Lean_Expr_fvar___override(lean_object*); size_t lean_array_size(lean_object*); extern lean_object* l_Lean_trace_profiler; lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2; static lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__2; -static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__4; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__3; lean_object* lean_array_get_size(lean_object*); uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(lean_object*, lean_object*); -static lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6; lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__2; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3; -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1; +static lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8; size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double lean_float_sub(double, double); @@ -178,7 +161,522 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_st_ref_get(x_3, x_8); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint64_t x_14; uint64_t x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; size_t x_21; size_t x_22; size_t x_23; size_t x_24; size_t x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; +x_11 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +x_13 = lean_array_get_size(x_12); +x_14 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); +x_15 = 32; +x_16 = lean_uint64_shift_right(x_14, x_15); +x_17 = lean_uint64_xor(x_14, x_16); +x_18 = 16; +x_19 = lean_uint64_shift_right(x_17, x_18); +x_20 = lean_uint64_xor(x_17, x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = lean_usize_of_nat(x_13); +lean_dec(x_13); +x_23 = 1; +x_24 = lean_usize_sub(x_22, x_23); +x_25 = lean_usize_land(x_21, x_24); +x_26 = lean_array_uget(x_12, x_25); +lean_dec(x_12); +x_27 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_26); +lean_dec(x_26); +x_28 = lean_box(x_27); +lean_ctor_set(x_9, 0, x_28); +return x_9; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint64_t x_33; uint64_t x_34; uint64_t x_35; uint64_t x_36; uint64_t x_37; uint64_t x_38; uint64_t x_39; size_t x_40; size_t x_41; size_t x_42; size_t x_43; size_t x_44; lean_object* x_45; uint8_t x_46; lean_object* x_47; lean_object* x_48; +x_29 = lean_ctor_get(x_9, 0); +x_30 = lean_ctor_get(x_9, 1); +lean_inc(x_30); +lean_inc(x_29); +lean_dec(x_9); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_array_get_size(x_31); +x_33 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); +x_34 = 32; +x_35 = lean_uint64_shift_right(x_33, x_34); +x_36 = lean_uint64_xor(x_33, x_35); +x_37 = 16; +x_38 = lean_uint64_shift_right(x_36, x_37); +x_39 = lean_uint64_xor(x_36, x_38); +x_40 = lean_uint64_to_usize(x_39); +x_41 = lean_usize_of_nat(x_32); +lean_dec(x_32); +x_42 = 1; +x_43 = lean_usize_sub(x_41, x_42); +x_44 = lean_usize_land(x_40, x_43); +x_45 = lean_array_uget(x_31, x_44); +lean_dec(x_31); +x_46 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_45); +lean_dec(x_45); +x_47 = lean_box(x_46); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_30); +return x_48; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_9 = lean_st_ref_take(x_3, x_8); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = !lean_is_exclusive(x_10); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; lean_object* x_28; uint8_t x_29; +x_13 = lean_ctor_get(x_10, 0); +x_14 = lean_ctor_get(x_10, 1); +x_15 = lean_array_get_size(x_14); +x_16 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); +x_17 = 32; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = 16; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = lean_uint64_to_usize(x_22); +x_24 = lean_usize_of_nat(x_15); +lean_dec(x_15); +x_25 = 1; +x_26 = lean_usize_sub(x_24, x_25); +x_27 = lean_usize_land(x_23, x_26); +x_28 = lean_array_uget(x_14, x_27); +x_29 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_30 = lean_unsigned_to_nat(1u); +x_31 = lean_nat_add(x_13, x_30); +lean_dec(x_13); +x_32 = lean_box(0); +x_33 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_33, 0, x_1); +lean_ctor_set(x_33, 1, x_32); +lean_ctor_set(x_33, 2, x_28); +x_34 = lean_array_uset(x_14, x_27, x_33); +x_35 = lean_unsigned_to_nat(4u); +x_36 = lean_nat_mul(x_31, x_35); +x_37 = lean_unsigned_to_nat(3u); +x_38 = lean_nat_div(x_36, x_37); +lean_dec(x_36); +x_39 = lean_array_get_size(x_34); +x_40 = lean_nat_dec_le(x_38, x_39); +lean_dec(x_39); +lean_dec(x_38); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_34); +lean_ctor_set(x_10, 1, x_41); +lean_ctor_set(x_10, 0, x_31); +x_42 = lean_st_ref_set(x_3, x_10, x_11); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 0) +{ +lean_object* x_44; +x_44 = lean_ctor_get(x_42, 0); +lean_dec(x_44); +lean_ctor_set(x_42, 0, x_32); +return x_42; +} +else +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_42, 1); +lean_inc(x_45); +lean_dec(x_42); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_32); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +else +{ +lean_object* x_47; uint8_t x_48; +lean_ctor_set(x_10, 1, x_34); +lean_ctor_set(x_10, 0, x_31); +x_47 = lean_st_ref_set(x_3, x_10, x_11); +x_48 = !lean_is_exclusive(x_47); +if (x_48 == 0) +{ +lean_object* x_49; +x_49 = lean_ctor_get(x_47, 0); +lean_dec(x_49); +lean_ctor_set(x_47, 0, x_32); +return x_47; +} +else +{ +lean_object* x_50; lean_object* x_51; +x_50 = lean_ctor_get(x_47, 1); +lean_inc(x_50); +lean_dec(x_47); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_32); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +else +{ +lean_object* x_52; uint8_t x_53; +lean_dec(x_28); +lean_dec(x_1); +x_52 = lean_st_ref_set(x_3, x_10, x_11); +x_53 = !lean_is_exclusive(x_52); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_52, 0); +lean_dec(x_54); +x_55 = lean_box(0); +lean_ctor_set(x_52, 0, x_55); +return x_52; +} +else +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_52, 1); +lean_inc(x_56); +lean_dec(x_52); +x_57 = lean_box(0); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_56); +return x_58; +} +} +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; uint64_t x_62; uint64_t x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; uint64_t x_68; size_t x_69; size_t x_70; size_t x_71; size_t x_72; size_t x_73; lean_object* x_74; uint8_t x_75; +x_59 = lean_ctor_get(x_10, 0); +x_60 = lean_ctor_get(x_10, 1); +lean_inc(x_60); +lean_inc(x_59); +lean_dec(x_10); +x_61 = lean_array_get_size(x_60); +x_62 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); +x_63 = 32; +x_64 = lean_uint64_shift_right(x_62, x_63); +x_65 = lean_uint64_xor(x_62, x_64); +x_66 = 16; +x_67 = lean_uint64_shift_right(x_65, x_66); +x_68 = lean_uint64_xor(x_65, x_67); +x_69 = lean_uint64_to_usize(x_68); +x_70 = lean_usize_of_nat(x_61); +lean_dec(x_61); +x_71 = 1; +x_72 = lean_usize_sub(x_70, x_71); +x_73 = lean_usize_land(x_69, x_72); +x_74 = lean_array_uget(x_60, x_73); +x_75 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_74); +if (x_75 == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_86; +x_76 = lean_unsigned_to_nat(1u); +x_77 = lean_nat_add(x_59, x_76); +lean_dec(x_59); +x_78 = lean_box(0); +x_79 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_79, 0, x_1); +lean_ctor_set(x_79, 1, x_78); +lean_ctor_set(x_79, 2, x_74); +x_80 = lean_array_uset(x_60, x_73, x_79); +x_81 = lean_unsigned_to_nat(4u); +x_82 = lean_nat_mul(x_77, x_81); +x_83 = lean_unsigned_to_nat(3u); +x_84 = lean_nat_div(x_82, x_83); +lean_dec(x_82); +x_85 = lean_array_get_size(x_80); +x_86 = lean_nat_dec_le(x_84, x_85); +lean_dec(x_85); +lean_dec(x_84); +if (x_86 == 0) +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_87 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_80); +x_88 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_88, 0, x_77); +lean_ctor_set(x_88, 1, x_87); +x_89 = lean_st_ref_set(x_3, x_88, x_11); +x_90 = lean_ctor_get(x_89, 1); +lean_inc(x_90); +if (lean_is_exclusive(x_89)) { + lean_ctor_release(x_89, 0); + lean_ctor_release(x_89, 1); + x_91 = x_89; +} else { + lean_dec_ref(x_89); + x_91 = lean_box(0); +} +if (lean_is_scalar(x_91)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_91; +} +lean_ctor_set(x_92, 0, x_78); +lean_ctor_set(x_92, 1, x_90); +return x_92; +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_93 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_93, 0, x_77); +lean_ctor_set(x_93, 1, x_80); +x_94 = lean_st_ref_set(x_3, x_93, x_11); +x_95 = lean_ctor_get(x_94, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_96 = x_94; +} else { + lean_dec_ref(x_94); + x_96 = lean_box(0); +} +if (lean_is_scalar(x_96)) { + x_97 = lean_alloc_ctor(0, 2, 0); +} else { + x_97 = x_96; +} +lean_ctor_set(x_97, 0, x_78); +lean_ctor_set(x_97, 1, x_95); +return x_97; +} +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +lean_dec(x_74); +lean_dec(x_1); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_59); +lean_ctor_set(x_98, 1, x_60); +x_99 = lean_st_ref_set(x_3, x_98, x_11); +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_101 = x_99; +} else { + lean_dec_ref(x_99); + x_101 = lean_box(0); +} +x_102 = lean_box(0); +if (lean_is_scalar(x_101)) { + x_103 = lean_alloc_ctor(0, 2, 0); +} else { + x_103 = x_101; +} +lean_ctor_set(x_103, 0, x_102); +lean_ctor_set(x_103, 1, x_100); +return x_103; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_getPropHyps), 5, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_10 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(x_2, x_9, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_array_get_size(x_11); +lean_dec(x_11); +x_14 = lean_unsigned_to_nat(4u); +x_15 = lean_nat_mul(x_13, x_14); +lean_dec(x_13); +x_16 = lean_unsigned_to_nat(3u); +x_17 = lean_nat_div(x_15, x_16); +lean_dec(x_15); +x_18 = lean_unsigned_to_nat(1u); +x_19 = l_Nat_nextPowerOfTwo_go(x_17, x_18, lean_box(0)); +lean_dec(x_17); +x_20 = lean_box(0); +x_21 = lean_mk_array(x_19, x_20); +x_22 = lean_unsigned_to_nat(0u); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_21); +x_24 = lean_st_mk_ref(x_23, x_12); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +lean_dec(x_24); +lean_inc(x_25); +x_27 = lean_apply_7(x_3, x_1, x_25, x_4, x_5, x_6, x_7, x_26); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_st_ref_get(x_25, x_29); +lean_dec(x_25); +x_31 = !lean_is_exclusive(x_30); +if (x_31 == 0) +{ +lean_object* x_32; +x_32 = lean_ctor_get(x_30, 0); +lean_dec(x_32); +lean_ctor_set(x_30, 0, x_28); +return x_30; +} +else +{ +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_30, 1); +lean_inc(x_33); +lean_dec(x_30); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_28); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +else +{ +uint8_t x_35; +lean_dec(x_25); +x_35 = !lean_is_exclusive(x_27); +if (x_35 == 0) +{ +return x_27; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_27, 0); +x_37 = lean_ctor_get(x_27, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_27); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +uint8_t x_39; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_39 = !lean_is_exclusive(x_10); +if (x_39 == 0) +{ +return x_10; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_10, 0); +x_41 = lean_ctor_get(x_10, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_10); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); +return x_42; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg), 8, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; uint8_t x_11; @@ -204,1626 +702,7 @@ return x_14; } } } -static double _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1() { -_start: -{ -lean_object* x_1; uint8_t x_2; double x_3; -x_1 = lean_unsigned_to_nat(0u); -x_2 = 0; -x_3 = l_Float_ofScientific(x_1, x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("", 0, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_10 = lean_ctor_get(x_7, 5); -x_11 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_2, x_5, x_6, x_7, x_8, x_9); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -lean_dec(x_11); -x_14 = lean_st_ref_take(x_8, x_13); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_15, 3); -lean_inc(x_16); -x_17 = !lean_is_exclusive(x_14); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_14, 1); -x_19 = lean_ctor_get(x_14, 0); -lean_dec(x_19); -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) -{ -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_15, 3); -lean_dec(x_21); -x_22 = !lean_is_exclusive(x_16); -if (x_22 == 0) -{ -lean_object* x_23; double x_24; uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; -x_23 = lean_ctor_get(x_16, 0); -x_24 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; -x_25 = 0; -x_26 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; -x_27 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_27, 0, x_1); -lean_ctor_set(x_27, 1, x_26); -lean_ctor_set_float(x_27, sizeof(void*)*2, x_24); -lean_ctor_set_float(x_27, sizeof(void*)*2 + 8, x_24); -lean_ctor_set_uint8(x_27, sizeof(void*)*2 + 16, x_25); -x_28 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3; -x_29 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_12); -lean_ctor_set(x_29, 2, x_28); -lean_inc(x_10); -lean_ctor_set(x_14, 1, x_29); -lean_ctor_set(x_14, 0, x_10); -x_30 = l_Lean_PersistentArray_push___rarg(x_23, x_14); -lean_ctor_set(x_16, 0, x_30); -x_31 = lean_st_ref_set(x_8, x_15, x_18); -x_32 = !lean_is_exclusive(x_31); -if (x_32 == 0) -{ -lean_object* x_33; lean_object* x_34; -x_33 = lean_ctor_get(x_31, 0); -lean_dec(x_33); -x_34 = lean_box(0); -lean_ctor_set(x_31, 0, x_34); -return x_31; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_31, 1); -lean_inc(x_35); -lean_dec(x_31); -x_36 = lean_box(0); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_35); -return x_37; -} -} -else -{ -uint64_t x_38; lean_object* x_39; double x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_38 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); -x_39 = lean_ctor_get(x_16, 0); -lean_inc(x_39); -lean_dec(x_16); -x_40 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; -x_41 = 0; -x_42 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; -x_43 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_43, 0, x_1); -lean_ctor_set(x_43, 1, x_42); -lean_ctor_set_float(x_43, sizeof(void*)*2, x_40); -lean_ctor_set_float(x_43, sizeof(void*)*2 + 8, x_40); -lean_ctor_set_uint8(x_43, sizeof(void*)*2 + 16, x_41); -x_44 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3; -x_45 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_12); -lean_ctor_set(x_45, 2, x_44); -lean_inc(x_10); -lean_ctor_set(x_14, 1, x_45); -lean_ctor_set(x_14, 0, x_10); -x_46 = l_Lean_PersistentArray_push___rarg(x_39, x_14); -x_47 = lean_alloc_ctor(0, 1, 8); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set_uint64(x_47, sizeof(void*)*1, x_38); -lean_ctor_set(x_15, 3, x_47); -x_48 = lean_st_ref_set(x_8, x_15, x_18); -x_49 = lean_ctor_get(x_48, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_48)) { - lean_ctor_release(x_48, 0); - lean_ctor_release(x_48, 1); - x_50 = x_48; -} else { - lean_dec_ref(x_48); - x_50 = lean_box(0); -} -x_51 = lean_box(0); -if (lean_is_scalar(x_50)) { - x_52 = lean_alloc_ctor(0, 2, 0); -} else { - x_52 = x_50; -} -lean_ctor_set(x_52, 0, x_51); -lean_ctor_set(x_52, 1, x_49); -return x_52; -} -} -else -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; uint64_t x_60; lean_object* x_61; lean_object* x_62; double x_63; uint8_t x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -x_53 = lean_ctor_get(x_15, 0); -x_54 = lean_ctor_get(x_15, 1); -x_55 = lean_ctor_get(x_15, 2); -x_56 = lean_ctor_get(x_15, 4); -x_57 = lean_ctor_get(x_15, 5); -x_58 = lean_ctor_get(x_15, 6); -x_59 = lean_ctor_get(x_15, 7); -lean_inc(x_59); -lean_inc(x_58); -lean_inc(x_57); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_inc(x_53); -lean_dec(x_15); -x_60 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); -x_61 = lean_ctor_get(x_16, 0); -lean_inc(x_61); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - x_62 = x_16; -} else { - lean_dec_ref(x_16); - x_62 = lean_box(0); -} -x_63 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; -x_64 = 0; -x_65 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; -x_66 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_66, 0, x_1); -lean_ctor_set(x_66, 1, x_65); -lean_ctor_set_float(x_66, sizeof(void*)*2, x_63); -lean_ctor_set_float(x_66, sizeof(void*)*2 + 8, x_63); -lean_ctor_set_uint8(x_66, sizeof(void*)*2 + 16, x_64); -x_67 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3; -x_68 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_12); -lean_ctor_set(x_68, 2, x_67); -lean_inc(x_10); -lean_ctor_set(x_14, 1, x_68); -lean_ctor_set(x_14, 0, x_10); -x_69 = l_Lean_PersistentArray_push___rarg(x_61, x_14); -if (lean_is_scalar(x_62)) { - x_70 = lean_alloc_ctor(0, 1, 8); -} else { - x_70 = x_62; -} -lean_ctor_set(x_70, 0, x_69); -lean_ctor_set_uint64(x_70, sizeof(void*)*1, x_60); -x_71 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_71, 0, x_53); -lean_ctor_set(x_71, 1, x_54); -lean_ctor_set(x_71, 2, x_55); -lean_ctor_set(x_71, 3, x_70); -lean_ctor_set(x_71, 4, x_56); -lean_ctor_set(x_71, 5, x_57); -lean_ctor_set(x_71, 6, x_58); -lean_ctor_set(x_71, 7, x_59); -x_72 = lean_st_ref_set(x_8, x_71, x_18); -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -if (lean_is_exclusive(x_72)) { - lean_ctor_release(x_72, 0); - lean_ctor_release(x_72, 1); - x_74 = x_72; -} else { - lean_dec_ref(x_72); - x_74 = lean_box(0); -} -x_75 = lean_box(0); -if (lean_is_scalar(x_74)) { - x_76 = lean_alloc_ctor(0, 2, 0); -} else { - x_76 = x_74; -} -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_73); -return x_76; -} -} -else -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint64_t x_86; lean_object* x_87; lean_object* x_88; double x_89; uint8_t x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; -x_77 = lean_ctor_get(x_14, 1); -lean_inc(x_77); -lean_dec(x_14); -x_78 = lean_ctor_get(x_15, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_15, 1); -lean_inc(x_79); -x_80 = lean_ctor_get(x_15, 2); -lean_inc(x_80); -x_81 = lean_ctor_get(x_15, 4); -lean_inc(x_81); -x_82 = lean_ctor_get(x_15, 5); -lean_inc(x_82); -x_83 = lean_ctor_get(x_15, 6); -lean_inc(x_83); -x_84 = lean_ctor_get(x_15, 7); -lean_inc(x_84); -if (lean_is_exclusive(x_15)) { - lean_ctor_release(x_15, 0); - lean_ctor_release(x_15, 1); - lean_ctor_release(x_15, 2); - lean_ctor_release(x_15, 3); - lean_ctor_release(x_15, 4); - lean_ctor_release(x_15, 5); - lean_ctor_release(x_15, 6); - lean_ctor_release(x_15, 7); - x_85 = x_15; -} else { - lean_dec_ref(x_15); - x_85 = lean_box(0); -} -x_86 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); -x_87 = lean_ctor_get(x_16, 0); -lean_inc(x_87); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - x_88 = x_16; -} else { - lean_dec_ref(x_16); - x_88 = lean_box(0); -} -x_89 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; -x_90 = 0; -x_91 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; -x_92 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_92, 0, x_1); -lean_ctor_set(x_92, 1, x_91); -lean_ctor_set_float(x_92, sizeof(void*)*2, x_89); -lean_ctor_set_float(x_92, sizeof(void*)*2 + 8, x_89); -lean_ctor_set_uint8(x_92, sizeof(void*)*2 + 16, x_90); -x_93 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3; -x_94 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_94, 0, x_92); -lean_ctor_set(x_94, 1, x_12); -lean_ctor_set(x_94, 2, x_93); -lean_inc(x_10); -x_95 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_95, 0, x_10); -lean_ctor_set(x_95, 1, x_94); -x_96 = l_Lean_PersistentArray_push___rarg(x_87, x_95); -if (lean_is_scalar(x_88)) { - x_97 = lean_alloc_ctor(0, 1, 8); -} else { - x_97 = x_88; -} -lean_ctor_set(x_97, 0, x_96); -lean_ctor_set_uint64(x_97, sizeof(void*)*1, x_86); -if (lean_is_scalar(x_85)) { - x_98 = lean_alloc_ctor(0, 8, 0); -} else { - x_98 = x_85; -} -lean_ctor_set(x_98, 0, x_78); -lean_ctor_set(x_98, 1, x_79); -lean_ctor_set(x_98, 2, x_80); -lean_ctor_set(x_98, 3, x_97); -lean_ctor_set(x_98, 4, x_81); -lean_ctor_set(x_98, 5, x_82); -lean_ctor_set(x_98, 6, x_83); -lean_ctor_set(x_98, 7, x_84); -x_99 = lean_st_ref_set(x_8, x_98, x_77); -x_100 = lean_ctor_get(x_99, 1); -lean_inc(x_100); -if (lean_is_exclusive(x_99)) { - lean_ctor_release(x_99, 0); - lean_ctor_release(x_99, 1); - x_101 = x_99; -} else { - lean_dec_ref(x_99); - x_101 = lean_box(0); -} -x_102 = lean_box(0); -if (lean_is_scalar(x_101)) { - x_103 = lean_alloc_ctor(0, 2, 0); -} else { - x_103 = x_101; -} -lean_ctor_set(x_103, 0, x_102); -lean_ctor_set(x_103, 1, x_100); -return x_103; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___lambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_9); -return x_11; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Meta", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Tactic", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("bv", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1; -x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2; -x_3 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" was already rewritten\? ", 24, 24); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("false", 5, 5); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("true", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; uint8_t x_10; -x_9 = lean_st_ref_get(x_3, x_8); -x_10 = !lean_is_exclusive(x_9); -if (x_10 == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_11 = lean_ctor_get(x_9, 0); -x_12 = lean_ctor_get(x_9, 1); -x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_14 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_12); -x_15 = !lean_is_exclusive(x_11); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_16 = lean_ctor_get(x_11, 1); -x_17 = lean_ctor_get(x_11, 0); -lean_dec(x_17); -x_18 = !lean_is_exclusive(x_14); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint64_t x_22; uint64_t x_23; uint64_t x_24; uint64_t x_25; uint64_t x_26; uint64_t x_27; uint64_t x_28; size_t x_29; size_t x_30; size_t x_31; size_t x_32; size_t x_33; lean_object* x_34; uint8_t x_35; uint8_t x_36; -x_19 = lean_ctor_get(x_14, 0); -x_20 = lean_ctor_get(x_14, 1); -x_21 = lean_array_get_size(x_16); -x_22 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_23 = 32; -x_24 = lean_uint64_shift_right(x_22, x_23); -x_25 = lean_uint64_xor(x_22, x_24); -x_26 = 16; -x_27 = lean_uint64_shift_right(x_25, x_26); -x_28 = lean_uint64_xor(x_25, x_27); -x_29 = lean_uint64_to_usize(x_28); -x_30 = lean_usize_of_nat(x_21); -lean_dec(x_21); -x_31 = 1; -x_32 = lean_usize_sub(x_30, x_31); -x_33 = lean_usize_land(x_29, x_32); -x_34 = lean_array_uget(x_16, x_33); -lean_dec(x_16); -x_35 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_34); -lean_dec(x_34); -x_36 = lean_unbox(x_19); -lean_dec(x_19); -if (x_36 == 0) -{ -lean_object* x_37; -lean_free_object(x_11); -lean_free_object(x_9); -lean_dec(x_1); -x_37 = lean_box(x_35); -lean_ctor_set(x_14, 0, x_37); -return x_14; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -lean_free_object(x_14); -x_38 = l_Lean_Expr_fvar___override(x_1); -x_39 = l_Lean_MessageData_ofExpr(x_38); -x_40 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; -lean_ctor_set_tag(x_11, 7); -lean_ctor_set(x_11, 1, x_39); -lean_ctor_set(x_11, 0, x_40); -x_41 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7; -lean_ctor_set_tag(x_9, 7); -lean_ctor_set(x_9, 1, x_41); -if (x_35 == 0) -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; -x_42 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10; -x_43 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_43, 0, x_9); -lean_ctor_set(x_43, 1, x_42); -x_44 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_44, 0, x_43); -lean_ctor_set(x_44, 1, x_40); -x_45 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_44, x_2, x_3, x_4, x_5, x_6, x_7, x_20); -x_46 = !lean_is_exclusive(x_45); -if (x_46 == 0) -{ -lean_object* x_47; lean_object* x_48; -x_47 = lean_ctor_get(x_45, 0); -lean_dec(x_47); -x_48 = lean_box(x_35); -lean_ctor_set(x_45, 0, x_48); -return x_45; -} -else -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_49 = lean_ctor_get(x_45, 1); -lean_inc(x_49); -lean_dec(x_45); -x_50 = lean_box(x_35); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_49); -return x_51; -} -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_52 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13; -x_53 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_53, 0, x_9); -lean_ctor_set(x_53, 1, x_52); -x_54 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_54, 0, x_53); -lean_ctor_set(x_54, 1, x_40); -x_55 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_54, x_2, x_3, x_4, x_5, x_6, x_7, x_20); -x_56 = !lean_is_exclusive(x_55); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_dec(x_57); -x_58 = lean_box(x_35); -lean_ctor_set(x_55, 0, x_58); -return x_55; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_55, 1); -lean_inc(x_59); -lean_dec(x_55); -x_60 = lean_box(x_35); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_59); -return x_61; -} -} -} -} -else -{ -lean_object* x_62; lean_object* x_63; lean_object* x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; uint64_t x_68; uint64_t x_69; uint64_t x_70; uint64_t x_71; size_t x_72; size_t x_73; size_t x_74; size_t x_75; size_t x_76; lean_object* x_77; uint8_t x_78; uint8_t x_79; -x_62 = lean_ctor_get(x_14, 0); -x_63 = lean_ctor_get(x_14, 1); -lean_inc(x_63); -lean_inc(x_62); -lean_dec(x_14); -x_64 = lean_array_get_size(x_16); -x_65 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_66 = 32; -x_67 = lean_uint64_shift_right(x_65, x_66); -x_68 = lean_uint64_xor(x_65, x_67); -x_69 = 16; -x_70 = lean_uint64_shift_right(x_68, x_69); -x_71 = lean_uint64_xor(x_68, x_70); -x_72 = lean_uint64_to_usize(x_71); -x_73 = lean_usize_of_nat(x_64); -lean_dec(x_64); -x_74 = 1; -x_75 = lean_usize_sub(x_73, x_74); -x_76 = lean_usize_land(x_72, x_75); -x_77 = lean_array_uget(x_16, x_76); -lean_dec(x_16); -x_78 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_77); -lean_dec(x_77); -x_79 = lean_unbox(x_62); -lean_dec(x_62); -if (x_79 == 0) -{ -lean_object* x_80; lean_object* x_81; -lean_free_object(x_11); -lean_free_object(x_9); -lean_dec(x_1); -x_80 = lean_box(x_78); -x_81 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_81, 0, x_80); -lean_ctor_set(x_81, 1, x_63); -return x_81; -} -else -{ -lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_82 = l_Lean_Expr_fvar___override(x_1); -x_83 = l_Lean_MessageData_ofExpr(x_82); -x_84 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; -lean_ctor_set_tag(x_11, 7); -lean_ctor_set(x_11, 1, x_83); -lean_ctor_set(x_11, 0, x_84); -x_85 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7; -lean_ctor_set_tag(x_9, 7); -lean_ctor_set(x_9, 1, x_85); -if (x_78 == 0) -{ -lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_86 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10; -x_87 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_87, 0, x_9); -lean_ctor_set(x_87, 1, x_86); -x_88 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_88, 0, x_87); -lean_ctor_set(x_88, 1, x_84); -x_89 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_88, x_2, x_3, x_4, x_5, x_6, x_7, x_63); -x_90 = lean_ctor_get(x_89, 1); -lean_inc(x_90); -if (lean_is_exclusive(x_89)) { - lean_ctor_release(x_89, 0); - lean_ctor_release(x_89, 1); - x_91 = x_89; -} else { - lean_dec_ref(x_89); - x_91 = lean_box(0); -} -x_92 = lean_box(x_78); -if (lean_is_scalar(x_91)) { - x_93 = lean_alloc_ctor(0, 2, 0); -} else { - x_93 = x_91; -} -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_90); -return x_93; -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_94 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13; -x_95 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_95, 0, x_9); -lean_ctor_set(x_95, 1, x_94); -x_96 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_96, 0, x_95); -lean_ctor_set(x_96, 1, x_84); -x_97 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_96, x_2, x_3, x_4, x_5, x_6, x_7, x_63); -x_98 = lean_ctor_get(x_97, 1); -lean_inc(x_98); -if (lean_is_exclusive(x_97)) { - lean_ctor_release(x_97, 0); - lean_ctor_release(x_97, 1); - x_99 = x_97; -} else { - lean_dec_ref(x_97); - x_99 = lean_box(0); -} -x_100 = lean_box(x_78); -if (lean_is_scalar(x_99)) { - x_101 = lean_alloc_ctor(0, 2, 0); -} else { - x_101 = x_99; -} -lean_ctor_set(x_101, 0, x_100); -lean_ctor_set(x_101, 1, x_98); -return x_101; -} -} -} -} -else -{ -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; uint64_t x_107; uint64_t x_108; uint64_t x_109; uint64_t x_110; uint64_t x_111; uint64_t x_112; uint64_t x_113; size_t x_114; size_t x_115; size_t x_116; size_t x_117; size_t x_118; lean_object* x_119; uint8_t x_120; uint8_t x_121; -x_102 = lean_ctor_get(x_11, 1); -lean_inc(x_102); -lean_dec(x_11); -x_103 = lean_ctor_get(x_14, 0); -lean_inc(x_103); -x_104 = lean_ctor_get(x_14, 1); -lean_inc(x_104); -if (lean_is_exclusive(x_14)) { - lean_ctor_release(x_14, 0); - lean_ctor_release(x_14, 1); - x_105 = x_14; -} else { - lean_dec_ref(x_14); - x_105 = lean_box(0); -} -x_106 = lean_array_get_size(x_102); -x_107 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_108 = 32; -x_109 = lean_uint64_shift_right(x_107, x_108); -x_110 = lean_uint64_xor(x_107, x_109); -x_111 = 16; -x_112 = lean_uint64_shift_right(x_110, x_111); -x_113 = lean_uint64_xor(x_110, x_112); -x_114 = lean_uint64_to_usize(x_113); -x_115 = lean_usize_of_nat(x_106); -lean_dec(x_106); -x_116 = 1; -x_117 = lean_usize_sub(x_115, x_116); -x_118 = lean_usize_land(x_114, x_117); -x_119 = lean_array_uget(x_102, x_118); -lean_dec(x_102); -x_120 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_119); -lean_dec(x_119); -x_121 = lean_unbox(x_103); -lean_dec(x_103); -if (x_121 == 0) -{ -lean_object* x_122; lean_object* x_123; -lean_free_object(x_9); -lean_dec(x_1); -x_122 = lean_box(x_120); -if (lean_is_scalar(x_105)) { - x_123 = lean_alloc_ctor(0, 2, 0); -} else { - x_123 = x_105; -} -lean_ctor_set(x_123, 0, x_122); -lean_ctor_set(x_123, 1, x_104); -return x_123; -} -else -{ -lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; -lean_dec(x_105); -x_124 = l_Lean_Expr_fvar___override(x_1); -x_125 = l_Lean_MessageData_ofExpr(x_124); -x_126 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; -x_127 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_127, 0, x_126); -lean_ctor_set(x_127, 1, x_125); -x_128 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7; -lean_ctor_set_tag(x_9, 7); -lean_ctor_set(x_9, 1, x_128); -lean_ctor_set(x_9, 0, x_127); -if (x_120 == 0) -{ -lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; -x_129 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10; -x_130 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_130, 0, x_9); -lean_ctor_set(x_130, 1, x_129); -x_131 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_131, 0, x_130); -lean_ctor_set(x_131, 1, x_126); -x_132 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_131, x_2, x_3, x_4, x_5, x_6, x_7, x_104); -x_133 = lean_ctor_get(x_132, 1); -lean_inc(x_133); -if (lean_is_exclusive(x_132)) { - lean_ctor_release(x_132, 0); - lean_ctor_release(x_132, 1); - x_134 = x_132; -} else { - lean_dec_ref(x_132); - x_134 = lean_box(0); -} -x_135 = lean_box(x_120); -if (lean_is_scalar(x_134)) { - x_136 = lean_alloc_ctor(0, 2, 0); -} else { - x_136 = x_134; -} -lean_ctor_set(x_136, 0, x_135); -lean_ctor_set(x_136, 1, x_133); -return x_136; -} -else -{ -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; -x_137 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13; -x_138 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_138, 0, x_9); -lean_ctor_set(x_138, 1, x_137); -x_139 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_139, 0, x_138); -lean_ctor_set(x_139, 1, x_126); -x_140 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_139, x_2, x_3, x_4, x_5, x_6, x_7, x_104); -x_141 = lean_ctor_get(x_140, 1); -lean_inc(x_141); -if (lean_is_exclusive(x_140)) { - lean_ctor_release(x_140, 0); - lean_ctor_release(x_140, 1); - x_142 = x_140; -} else { - lean_dec_ref(x_140); - x_142 = lean_box(0); -} -x_143 = lean_box(x_120); -if (lean_is_scalar(x_142)) { - x_144 = lean_alloc_ctor(0, 2, 0); -} else { - x_144 = x_142; -} -lean_ctor_set(x_144, 0, x_143); -lean_ctor_set(x_144, 1, x_141); -return x_144; -} -} -} -} -else -{ -lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; uint64_t x_155; uint64_t x_156; uint64_t x_157; uint64_t x_158; uint64_t x_159; uint64_t x_160; uint64_t x_161; size_t x_162; size_t x_163; size_t x_164; size_t x_165; size_t x_166; lean_object* x_167; uint8_t x_168; uint8_t x_169; -x_145 = lean_ctor_get(x_9, 0); -x_146 = lean_ctor_get(x_9, 1); -lean_inc(x_146); -lean_inc(x_145); -lean_dec(x_9); -x_147 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_148 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_147, x_2, x_3, x_4, x_5, x_6, x_7, x_146); -x_149 = lean_ctor_get(x_145, 1); -lean_inc(x_149); -if (lean_is_exclusive(x_145)) { - lean_ctor_release(x_145, 0); - lean_ctor_release(x_145, 1); - x_150 = x_145; -} else { - lean_dec_ref(x_145); - x_150 = lean_box(0); -} -x_151 = lean_ctor_get(x_148, 0); -lean_inc(x_151); -x_152 = lean_ctor_get(x_148, 1); -lean_inc(x_152); -if (lean_is_exclusive(x_148)) { - lean_ctor_release(x_148, 0); - lean_ctor_release(x_148, 1); - x_153 = x_148; -} else { - lean_dec_ref(x_148); - x_153 = lean_box(0); -} -x_154 = lean_array_get_size(x_149); -x_155 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_156 = 32; -x_157 = lean_uint64_shift_right(x_155, x_156); -x_158 = lean_uint64_xor(x_155, x_157); -x_159 = 16; -x_160 = lean_uint64_shift_right(x_158, x_159); -x_161 = lean_uint64_xor(x_158, x_160); -x_162 = lean_uint64_to_usize(x_161); -x_163 = lean_usize_of_nat(x_154); -lean_dec(x_154); -x_164 = 1; -x_165 = lean_usize_sub(x_163, x_164); -x_166 = lean_usize_land(x_162, x_165); -x_167 = lean_array_uget(x_149, x_166); -lean_dec(x_149); -x_168 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_167); -lean_dec(x_167); -x_169 = lean_unbox(x_151); -lean_dec(x_151); -if (x_169 == 0) -{ -lean_object* x_170; lean_object* x_171; -lean_dec(x_150); -lean_dec(x_1); -x_170 = lean_box(x_168); -if (lean_is_scalar(x_153)) { - x_171 = lean_alloc_ctor(0, 2, 0); -} else { - x_171 = x_153; -} -lean_ctor_set(x_171, 0, x_170); -lean_ctor_set(x_171, 1, x_152); -return x_171; -} -else -{ -lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; -lean_dec(x_153); -x_172 = l_Lean_Expr_fvar___override(x_1); -x_173 = l_Lean_MessageData_ofExpr(x_172); -x_174 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; -if (lean_is_scalar(x_150)) { - x_175 = lean_alloc_ctor(7, 2, 0); -} else { - x_175 = x_150; - lean_ctor_set_tag(x_175, 7); -} -lean_ctor_set(x_175, 0, x_174); -lean_ctor_set(x_175, 1, x_173); -x_176 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7; -x_177 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_177, 0, x_175); -lean_ctor_set(x_177, 1, x_176); -if (x_168 == 0) -{ -lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; -x_178 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10; -x_179 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_179, 0, x_177); -lean_ctor_set(x_179, 1, x_178); -x_180 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_180, 0, x_179); -lean_ctor_set(x_180, 1, x_174); -x_181 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_147, x_180, x_2, x_3, x_4, x_5, x_6, x_7, x_152); -x_182 = lean_ctor_get(x_181, 1); -lean_inc(x_182); -if (lean_is_exclusive(x_181)) { - lean_ctor_release(x_181, 0); - lean_ctor_release(x_181, 1); - x_183 = x_181; -} else { - lean_dec_ref(x_181); - x_183 = lean_box(0); -} -x_184 = lean_box(x_168); -if (lean_is_scalar(x_183)) { - x_185 = lean_alloc_ctor(0, 2, 0); -} else { - x_185 = x_183; -} -lean_ctor_set(x_185, 0, x_184); -lean_ctor_set(x_185, 1, x_182); -return x_185; -} -else -{ -lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; -x_186 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13; -x_187 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_187, 0, x_177); -lean_ctor_set(x_187, 1, x_186); -x_188 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_188, 0, x_187); -lean_ctor_set(x_188, 1, x_174); -x_189 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_147, x_188, x_2, x_3, x_4, x_5, x_6, x_7, x_152); -x_190 = lean_ctor_get(x_189, 1); -lean_inc(x_190); -if (lean_is_exclusive(x_189)) { - lean_ctor_release(x_189, 0); - lean_ctor_release(x_189, 1); - x_191 = x_189; -} else { - lean_dec_ref(x_189); - x_191 = lean_box(0); -} -x_192 = lean_box(x_168); -if (lean_is_scalar(x_191)) { - x_193 = lean_alloc_ctor(0, 2, 0); -} else { - x_193 = x_191; -} -lean_ctor_set(x_193, 0, x_192); -lean_ctor_set(x_193, 1, x_190); -return x_193; -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_9; -} -} -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -uint8_t x_10; lean_object* x_11; -x_10 = lean_unbox(x_1); -lean_dec(x_1); -x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___lambda__1(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_9; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_10 = lean_st_ref_take(x_4, x_9); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = !lean_is_exclusive(x_11); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; size_t x_28; lean_object* x_29; uint8_t x_30; -x_14 = lean_ctor_get(x_11, 0); -x_15 = lean_ctor_get(x_11, 1); -x_16 = lean_array_get_size(x_15); -x_17 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_18 = 32; -x_19 = lean_uint64_shift_right(x_17, x_18); -x_20 = lean_uint64_xor(x_17, x_19); -x_21 = 16; -x_22 = lean_uint64_shift_right(x_20, x_21); -x_23 = lean_uint64_xor(x_20, x_22); -x_24 = lean_uint64_to_usize(x_23); -x_25 = lean_usize_of_nat(x_16); -lean_dec(x_16); -x_26 = 1; -x_27 = lean_usize_sub(x_25, x_26); -x_28 = lean_usize_land(x_24, x_27); -x_29 = lean_array_uget(x_15, x_28); -x_30 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_29); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_31 = lean_unsigned_to_nat(1u); -x_32 = lean_nat_add(x_14, x_31); -lean_dec(x_14); -x_33 = lean_box(0); -x_34 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_34, 0, x_1); -lean_ctor_set(x_34, 1, x_33); -lean_ctor_set(x_34, 2, x_29); -x_35 = lean_array_uset(x_15, x_28, x_34); -x_36 = lean_unsigned_to_nat(4u); -x_37 = lean_nat_mul(x_32, x_36); -x_38 = lean_unsigned_to_nat(3u); -x_39 = lean_nat_div(x_37, x_38); -lean_dec(x_37); -x_40 = lean_array_get_size(x_35); -x_41 = lean_nat_dec_le(x_39, x_40); -lean_dec(x_40); -lean_dec(x_39); -if (x_41 == 0) -{ -lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_42 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_35); -lean_ctor_set(x_11, 1, x_42); -lean_ctor_set(x_11, 0, x_32); -x_43 = lean_st_ref_set(x_4, x_11, x_12); -x_44 = !lean_is_exclusive(x_43); -if (x_44 == 0) -{ -lean_object* x_45; -x_45 = lean_ctor_get(x_43, 0); -lean_dec(x_45); -lean_ctor_set(x_43, 0, x_33); -return x_43; -} -else -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); -lean_dec(x_43); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_33); -lean_ctor_set(x_47, 1, x_46); -return x_47; -} -} -else -{ -lean_object* x_48; uint8_t x_49; -lean_ctor_set(x_11, 1, x_35); -lean_ctor_set(x_11, 0, x_32); -x_48 = lean_st_ref_set(x_4, x_11, x_12); -x_49 = !lean_is_exclusive(x_48); -if (x_49 == 0) -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_48, 0); -lean_dec(x_50); -lean_ctor_set(x_48, 0, x_33); -return x_48; -} -else -{ -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_48, 1); -lean_inc(x_51); -lean_dec(x_48); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_33); -lean_ctor_set(x_52, 1, x_51); -return x_52; -} -} -} -else -{ -lean_object* x_53; uint8_t x_54; -lean_dec(x_29); -lean_dec(x_1); -x_53 = lean_st_ref_set(x_4, x_11, x_12); -x_54 = !lean_is_exclusive(x_53); -if (x_54 == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); -lean_dec(x_55); -x_56 = lean_box(0); -lean_ctor_set(x_53, 0, x_56); -return x_53; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_53, 1); -lean_inc(x_57); -lean_dec(x_53); -x_58 = lean_box(0); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -return x_59; -} -} -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; uint64_t x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; uint64_t x_68; uint64_t x_69; size_t x_70; size_t x_71; size_t x_72; size_t x_73; size_t x_74; lean_object* x_75; uint8_t x_76; -x_60 = lean_ctor_get(x_11, 0); -x_61 = lean_ctor_get(x_11, 1); -lean_inc(x_61); -lean_inc(x_60); -lean_dec(x_11); -x_62 = lean_array_get_size(x_61); -x_63 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_64 = 32; -x_65 = lean_uint64_shift_right(x_63, x_64); -x_66 = lean_uint64_xor(x_63, x_65); -x_67 = 16; -x_68 = lean_uint64_shift_right(x_66, x_67); -x_69 = lean_uint64_xor(x_66, x_68); -x_70 = lean_uint64_to_usize(x_69); -x_71 = lean_usize_of_nat(x_62); -lean_dec(x_62); -x_72 = 1; -x_73 = lean_usize_sub(x_71, x_72); -x_74 = lean_usize_land(x_70, x_73); -x_75 = lean_array_uget(x_61, x_74); -x_76 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_75); -if (x_76 == 0) -{ -lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; uint8_t x_87; -x_77 = lean_unsigned_to_nat(1u); -x_78 = lean_nat_add(x_60, x_77); -lean_dec(x_60); -x_79 = lean_box(0); -x_80 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_80, 0, x_1); -lean_ctor_set(x_80, 1, x_79); -lean_ctor_set(x_80, 2, x_75); -x_81 = lean_array_uset(x_61, x_74, x_80); -x_82 = lean_unsigned_to_nat(4u); -x_83 = lean_nat_mul(x_78, x_82); -x_84 = lean_unsigned_to_nat(3u); -x_85 = lean_nat_div(x_83, x_84); -lean_dec(x_83); -x_86 = lean_array_get_size(x_81); -x_87 = lean_nat_dec_le(x_85, x_86); -lean_dec(x_86); -lean_dec(x_85); -if (x_87 == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; -x_88 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_81); -x_89 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_89, 0, x_78); -lean_ctor_set(x_89, 1, x_88); -x_90 = lean_st_ref_set(x_4, x_89, x_12); -x_91 = lean_ctor_get(x_90, 1); -lean_inc(x_91); -if (lean_is_exclusive(x_90)) { - lean_ctor_release(x_90, 0); - lean_ctor_release(x_90, 1); - x_92 = x_90; -} else { - lean_dec_ref(x_90); - x_92 = lean_box(0); -} -if (lean_is_scalar(x_92)) { - x_93 = lean_alloc_ctor(0, 2, 0); -} else { - x_93 = x_92; -} -lean_ctor_set(x_93, 0, x_79); -lean_ctor_set(x_93, 1, x_91); -return x_93; -} -else -{ -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_78); -lean_ctor_set(x_94, 1, x_81); -x_95 = lean_st_ref_set(x_4, x_94, x_12); -x_96 = lean_ctor_get(x_95, 1); -lean_inc(x_96); -if (lean_is_exclusive(x_95)) { - lean_ctor_release(x_95, 0); - lean_ctor_release(x_95, 1); - x_97 = x_95; -} else { - lean_dec_ref(x_95); - x_97 = lean_box(0); -} -if (lean_is_scalar(x_97)) { - x_98 = lean_alloc_ctor(0, 2, 0); -} else { - x_98 = x_97; -} -lean_ctor_set(x_98, 0, x_79); -lean_ctor_set(x_98, 1, x_96); -return x_98; -} -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_75); -lean_dec(x_1); -x_99 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_99, 0, x_60); -lean_ctor_set(x_99, 1, x_61); -x_100 = lean_st_ref_set(x_4, x_99, x_12); -x_101 = lean_ctor_get(x_100, 1); -lean_inc(x_101); -if (lean_is_exclusive(x_100)) { - lean_ctor_release(x_100, 0); - lean_ctor_release(x_100, 1); - x_102 = x_100; -} else { - lean_dec_ref(x_100); - x_102 = lean_box(0); -} -x_103 = lean_box(0); -if (lean_is_scalar(x_102)) { - x_104 = lean_alloc_ctor(0, 2, 0); -} else { - x_104 = x_102; -} -lean_ctor_set(x_104, 0, x_103); -lean_ctor_set(x_104, 1, x_101); -return x_104; -} -} -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Adding ", 7, 7); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" to the rewritten set", 21, 21); -return x_1; -} -} -static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_10 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_9, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_unbox(x_11); -lean_dec(x_11); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_dec(x_10); -x_14 = lean_box(0); -x_15 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(x_1, x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_13); -return x_15; -} -else -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_10); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_17 = lean_ctor_get(x_10, 1); -x_18 = lean_ctor_get(x_10, 0); -lean_dec(x_18); -lean_inc(x_1); -x_19 = l_Lean_Expr_fvar___override(x_1); -x_20 = l_Lean_MessageData_ofExpr(x_19); -x_21 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2; -lean_ctor_set_tag(x_10, 7); -lean_ctor_set(x_10, 1, x_20); -lean_ctor_set(x_10, 0, x_21); -x_22 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4; -x_23 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_23, 0, x_10); -lean_ctor_set(x_23, 1, x_22); -x_24 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_9, x_23, x_2, x_3, x_4, x_5, x_6, x_7, x_17); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(x_1, x_25, x_2, x_3, x_4, x_5, x_6, x_7, x_26); -lean_dec(x_25); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_28 = lean_ctor_get(x_10, 1); -lean_inc(x_28); -lean_dec(x_10); -lean_inc(x_1); -x_29 = l_Lean_Expr_fvar___override(x_1); -x_30 = l_Lean_MessageData_ofExpr(x_29); -x_31 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2; -x_32 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_30); -x_33 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4; -x_34 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -x_35 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_9, x_34, x_2, x_3, x_4, x_5, x_6, x_7, x_28); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 1); -lean_inc(x_37); -lean_dec(x_35); -x_38 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(x_1, x_36, x_2, x_3, x_4, x_5, x_6, x_7, x_37); -lean_dec(x_36); -return x_38; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_9; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_9 = l_Lean_MVarId_getNondepPropHyps(x_2, x_4, x_5, x_6, x_7, x_8); -if (lean_obj_tag(x_9) == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); -lean_inc(x_11); -lean_dec(x_9); -x_12 = lean_array_get_size(x_10); -lean_dec(x_10); -x_13 = lean_unsigned_to_nat(4u); -x_14 = lean_nat_mul(x_12, x_13); -lean_dec(x_12); -x_15 = lean_unsigned_to_nat(3u); -x_16 = lean_nat_div(x_14, x_15); -lean_dec(x_14); -x_17 = lean_unsigned_to_nat(1u); -x_18 = l_Nat_nextPowerOfTwo_go(x_16, x_17, lean_box(0)); -lean_dec(x_16); -x_19 = lean_box(0); -x_20 = lean_mk_array(x_18, x_19); -x_21 = lean_unsigned_to_nat(0u); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_20); -x_23 = lean_st_mk_ref(x_22, x_11); -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -x_25 = lean_ctor_get(x_23, 1); -lean_inc(x_25); -lean_dec(x_23); -lean_inc(x_24); -x_26 = lean_apply_7(x_3, x_1, x_24, x_4, x_5, x_6, x_7, x_25); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = lean_st_ref_get(x_24, x_28); -lean_dec(x_24); -x_30 = !lean_is_exclusive(x_29); -if (x_30 == 0) -{ -lean_object* x_31; -x_31 = lean_ctor_get(x_29, 0); -lean_dec(x_31); -lean_ctor_set(x_29, 0, x_27); -return x_29; -} -else -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_ctor_get(x_29, 1); -lean_inc(x_32); -lean_dec(x_29); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_27); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -else -{ -uint8_t x_34; -lean_dec(x_24); -x_34 = !lean_is_exclusive(x_26); -if (x_34 == 0) -{ -return x_26; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_26, 0); -x_36 = lean_ctor_get(x_26, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_26); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; -} -} -} -else -{ -uint8_t x_38; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_38 = !lean_is_exclusive(x_9); -if (x_38 == 0) -{ -return x_9; -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_9, 0); -x_40 = lean_ctor_get(x_9, 1); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_9); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg), 8, 0); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1() { +static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -1832,23 +711,23 @@ x_2 = lean_mk_empty_array_with_capacity(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2() { +static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1; +x_1 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3() { +static lean_object* _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3() { _start: { size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = 5; -x_2 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2; -x_3 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1; +x_2 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2; +x_3 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1; x_4 = lean_unsigned_to_nat(0u); x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); lean_ctor_set(x_5, 0, x_2); @@ -1859,7 +738,7 @@ lean_ctor_set_usize(x_5, 4, x_1); return x_5; } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; @@ -1895,7 +774,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; x_15 = lean_ctor_get(x_10, 0); lean_dec(x_15); -x_16 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3; +x_16 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3; lean_ctor_set(x_10, 0, x_16); x_17 = lean_st_ref_set(x_1, x_9, x_11); x_18 = !lean_is_exclusive(x_17); @@ -1924,7 +803,7 @@ else uint64_t x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; x_22 = lean_ctor_get_uint64(x_10, sizeof(void*)*1); lean_dec(x_10); -x_23 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3; +x_23 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3; x_24 = lean_alloc_ctor(0, 1, 8); lean_ctor_set(x_24, 0, x_23); lean_ctor_set_uint64(x_24, sizeof(void*)*1, x_22); @@ -1976,7 +855,7 @@ if (lean_is_exclusive(x_10)) { lean_dec_ref(x_10); x_37 = lean_box(0); } -x_38 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3; +x_38 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3; if (lean_is_scalar(x_37)) { x_39 = lean_alloc_ctor(0, 1, 8); } else { @@ -2015,15 +894,15 @@ return x_44; } } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; -x_6 = lean_alloc_closure((void*)(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___boxed), 2, 0); +x_6 = lean_alloc_closure((void*)(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___boxed), 2, 0); return x_6; } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { uint8_t x_12; @@ -2481,7 +1360,7 @@ return x_143; } } } -LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { if (lean_obj_tag(x_1) == 0) @@ -2511,22 +1390,32 @@ _start: { lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_inc(x_11); -x_14 = l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(x_1, x_5, x_2, x_3, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_14 = l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_1, x_5, x_2, x_3, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_15 = lean_ctor_get(x_14, 1); lean_inc(x_15); lean_dec(x_14); -x_16 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_4, x_7, x_8, x_9, x_10, x_11, x_12, x_15); +x_16 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_4, x_7, x_8, x_9, x_10, x_11, x_12, x_15); lean_dec(x_11); return x_16; } } +static double _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; double x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = 0; +x_3 = l_Float_ofScientific(x_1, x_2, x_1); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, uint8_t x_7, double x_8, double x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { _start: { if (x_7 == 0) { double x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1; +x_18 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; x_19 = lean_alloc_ctor(0, 2, 17); lean_ctor_set(x_19, 0, x_1); lean_ctor_set(x_19, 1, x_3); @@ -2668,7 +1557,7 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Fro _start: { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_16 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg(x_14, x_15); +x_16 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg(x_14, x_15); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -3059,7 +1948,7 @@ x_39 = lean_st_ref_set(x_14, x_31, x_33); x_40 = lean_ctor_get(x_39, 1); lean_inc(x_40); lean_dec(x_39); -x_41 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_40); +x_41 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_40); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3129,7 +2018,7 @@ x_54 = lean_st_ref_set(x_14, x_31, x_33); x_55 = lean_ctor_get(x_54, 1); lean_inc(x_55); lean_dec(x_54); -x_56 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_55); +x_56 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_55); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3237,7 +2126,7 @@ x_78 = lean_st_ref_set(x_14, x_77, x_33); x_79 = lean_ctor_get(x_78, 1); lean_inc(x_79); lean_dec(x_78); -x_80 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_79); +x_80 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_24, x_9, x_10, x_11, x_12, x_13, x_14, x_79); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3674,7 +2563,7 @@ x_241 = lean_st_ref_set(x_14, x_233, x_235); x_242 = lean_ctor_get(x_241, 1); lean_inc(x_242); lean_dec(x_241); -x_243 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_242); +x_243 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_242); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3744,7 +2633,7 @@ x_256 = lean_st_ref_set(x_14, x_233, x_235); x_257 = lean_ctor_get(x_256, 1); lean_inc(x_257); lean_dec(x_256); -x_258 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_257); +x_258 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_257); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3852,7 +2741,7 @@ x_280 = lean_st_ref_set(x_14, x_279, x_235); x_281 = lean_ctor_get(x_280, 1); lean_inc(x_281); lean_dec(x_280); -x_282 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_281); +x_282 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_226, x_9, x_10, x_11, x_12, x_13, x_14, x_281); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -3933,7 +2822,7 @@ lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; x_13 = lean_ctor_get(x_10, 2); lean_inc(x_13); lean_inc(x_1); -x_14 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_1, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_14 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_1, x_6, x_7, x_8, x_9, x_10, x_11, x_12); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_unbox(x_15); @@ -4059,6 +2948,23 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { @@ -4080,7 +2986,7 @@ lean_ctor_set(x_17, 0, x_2); x_18 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); -x_19 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; +x_19 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6; x_20 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_20, 0, x_18); lean_ctor_set(x_20, 1, x_19); @@ -4093,9 +2999,17 @@ return x_21; static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("bv", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3; +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } @@ -4113,27 +3027,41 @@ x_11 = lean_ctor_get(x_1, 1); lean_inc(x_11); lean_dec(x_1); x_12 = lean_apply_1(x_11, x_2); -x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1; +x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2; x_14 = 1; -x_15 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2; +x_15 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; x_16 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1(x_13, x_10, x_12, x_14, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_9); return x_16; } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg(x_1, x_2); +x_3 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg(x_1, x_2); lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; -x_6 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_1, x_2, x_3, x_4, x_5); +x_6 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(x_1, x_2, x_3, x_4, x_5); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); @@ -4142,11 +3070,11 @@ lean_dec(x_1); return x_6; } } -LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; -x_12 = l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_12 = l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_10); lean_dec(x_8); lean_dec(x_7); @@ -4155,11 +3083,11 @@ lean_dec(x_5); return x_12; } } -LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_MonadExcept_ofExcept___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); @@ -4297,7 +3225,334 @@ lean_dec(x_3); return x_11; } } -static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1() { +static lean_object* _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_10 = lean_ctor_get(x_7, 5); +x_11 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_2, x_5, x_6, x_7, x_8, x_9); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +x_14 = lean_st_ref_take(x_8, x_13); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_15, 3); +lean_inc(x_16); +x_17 = !lean_is_exclusive(x_14); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_14, 1); +x_19 = lean_ctor_get(x_14, 0); +lean_dec(x_19); +x_20 = !lean_is_exclusive(x_15); +if (x_20 == 0) +{ +lean_object* x_21; uint8_t x_22; +x_21 = lean_ctor_get(x_15, 3); +lean_dec(x_21); +x_22 = !lean_is_exclusive(x_16); +if (x_22 == 0) +{ +lean_object* x_23; double x_24; uint8_t x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_23 = lean_ctor_get(x_16, 0); +x_24 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; +x_25 = 0; +x_26 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; +x_27 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_27, 0, x_1); +lean_ctor_set(x_27, 1, x_26); +lean_ctor_set_float(x_27, sizeof(void*)*2, x_24); +lean_ctor_set_float(x_27, sizeof(void*)*2 + 8, x_24); +lean_ctor_set_uint8(x_27, sizeof(void*)*2 + 16, x_25); +x_28 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; +x_29 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_12); +lean_ctor_set(x_29, 2, x_28); +lean_inc(x_10); +lean_ctor_set(x_14, 1, x_29); +lean_ctor_set(x_14, 0, x_10); +x_30 = l_Lean_PersistentArray_push___rarg(x_23, x_14); +lean_ctor_set(x_16, 0, x_30); +x_31 = lean_st_ref_set(x_8, x_15, x_18); +x_32 = !lean_is_exclusive(x_31); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_31, 0); +lean_dec(x_33); +x_34 = lean_box(0); +lean_ctor_set(x_31, 0, x_34); +return x_31; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_31, 1); +lean_inc(x_35); +lean_dec(x_31); +x_36 = lean_box(0); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_35); +return x_37; +} +} +else +{ +uint64_t x_38; lean_object* x_39; double x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_38 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); +x_39 = lean_ctor_get(x_16, 0); +lean_inc(x_39); +lean_dec(x_16); +x_40 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; +x_41 = 0; +x_42 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; +x_43 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_43, 0, x_1); +lean_ctor_set(x_43, 1, x_42); +lean_ctor_set_float(x_43, sizeof(void*)*2, x_40); +lean_ctor_set_float(x_43, sizeof(void*)*2 + 8, x_40); +lean_ctor_set_uint8(x_43, sizeof(void*)*2 + 16, x_41); +x_44 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; +x_45 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_12); +lean_ctor_set(x_45, 2, x_44); +lean_inc(x_10); +lean_ctor_set(x_14, 1, x_45); +lean_ctor_set(x_14, 0, x_10); +x_46 = l_Lean_PersistentArray_push___rarg(x_39, x_14); +x_47 = lean_alloc_ctor(0, 1, 8); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set_uint64(x_47, sizeof(void*)*1, x_38); +lean_ctor_set(x_15, 3, x_47); +x_48 = lean_st_ref_set(x_8, x_15, x_18); +x_49 = lean_ctor_get(x_48, 1); +lean_inc(x_49); +if (lean_is_exclusive(x_48)) { + lean_ctor_release(x_48, 0); + lean_ctor_release(x_48, 1); + x_50 = x_48; +} else { + lean_dec_ref(x_48); + x_50 = lean_box(0); +} +x_51 = lean_box(0); +if (lean_is_scalar(x_50)) { + x_52 = lean_alloc_ctor(0, 2, 0); +} else { + x_52 = x_50; +} +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_49); +return x_52; +} +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; uint64_t x_60; lean_object* x_61; lean_object* x_62; double x_63; uint8_t x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_53 = lean_ctor_get(x_15, 0); +x_54 = lean_ctor_get(x_15, 1); +x_55 = lean_ctor_get(x_15, 2); +x_56 = lean_ctor_get(x_15, 4); +x_57 = lean_ctor_get(x_15, 5); +x_58 = lean_ctor_get(x_15, 6); +x_59 = lean_ctor_get(x_15, 7); +lean_inc(x_59); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_15); +x_60 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); +x_61 = lean_ctor_get(x_16, 0); +lean_inc(x_61); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + x_62 = x_16; +} else { + lean_dec_ref(x_16); + x_62 = lean_box(0); +} +x_63 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; +x_64 = 0; +x_65 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; +x_66 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_66, 0, x_1); +lean_ctor_set(x_66, 1, x_65); +lean_ctor_set_float(x_66, sizeof(void*)*2, x_63); +lean_ctor_set_float(x_66, sizeof(void*)*2 + 8, x_63); +lean_ctor_set_uint8(x_66, sizeof(void*)*2 + 16, x_64); +x_67 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; +x_68 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_12); +lean_ctor_set(x_68, 2, x_67); +lean_inc(x_10); +lean_ctor_set(x_14, 1, x_68); +lean_ctor_set(x_14, 0, x_10); +x_69 = l_Lean_PersistentArray_push___rarg(x_61, x_14); +if (lean_is_scalar(x_62)) { + x_70 = lean_alloc_ctor(0, 1, 8); +} else { + x_70 = x_62; +} +lean_ctor_set(x_70, 0, x_69); +lean_ctor_set_uint64(x_70, sizeof(void*)*1, x_60); +x_71 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_71, 0, x_53); +lean_ctor_set(x_71, 1, x_54); +lean_ctor_set(x_71, 2, x_55); +lean_ctor_set(x_71, 3, x_70); +lean_ctor_set(x_71, 4, x_56); +lean_ctor_set(x_71, 5, x_57); +lean_ctor_set(x_71, 6, x_58); +lean_ctor_set(x_71, 7, x_59); +x_72 = lean_st_ref_set(x_8, x_71, x_18); +x_73 = lean_ctor_get(x_72, 1); +lean_inc(x_73); +if (lean_is_exclusive(x_72)) { + lean_ctor_release(x_72, 0); + lean_ctor_release(x_72, 1); + x_74 = x_72; +} else { + lean_dec_ref(x_72); + x_74 = lean_box(0); +} +x_75 = lean_box(0); +if (lean_is_scalar(x_74)) { + x_76 = lean_alloc_ctor(0, 2, 0); +} else { + x_76 = x_74; +} +lean_ctor_set(x_76, 0, x_75); +lean_ctor_set(x_76, 1, x_73); +return x_76; +} +} +else +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint64_t x_86; lean_object* x_87; lean_object* x_88; double x_89; uint8_t x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_77 = lean_ctor_get(x_14, 1); +lean_inc(x_77); +lean_dec(x_14); +x_78 = lean_ctor_get(x_15, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_15, 1); +lean_inc(x_79); +x_80 = lean_ctor_get(x_15, 2); +lean_inc(x_80); +x_81 = lean_ctor_get(x_15, 4); +lean_inc(x_81); +x_82 = lean_ctor_get(x_15, 5); +lean_inc(x_82); +x_83 = lean_ctor_get(x_15, 6); +lean_inc(x_83); +x_84 = lean_ctor_get(x_15, 7); +lean_inc(x_84); +if (lean_is_exclusive(x_15)) { + lean_ctor_release(x_15, 0); + lean_ctor_release(x_15, 1); + lean_ctor_release(x_15, 2); + lean_ctor_release(x_15, 3); + lean_ctor_release(x_15, 4); + lean_ctor_release(x_15, 5); + lean_ctor_release(x_15, 6); + lean_ctor_release(x_15, 7); + x_85 = x_15; +} else { + lean_dec_ref(x_15); + x_85 = lean_box(0); +} +x_86 = lean_ctor_get_uint64(x_16, sizeof(void*)*1); +x_87 = lean_ctor_get(x_16, 0); +lean_inc(x_87); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + x_88 = x_16; +} else { + lean_dec_ref(x_16); + x_88 = lean_box(0); +} +x_89 = l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1; +x_90 = 0; +x_91 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5; +x_92 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_92, 0, x_1); +lean_ctor_set(x_92, 1, x_91); +lean_ctor_set_float(x_92, sizeof(void*)*2, x_89); +lean_ctor_set_float(x_92, sizeof(void*)*2 + 8, x_89); +lean_ctor_set_uint8(x_92, sizeof(void*)*2 + 16, x_90); +x_93 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; +x_94 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_94, 0, x_92); +lean_ctor_set(x_94, 1, x_12); +lean_ctor_set(x_94, 2, x_93); +lean_inc(x_10); +x_95 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_95, 0, x_10); +lean_ctor_set(x_95, 1, x_94); +x_96 = l_Lean_PersistentArray_push___rarg(x_87, x_95); +if (lean_is_scalar(x_88)) { + x_97 = lean_alloc_ctor(0, 1, 8); +} else { + x_97 = x_88; +} +lean_ctor_set(x_97, 0, x_96); +lean_ctor_set_uint64(x_97, sizeof(void*)*1, x_86); +if (lean_is_scalar(x_85)) { + x_98 = lean_alloc_ctor(0, 8, 0); +} else { + x_98 = x_85; +} +lean_ctor_set(x_98, 0, x_78); +lean_ctor_set(x_98, 1, x_79); +lean_ctor_set(x_98, 2, x_80); +lean_ctor_set(x_98, 3, x_97); +lean_ctor_set(x_98, 4, x_81); +lean_ctor_set(x_98, 5, x_82); +lean_ctor_set(x_98, 6, x_83); +lean_ctor_set(x_98, 7, x_84); +x_99 = lean_st_ref_set(x_8, x_98, x_77); +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_101 = x_99; +} else { + lean_dec_ref(x_99); + x_101 = lean_box(0); +} +x_102 = lean_box(0); +if (lean_is_scalar(x_101)) { + x_103 = lean_alloc_ctor(0, 2, 0); +} else { + x_103 = x_101; +} +lean_ctor_set(x_103, 0, x_102); +lean_ctor_set(x_103, 1, x_100); +return x_103; +} +} +} +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -4307,11 +3562,11 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_10 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1; +x_10 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1; x_11 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_1); @@ -4323,7 +3578,34 @@ lean_ctor_set(x_13, 1, x_9); return x_13; } } -static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1() { +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Meta", 4, 4); +return x_1; +} +} +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Tactic", 6, 6); +return x_1; +} +} +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1; +x_2 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2; +x_3 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4() { _start: { lean_object* x_1; @@ -4331,16 +3613,16 @@ x_1 = lean_mk_string_unchecked("Fixpoint iteration solved the goal", 34, 34); return x_1; } } -static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2() { +static lean_object* _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1; +x_1 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { if (lean_obj_tag(x_5) == 0) @@ -4395,8 +3677,8 @@ lean_dec(x_3); x_23 = lean_ctor_get(x_21, 1); lean_inc(x_23); lean_dec(x_21); -x_24 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_25 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_24, x_8, x_9, x_10, x_11, x_12, x_13, x_23); +x_24 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3; +x_25 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_24, x_8, x_9, x_10, x_11, x_12, x_13, x_23); x_26 = lean_ctor_get(x_25, 0); lean_inc(x_26); x_27 = lean_unbox(x_26); @@ -4408,7 +3690,7 @@ x_28 = lean_ctor_get(x_25, 1); lean_inc(x_28); lean_dec(x_25); x_29 = lean_box(0); -x_30 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(x_19, x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_28); +x_30 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(x_19, x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_28); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -4449,14 +3731,14 @@ lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean x_38 = lean_ctor_get(x_25, 1); lean_inc(x_38); lean_dec(x_25); -x_39 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2; -x_40 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_24, x_39, x_8, x_9, x_10, x_11, x_12, x_13, x_38); +x_39 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5; +x_40 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_24, x_39, x_8, x_9, x_10, x_11, x_12, x_13, x_38); x_41 = lean_ctor_get(x_40, 0); lean_inc(x_41); x_42 = lean_ctor_get(x_40, 1); lean_inc(x_42); lean_dec(x_40); -x_43 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(x_19, x_41, x_8, x_9, x_10, x_11, x_12, x_13, x_42); +x_43 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(x_19, x_41, x_8, x_9, x_10, x_11, x_12, x_13, x_42); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -4572,8 +3854,8 @@ lean_dec(x_3); x_61 = lean_ctor_get(x_59, 1); lean_inc(x_61); lean_dec(x_59); -x_62 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_63 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_62, x_8, x_9, x_10, x_11, x_12, x_13, x_61); +x_62 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3; +x_63 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_62, x_8, x_9, x_10, x_11, x_12, x_13, x_61); x_64 = lean_ctor_get(x_63, 0); lean_inc(x_64); x_65 = lean_unbox(x_64); @@ -4585,7 +3867,7 @@ x_66 = lean_ctor_get(x_63, 1); lean_inc(x_66); lean_dec(x_63); x_67 = lean_box(0); -x_68 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(x_58, x_67, x_8, x_9, x_10, x_11, x_12, x_13, x_66); +x_68 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(x_58, x_67, x_8, x_9, x_10, x_11, x_12, x_13, x_66); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -4622,14 +3904,14 @@ lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean x_74 = lean_ctor_get(x_63, 1); lean_inc(x_74); lean_dec(x_63); -x_75 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2; -x_76 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_62, x_75, x_8, x_9, x_10, x_11, x_12, x_13, x_74); +x_75 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5; +x_76 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_62, x_75, x_8, x_9, x_10, x_11, x_12, x_13, x_74); x_77 = lean_ctor_get(x_76, 0); lean_inc(x_77); x_78 = lean_ctor_get(x_76, 1); lean_inc(x_78); lean_dec(x_76); -x_79 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(x_58, x_77, x_8, x_9, x_10, x_11, x_12, x_13, x_78); +x_79 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(x_58, x_77, x_8, x_9, x_10, x_11, x_12, x_13, x_78); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -4782,8 +4064,8 @@ x_12 = lean_name_eq(x_1, x_2); if (x_12 == 0) { lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; -x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_14 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3; +x_14 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_13, x_5, x_6, x_7, x_8, x_9, x_10, x_11); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_unbox(x_15); @@ -4814,11 +4096,11 @@ x_23 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___la lean_ctor_set_tag(x_14, 7); lean_ctor_set(x_14, 1, x_22); lean_ctor_set(x_14, 0, x_23); -x_24 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; +x_24 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6; x_25 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_25, 0, x_14); lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_20); +x_26 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_13, x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_20); x_27 = lean_ctor_get(x_26, 1); lean_inc(x_27); lean_dec(x_26); @@ -4838,11 +4120,11 @@ x_31 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___la x_32 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_32, 0, x_31); lean_ctor_set(x_32, 1, x_30); -x_33 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5; +x_33 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6; x_34 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_34, 0, x_32); lean_ctor_set(x_34, 1, x_33); -x_35 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_13, x_34, x_5, x_6, x_7, x_8, x_9, x_10, x_29); +x_35 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_13, x_34, x_5, x_6, x_7, x_8, x_9, x_10, x_29); x_36 = lean_ctor_get(x_35, 1); lean_inc(x_36); lean_dec(x_35); @@ -4855,8 +4137,8 @@ else { lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_dec(x_3); -x_38 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4; -x_39 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_38, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_38 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3; +x_39 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2(x_38, x_5, x_6, x_7, x_8, x_9, x_10, x_11); x_40 = lean_ctor_get(x_39, 0); lean_inc(x_40); x_41 = lean_unbox(x_40); @@ -4884,7 +4166,7 @@ x_45 = lean_ctor_get(x_39, 1); lean_inc(x_45); lean_dec(x_39); x_46 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__4; -x_47 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_38, x_46, x_5, x_6, x_7, x_8, x_9, x_10, x_45); +x_47 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_38, x_46, x_5, x_6, x_7, x_8, x_9, x_10, x_45); x_48 = lean_ctor_get(x_47, 0); lean_inc(x_48); x_49 = lean_ctor_get(x_47, 1); @@ -4920,7 +4202,7 @@ lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_1); -x_13 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_1, x_10, x_11, x_1, x_1, x_12, lean_box(0), x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_13 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2(x_1, x_10, x_11, x_1, x_1, x_12, lean_box(0), x_3, x_4, x_5, x_6, x_7, x_8, x_9); if (lean_obj_tag(x_13) == 0) { lean_object* x_14; lean_object* x_15; @@ -5014,11 +4296,25 @@ return x_29; } } } -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_10; +} +} +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); @@ -5029,11 +4325,11 @@ lean_dec(x_2); return x_10; } } -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; -x_15 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +x_15 = l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); @@ -5087,51 +4383,15 @@ lean_dec_ref(res); res = initialize_Lean_Elab_Tactic_BVDecide_Frontend_Attr(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1 = _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__1(); -l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2 = _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2(); -lean_mark_persistent(l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__2); -l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3 = _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3(); -lean_mark_persistent(l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2___closed__3); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__1); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__2); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__3); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__4); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__5); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__6); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__7); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__8); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__9); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__10); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__11); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__12); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___closed__13); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__1); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__2); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__3); -l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4(); -lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_rewriteFinished___closed__4); -l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1(); -lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__1); -l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2(); -lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__2); -l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3(); -lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__2___rarg___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_run___rarg___closed__1); +l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__1); +l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2(); +lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__2); +l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3 = _init_l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3(); +lean_mark_persistent(l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__3___rarg___closed__3); +l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__2___closed__1(); l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__1 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__1(); lean_mark_persistent(l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__1); l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__2 = _init_l_Lean_withTraceNode___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___spec__1___lambda__3___closed__2(); @@ -5152,14 +4412,28 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__3 lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__3); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__4(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__4); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__5); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___lambda__1___closed__6); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__1); -l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1(); -lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___lambda__1___closed__1); -l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1(); -lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1); -l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2(); -lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_run___closed__2); +l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1 = _init_l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1(); +lean_mark_persistent(l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__1___closed__1); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___lambda__1___closed__1); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__1); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__2); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__3); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__4); +l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5 = _init_l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5(); +lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___spec__2___closed__5); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Pass_fixpointPipeline___lambda__3___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/EmbeddedConstraint.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/EmbeddedConstraint.c index eadf2b985d..21af3997e8 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/EmbeddedConstraint.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/EmbeddedConstraint.c @@ -13,12 +13,11 @@ #ifdef __cplusplus extern "C" { #endif -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__3; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__1; size_t lean_uint64_to_usize(uint64_t); -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_CollectFVars_visit___spec__1(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); @@ -29,7 +28,7 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embedded static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__5; lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__4; @@ -40,23 +39,25 @@ lean_object* l_Lean_Meta_getSimpCongrTheorems___rarg(lean_object*, lean_object*) static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___closed__1; size_t lean_usize_of_nat(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_MVarId_getNondepPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__3; uint64_t lean_uint64_shift_right(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_div(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__2; +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__4; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___closed__2; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2(lean_object*); uint64_t l_Lean_Expr_hash(lean_object*); lean_object* l_Lean_FVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__5; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -66,10 +67,12 @@ static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConst static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__2; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6; extern lean_object* l_Lean_Meta_simpGlobalConfig; -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__4; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__7; uint64_t lean_uint64_xor(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -84,8 +87,7 @@ size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); -LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); @@ -96,7 +98,6 @@ static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConst lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_Lean_Meta_SimpTheoremsArray_addTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2(lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); uint8_t l_Array_isEmpty___rarg(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__8; @@ -1013,7 +1014,67 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; +x_10 = lean_apply_2(x_2, x_3, x_4); +x_11 = l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(x_1, x_10, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_11); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set(x_15, 1, x_14); +return x_15; +} +} +else +{ +uint8_t x_16; +x_16 = !lean_is_exclusive(x_11); +if (x_16 == 0) +{ +return x_11; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_11, 0); +x_18 = lean_ctor_get(x_11, 1); +lean_inc(x_18); +lean_inc(x_17); +lean_dec(x_11); +x_19 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +return x_19; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg), 9, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; @@ -1066,80 +1127,20 @@ return x_17; } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg), 9, 0); +x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg), 9, 0); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_10; lean_object* x_11; -x_10 = lean_apply_2(x_2, x_3, x_4); -x_11 = l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(x_1, x_10, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_11) == 0) -{ -uint8_t x_12; -x_12 = !lean_is_exclusive(x_11); -if (x_12 == 0) -{ -return x_11; -} -else -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_11, 0); -x_14 = lean_ctor_get(x_11, 1); -lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_11); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_13); -lean_ctor_set(x_15, 1, x_14); -return x_15; -} -} -else -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_11); -if (x_16 == 0) -{ -return x_11; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_11, 0); -x_18 = lean_ctor_get(x_11, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_11); -x_19 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -return x_19; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg), 9, 0); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l_Lean_MVarId_getNondepPropHyps(x_1, x_4, x_5, x_6, x_7, x_8); -return x_9; +lean_object* x_8; +x_8 = l_Lean_Meta_getPropHyps(x_3, x_4, x_5, x_6, x_7); +return x_8; } } static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__1() { @@ -1234,219 +1235,222 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; uint8_t x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_12 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_10, x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_ctor_get(x_5, 1); -x_16 = lean_unsigned_to_nat(2u); -x_17 = 0; -x_18 = 1; -x_19 = 0; -lean_inc(x_15); -x_20 = lean_alloc_ctor(0, 2, 19); -lean_ctor_set(x_20, 0, x_15); -lean_ctor_set(x_20, 1, x_16); -lean_ctor_set_uint8(x_20, sizeof(void*)*2, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 1, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 2, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 3, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 4, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 5, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 6, x_19); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 7, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 8, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 9, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 10, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 11, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 12, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 13, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 14, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 15, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 16, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 17, x_18); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 18, x_18); -x_21 = l_Lean_Meta_Simp_mkContext(x_20, x_1, x_13, x_7, x_8, x_9, x_10, x_14); -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_21, 1); -lean_inc(x_23); -lean_dec(x_21); +lean_object* x_13; +lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -x_24 = l_Lean_MVarId_getNondepPropHyps(x_2, x_7, x_8, x_9, x_10, x_23); -if (lean_obj_tag(x_24) == 0) +lean_inc(x_6); +lean_inc(x_1); +x_13 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; uint8_t x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_11, x_15); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_ctor_get(x_6, 1); +lean_inc(x_19); +lean_dec(x_6); +x_20 = lean_unsigned_to_nat(2u); +x_21 = 0; +x_22 = 1; +x_23 = 0; +x_24 = lean_alloc_ctor(0, 2, 19); +lean_ctor_set(x_24, 0, x_19); +lean_ctor_set(x_24, 1, x_20); +lean_ctor_set_uint8(x_24, sizeof(void*)*2, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 1, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 2, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 3, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 4, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 5, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 6, x_23); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 7, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 8, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 9, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 10, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 11, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 12, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 13, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 14, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 15, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 16, x_21); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 17, x_22); +lean_ctor_set_uint8(x_24, sizeof(void*)*2 + 18, x_22); +x_25 = l_Lean_Meta_Simp_mkContext(x_24, x_3, x_17, x_8, x_9, x_10, x_11, x_18); +x_26 = lean_ctor_get(x_25, 0); lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_box(0); -x_28 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__8; -x_29 = l_Lean_Meta_simpGoal(x_2, x_22, x_3, x_27, x_18, x_25, x_28, x_7, x_8, x_9, x_10, x_26); -if (lean_obj_tag(x_29) == 0) +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___closed__8; +x_30 = l_Lean_Meta_simpGoal(x_1, x_26, x_4, x_28, x_22, x_14, x_29, x_8, x_9, x_10, x_11, x_27); +if (lean_obj_tag(x_30) == 0) { -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_29, 0); -lean_inc(x_30); +lean_object* x_31; lean_object* x_32; x_31 = lean_ctor_get(x_30, 0); lean_inc(x_31); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +lean_dec(x_31); +if (lean_obj_tag(x_32) == 0) +{ +uint8_t x_33; +x_33 = !lean_is_exclusive(x_30); +if (x_33 == 0) +{ +lean_object* x_34; +x_34 = lean_ctor_get(x_30, 0); +lean_dec(x_34); +lean_ctor_set(x_30, 0, x_28); +return x_30; +} +else +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_ctor_get(x_30, 1); +lean_inc(x_35); lean_dec(x_30); -if (lean_obj_tag(x_31) == 0) -{ -uint8_t x_32; -x_32 = !lean_is_exclusive(x_29); -if (x_32 == 0) -{ -lean_object* x_33; -x_33 = lean_ctor_get(x_29, 0); -lean_dec(x_33); -lean_ctor_set(x_29, 0, x_27); -return x_29; -} -else -{ -lean_object* x_34; lean_object* x_35; -x_34 = lean_ctor_get(x_29, 1); -lean_inc(x_34); -lean_dec(x_29); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_27); -lean_ctor_set(x_35, 1, x_34); -return x_35; +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_28); +lean_ctor_set(x_36, 1, x_35); +return x_36; } } else { -uint8_t x_36; -x_36 = !lean_is_exclusive(x_31); -if (x_36 == 0) -{ uint8_t x_37; -x_37 = !lean_is_exclusive(x_29); +x_37 = !lean_is_exclusive(x_32); if (x_37 == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_31, 0); -x_39 = lean_ctor_get(x_29, 0); +uint8_t x_38; +x_38 = !lean_is_exclusive(x_30); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_32, 0); +x_40 = lean_ctor_get(x_30, 0); +lean_dec(x_40); +x_41 = lean_ctor_get(x_39, 1); +lean_inc(x_41); lean_dec(x_39); -x_40 = lean_ctor_get(x_38, 1); -lean_inc(x_40); -lean_dec(x_38); -lean_ctor_set(x_31, 0, x_40); -lean_ctor_set(x_29, 0, x_31); -return x_29; +lean_ctor_set(x_32, 0, x_41); +lean_ctor_set(x_30, 0, x_32); +return x_30; } else { -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_41 = lean_ctor_get(x_31, 0); -x_42 = lean_ctor_get(x_29, 1); -lean_inc(x_42); -lean_dec(x_29); -x_43 = lean_ctor_get(x_41, 1); +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_42 = lean_ctor_get(x_32, 0); +x_43 = lean_ctor_get(x_30, 1); lean_inc(x_43); -lean_dec(x_41); -lean_ctor_set(x_31, 0, x_43); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_31); -lean_ctor_set(x_44, 1, x_42); -return x_44; +lean_dec(x_30); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); +lean_dec(x_42); +lean_ctor_set(x_32, 0, x_44); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_32); +lean_ctor_set(x_45, 1, x_43); +return x_45; } } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_45 = lean_ctor_get(x_31, 0); -lean_inc(x_45); -lean_dec(x_31); -x_46 = lean_ctor_get(x_29, 1); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_46 = lean_ctor_get(x_32, 0); lean_inc(x_46); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_47 = x_29; +lean_dec(x_32); +x_47 = lean_ctor_get(x_30, 1); +lean_inc(x_47); +if (lean_is_exclusive(x_30)) { + lean_ctor_release(x_30, 0); + lean_ctor_release(x_30, 1); + x_48 = x_30; } else { - lean_dec_ref(x_29); - x_47 = lean_box(0); -} -x_48 = lean_ctor_get(x_45, 1); -lean_inc(x_48); -lean_dec(x_45); -x_49 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_49, 0, x_48); -if (lean_is_scalar(x_47)) { - x_50 = lean_alloc_ctor(0, 2, 0); -} else { - x_50 = x_47; + lean_dec_ref(x_30); + x_48 = lean_box(0); } +x_49 = lean_ctor_get(x_46, 1); +lean_inc(x_49); +lean_dec(x_46); +x_50 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_50, 0, x_49); -lean_ctor_set(x_50, 1, x_46); -return x_50; +if (lean_is_scalar(x_48)) { + x_51 = lean_alloc_ctor(0, 2, 0); +} else { + x_51 = x_48; +} +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_47); +return x_51; } } } else { -uint8_t x_51; -x_51 = !lean_is_exclusive(x_29); -if (x_51 == 0) +uint8_t x_52; +x_52 = !lean_is_exclusive(x_30); +if (x_52 == 0) { -return x_29; +return x_30; } else { -lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_52 = lean_ctor_get(x_29, 0); -x_53 = lean_ctor_get(x_29, 1); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_30, 0); +x_54 = lean_ctor_get(x_30, 1); +lean_inc(x_54); lean_inc(x_53); -lean_inc(x_52); -lean_dec(x_29); -x_54 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_54, 0, x_52); -lean_ctor_set(x_54, 1, x_53); -return x_54; +lean_dec(x_30); +x_55 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } } else { -uint8_t x_55; -lean_dec(x_22); +uint8_t x_56; +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); -x_55 = !lean_is_exclusive(x_24); -if (x_55 == 0) +lean_dec(x_1); +x_56 = !lean_is_exclusive(x_13); +if (x_56 == 0) { -return x_24; +return x_13; } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_56 = lean_ctor_get(x_24, 0); -x_57 = lean_ctor_get(x_24, 1); +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_13, 0); +x_58 = lean_ctor_get(x_13, 1); +lean_inc(x_58); lean_inc(x_57); -lean_inc(x_56); -lean_dec(x_24); -x_58 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_58, 0, x_56); -lean_ctor_set(x_58, 1, x_57); -return x_58; +lean_dec(x_13); +x_59 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_59, 0, x_57); +lean_ctor_set(x_59, 1, x_58); +return x_59; } } } @@ -1516,179 +1520,198 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { -lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; -x_10 = lean_box(0); -x_11 = lean_array_size(x_2); -x_12 = 0; -x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6; +lean_object* x_11; size_t x_12; size_t x_13; lean_object* x_14; lean_object* x_15; +x_11 = lean_box(0); +x_12 = lean_array_size(x_3); +x_13 = 0; +x_14 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6; +lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_5); -x_14 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1(x_2, x_10, x_2, x_11, x_12, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_14) == 0) +x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__1(x_3, x_11, x_3, x_12, x_13, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_15, 1); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); -x_17 = lean_ctor_get(x_14, 1); +x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_ctor_get(x_15, 0); +x_18 = lean_ctor_get(x_15, 1); lean_inc(x_18); lean_dec(x_15); x_19 = lean_ctor_get(x_16, 0); lean_inc(x_19); lean_dec(x_16); +x_20 = lean_ctor_get(x_17, 0); +lean_inc(x_20); +lean_dec(x_17); +lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_5); -x_20 = l_Lean_MVarId_tryClearMany(x_1, x_18, x_5, x_6, x_7, x_8, x_17); -lean_dec(x_18); -if (lean_obj_tag(x_20) == 0) +x_21 = l_Lean_MVarId_tryClearMany(x_1, x_19, x_6, x_7, x_8, x_9, x_18); +lean_dec(x_19); +if (lean_obj_tag(x_21) == 0) { -uint8_t x_21; -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) +uint8_t x_22; +x_22 = !lean_is_exclusive(x_21); +if (x_22 == 0) { -lean_object* x_22; lean_object* x_23; uint8_t x_24; -x_22 = lean_ctor_get(x_20, 0); -x_23 = lean_ctor_get(x_20, 1); -x_24 = l_Array_isEmpty___rarg(x_19); -if (x_24 == 0) +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_21, 0); +x_24 = lean_ctor_get(x_21, 1); +x_25 = l_Array_isEmpty___rarg(x_20); +if (x_25 == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_free_object(x_20); -x_25 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__1; -x_26 = lean_box(0); -x_27 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_19, x_22, x_25, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_23); -return x_27; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_free_object(x_21); +x_26 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__1; +x_27 = lean_box(0); +x_28 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_23, x_2, x_20, x_26, x_27, x_4, x_5, x_6, x_7, x_8, x_9, x_24); +return x_28; } else { -lean_object* x_28; -lean_dec(x_19); +lean_object* x_29; +lean_dec(x_20); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_28 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_28, 0, x_22); -lean_ctor_set(x_20, 0, x_28); -return x_20; +lean_dec(x_4); +lean_dec(x_2); +x_29 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_21, 0, x_29); +return x_21; } } else { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = lean_ctor_get(x_20, 0); -x_30 = lean_ctor_get(x_20, 1); +lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_30 = lean_ctor_get(x_21, 0); +x_31 = lean_ctor_get(x_21, 1); +lean_inc(x_31); lean_inc(x_30); -lean_inc(x_29); +lean_dec(x_21); +x_32 = l_Array_isEmpty___rarg(x_20); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__1; +x_34 = lean_box(0); +x_35 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_30, x_2, x_20, x_33, x_34, x_4, x_5, x_6, x_7, x_8, x_9, x_31); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_dec(x_20); -x_31 = l_Array_isEmpty___rarg(x_19); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__1; -x_33 = lean_box(0); -x_34 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_19, x_29, x_32, x_33, x_3, x_4, x_5, x_6, x_7, x_8, x_30); -return x_34; -} -else -{ -lean_object* x_35; lean_object* x_36; -lean_dec(x_19); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_35 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_35, 0, x_29); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_30); -return x_36; +lean_dec(x_4); +lean_dec(x_2); +x_36 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_36, 0, x_30); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_31); +return x_37; } } } else { -uint8_t x_37; -lean_dec(x_19); +uint8_t x_38; +lean_dec(x_20); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -x_37 = !lean_is_exclusive(x_20); -if (x_37 == 0) +lean_dec(x_4); +lean_dec(x_2); +x_38 = !lean_is_exclusive(x_21); +if (x_38 == 0) { -return x_20; +return x_21; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_20, 0); -x_39 = lean_ctor_get(x_20, 1); +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_21, 0); +x_40 = lean_ctor_get(x_21, 1); +lean_inc(x_40); lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_20); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; +lean_dec(x_21); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +return x_41; } } } else { -uint8_t x_41; +uint8_t x_42; +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_41 = !lean_is_exclusive(x_14); -if (x_41 == 0) +x_42 = !lean_is_exclusive(x_15); +if (x_42 == 0) { -return x_14; +return x_15; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_14, 0); -x_43 = lean_ctor_get(x_14, 1); +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_15, 0); +x_44 = lean_ctor_get(x_15, 1); +lean_inc(x_44); lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_14); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; +lean_dec(x_15); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; } } } } +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed), 7, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1; lean_inc(x_1); -x_9 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed), 8, 1); -lean_closure_set(x_9, 0, x_1); -lean_inc(x_1); -x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed), 9, 1); +x_10 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed), 10, 2); lean_closure_set(x_10, 0, x_1); -x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg), 9, 2); +lean_closure_set(x_10, 1, x_9); +x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg), 9, 2); lean_closure_set(x_11, 0, x_9); lean_closure_set(x_11, 1, x_10); -x_12 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__3___rarg(x_1, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_12 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___spec__2___rarg(x_1, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8); return x_12; } } @@ -1791,36 +1814,32 @@ lean_dec(x_1); return x_16; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_9; -x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_3); +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_2); -return x_9; +lean_dec(x_1); +return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_12; -x_12 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_6); +lean_object* x_13; +x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_5); -lean_dec(x_4); -return x_12; +return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { -lean_object* x_10; -x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_4); +lean_object* x_11; +x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_3); -lean_dec(x_2); -return x_10; +return x_11; } } lean_object* initialize_Std_Tactic_BVDecide_Normalize_Bool(uint8_t builtin, lean_object*); @@ -1878,6 +1897,8 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda_ lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__5); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___lambda__3___closed__6); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___elambda__1___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_embeddedConstraintPass___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Rewrite.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Rewrite.c index 495044b7f8..9021bc1184 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Rewrite.c +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Rewrite.c @@ -14,40 +14,30 @@ extern "C" { #endif static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__1; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); extern lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_bvNormalizeExt; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10; extern lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_bvNormalizeSimprocExt; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___closed__1; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__2; size_t lean_uint64_to_usize(uint64_t); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); lean_object* l_Lean_Meta_simpGoal(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__2; -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1; -lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__3; lean_object* l_Lean_Meta_getSimpCongrTheorems___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__7; -lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__3; uint64_t l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(lean_object*); size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__4; -lean_object* l_Lean_MVarId_getNondepPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2; lean_object* lean_st_ref_take(lean_object*, lean_object*); extern lean_object* l_Lean_Meta_sevalSimpExtension; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -59,51 +49,34 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecid lean_object* lean_nat_div(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__6; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2; -lean_object* l_Lean_MessageData_ofFormat(lean_object*); -lean_object* l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_object* lean_st_ref_get(lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_getSEvalSimprocs___rarg(lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5; +lean_object* l_Lean_Meta_getPropHyps(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_mkContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__1; static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__9; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2(lean_object*, lean_object*); -lean_object* l_Lean_MessageData_ofExpr(lean_object*); lean_object* l_Lean_Meta_SimpExtension_getTheorems(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); lean_object* lean_nat_mul(lean_object*, lean_object*); lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(lean_object*); -lean_object* l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__4; size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__8; -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; size_t lean_usize_add(size_t, size_t); -static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3; lean_object* lean_array_uget(lean_object*, size_t); -lean_object* l_Lean_Expr_fvar___override(lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(lean_object*, lean_object*); @@ -116,140 +89,6 @@ static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesP size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_isEmpty___rarg(lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___lambda__1(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; lean_object* x_11; -x_10 = lean_box(x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_9); -return x_11; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Meta", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Tactic", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("bv", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1; -x_2 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2; -x_3 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("", 0, 0); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" was already rewritten\? ", 24, 24); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("false", 5, 5); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("true", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -257,518 +96,62 @@ uint8_t x_12; x_12 = lean_usize_dec_eq(x_2, x_3); if (x_12 == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_20; lean_object* x_21; lean_object* x_24; uint8_t x_25; +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; uint64_t x_24; uint64_t x_25; size_t x_26; size_t x_27; size_t x_28; size_t x_29; size_t x_30; lean_object* x_31; uint8_t x_32; x_13 = lean_array_uget(x_1, x_2); -x_24 = lean_st_ref_get(x_6, x_11); -x_25 = !lean_is_exclusive(x_24); -if (x_25 == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; -x_26 = lean_ctor_get(x_24, 0); -x_27 = lean_ctor_get(x_24, 1); -x_28 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4; -x_29 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_28, x_5, x_6, x_7, x_8, x_9, x_10, x_27); -x_30 = !lean_is_exclusive(x_26); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = lean_ctor_get(x_26, 1); -x_32 = lean_ctor_get(x_26, 0); -lean_dec(x_32); -x_33 = !lean_is_exclusive(x_29); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; uint64_t x_37; uint64_t x_38; uint64_t x_39; uint64_t x_40; uint64_t x_41; uint64_t x_42; uint64_t x_43; size_t x_44; size_t x_45; size_t x_46; size_t x_47; size_t x_48; lean_object* x_49; uint8_t x_50; uint8_t x_51; -x_34 = lean_ctor_get(x_29, 0); -x_35 = lean_ctor_get(x_29, 1); -x_36 = lean_array_get_size(x_31); -x_37 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); -x_38 = 32; -x_39 = lean_uint64_shift_right(x_37, x_38); -x_40 = lean_uint64_xor(x_37, x_39); -x_41 = 16; -x_42 = lean_uint64_shift_right(x_40, x_41); -x_43 = lean_uint64_xor(x_40, x_42); -x_44 = lean_uint64_to_usize(x_43); -x_45 = lean_usize_of_nat(x_36); -lean_dec(x_36); -x_46 = 1; -x_47 = lean_usize_sub(x_45, x_46); -x_48 = lean_usize_land(x_44, x_47); -x_49 = lean_array_uget(x_31, x_48); +x_14 = lean_st_ref_get(x_6, x_11); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_array_get_size(x_17); +x_19 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); +x_20 = 32; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = 16; +x_24 = lean_uint64_shift_right(x_22, x_23); +x_25 = lean_uint64_xor(x_22, x_24); +x_26 = lean_uint64_to_usize(x_25); +x_27 = lean_usize_of_nat(x_18); +lean_dec(x_18); +x_28 = 1; +x_29 = lean_usize_sub(x_27, x_28); +x_30 = lean_usize_land(x_26, x_29); +x_31 = lean_array_uget(x_17, x_30); +lean_dec(x_17); +x_32 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_31); lean_dec(x_31); -x_50 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_49); -lean_dec(x_49); -x_51 = lean_unbox(x_34); -lean_dec(x_34); -if (x_51 == 0) +if (x_32 == 0) { -lean_free_object(x_29); -lean_free_object(x_26); -lean_free_object(x_24); -if (x_50 == 0) -{ -uint8_t x_52; -x_52 = 1; -x_20 = x_52; -x_21 = x_35; -goto block_23; -} -else -{ -uint8_t x_53; -x_53 = 0; -x_20 = x_53; -x_21 = x_35; -goto block_23; -} -} -else -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -lean_inc(x_13); -x_54 = l_Lean_Expr_fvar___override(x_13); -x_55 = l_Lean_MessageData_ofExpr(x_54); -x_56 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6; -lean_ctor_set_tag(x_29, 7); -lean_ctor_set(x_29, 1, x_55); -lean_ctor_set(x_29, 0, x_56); -x_57 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8; -lean_ctor_set_tag(x_26, 7); -lean_ctor_set(x_26, 1, x_57); -lean_ctor_set(x_26, 0, x_29); -if (x_50 == 0) -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_58 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_58); -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_24); -lean_ctor_set(x_59, 1, x_56); -x_60 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_59, x_5, x_6, x_7, x_8, x_9, x_10, x_35); -x_61 = lean_ctor_get(x_60, 1); -lean_inc(x_61); -lean_dec(x_60); -x_62 = 1; -x_20 = x_62; -x_21 = x_61; -goto block_23; -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_63 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_63); -x_64 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_64, 0, x_24); -lean_ctor_set(x_64, 1, x_56); -x_65 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_35); -x_66 = lean_ctor_get(x_65, 1); -lean_inc(x_66); -lean_dec(x_65); -x_67 = 0; -x_20 = x_67; -x_21 = x_66; -goto block_23; -} -} -} -else -{ -lean_object* x_68; lean_object* x_69; lean_object* x_70; uint64_t x_71; uint64_t x_72; uint64_t x_73; uint64_t x_74; uint64_t x_75; uint64_t x_76; uint64_t x_77; size_t x_78; size_t x_79; size_t x_80; size_t x_81; size_t x_82; lean_object* x_83; uint8_t x_84; uint8_t x_85; -x_68 = lean_ctor_get(x_29, 0); -x_69 = lean_ctor_get(x_29, 1); -lean_inc(x_69); -lean_inc(x_68); -lean_dec(x_29); -x_70 = lean_array_get_size(x_31); -x_71 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); -x_72 = 32; -x_73 = lean_uint64_shift_right(x_71, x_72); -x_74 = lean_uint64_xor(x_71, x_73); -x_75 = 16; -x_76 = lean_uint64_shift_right(x_74, x_75); -x_77 = lean_uint64_xor(x_74, x_76); -x_78 = lean_uint64_to_usize(x_77); -x_79 = lean_usize_of_nat(x_70); -lean_dec(x_70); -x_80 = 1; -x_81 = lean_usize_sub(x_79, x_80); -x_82 = lean_usize_land(x_78, x_81); -x_83 = lean_array_uget(x_31, x_82); -lean_dec(x_31); -x_84 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_83); -lean_dec(x_83); -x_85 = lean_unbox(x_68); -lean_dec(x_68); -if (x_85 == 0) -{ -lean_free_object(x_26); -lean_free_object(x_24); -if (x_84 == 0) -{ -uint8_t x_86; -x_86 = 1; -x_20 = x_86; -x_21 = x_69; -goto block_23; -} -else -{ -uint8_t x_87; -x_87 = 0; -x_20 = x_87; -x_21 = x_69; -goto block_23; -} -} -else -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; -lean_inc(x_13); -x_88 = l_Lean_Expr_fvar___override(x_13); -x_89 = l_Lean_MessageData_ofExpr(x_88); -x_90 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6; -x_91 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_91, 0, x_90); -lean_ctor_set(x_91, 1, x_89); -x_92 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8; -lean_ctor_set_tag(x_26, 7); -lean_ctor_set(x_26, 1, x_92); -lean_ctor_set(x_26, 0, x_91); -if (x_84 == 0) -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; uint8_t x_97; -x_93 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_93); -x_94 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_94, 0, x_24); -lean_ctor_set(x_94, 1, x_90); -x_95 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_94, x_5, x_6, x_7, x_8, x_9, x_10, x_69); -x_96 = lean_ctor_get(x_95, 1); -lean_inc(x_96); -lean_dec(x_95); -x_97 = 1; -x_20 = x_97; -x_21 = x_96; -goto block_23; -} -else -{ -lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; uint8_t x_102; -x_98 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_98); -x_99 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_99, 0, x_24); -lean_ctor_set(x_99, 1, x_90); -x_100 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_99, x_5, x_6, x_7, x_8, x_9, x_10, x_69); -x_101 = lean_ctor_get(x_100, 1); -lean_inc(x_101); -lean_dec(x_100); -x_102 = 0; -x_20 = x_102; -x_21 = x_101; -goto block_23; -} -} -} -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; uint64_t x_108; uint64_t x_109; uint64_t x_110; uint64_t x_111; uint64_t x_112; uint64_t x_113; uint64_t x_114; size_t x_115; size_t x_116; size_t x_117; size_t x_118; size_t x_119; lean_object* x_120; uint8_t x_121; uint8_t x_122; -x_103 = lean_ctor_get(x_26, 1); -lean_inc(x_103); -lean_dec(x_26); -x_104 = lean_ctor_get(x_29, 0); -lean_inc(x_104); -x_105 = lean_ctor_get(x_29, 1); -lean_inc(x_105); -if (lean_is_exclusive(x_29)) { - lean_ctor_release(x_29, 0); - lean_ctor_release(x_29, 1); - x_106 = x_29; -} else { - lean_dec_ref(x_29); - x_106 = lean_box(0); -} -x_107 = lean_array_get_size(x_103); -x_108 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); -x_109 = 32; -x_110 = lean_uint64_shift_right(x_108, x_109); -x_111 = lean_uint64_xor(x_108, x_110); -x_112 = 16; -x_113 = lean_uint64_shift_right(x_111, x_112); -x_114 = lean_uint64_xor(x_111, x_113); -x_115 = lean_uint64_to_usize(x_114); -x_116 = lean_usize_of_nat(x_107); -lean_dec(x_107); -x_117 = 1; -x_118 = lean_usize_sub(x_116, x_117); -x_119 = lean_usize_land(x_115, x_118); -x_120 = lean_array_uget(x_103, x_119); -lean_dec(x_103); -x_121 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_120); -lean_dec(x_120); -x_122 = lean_unbox(x_104); -lean_dec(x_104); -if (x_122 == 0) -{ -lean_dec(x_106); -lean_free_object(x_24); -if (x_121 == 0) -{ -uint8_t x_123; -x_123 = 1; -x_20 = x_123; -x_21 = x_105; -goto block_23; -} -else -{ -uint8_t x_124; -x_124 = 0; -x_20 = x_124; -x_21 = x_105; -goto block_23; -} -} -else -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -lean_inc(x_13); -x_125 = l_Lean_Expr_fvar___override(x_13); -x_126 = l_Lean_MessageData_ofExpr(x_125); -x_127 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6; -if (lean_is_scalar(x_106)) { - x_128 = lean_alloc_ctor(7, 2, 0); -} else { - x_128 = x_106; - lean_ctor_set_tag(x_128, 7); -} -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_126); -x_129 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8; -x_130 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_130, 0, x_128); -lean_ctor_set(x_130, 1, x_129); -if (x_121 == 0) -{ -lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; uint8_t x_135; -x_131 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_131); -lean_ctor_set(x_24, 0, x_130); -x_132 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_132, 0, x_24); -lean_ctor_set(x_132, 1, x_127); -x_133 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_132, x_5, x_6, x_7, x_8, x_9, x_10, x_105); -x_134 = lean_ctor_get(x_133, 1); -lean_inc(x_134); -lean_dec(x_133); -x_135 = 1; -x_20 = x_135; -x_21 = x_134; -goto block_23; -} -else -{ -lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; uint8_t x_140; -x_136 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14; -lean_ctor_set_tag(x_24, 7); -lean_ctor_set(x_24, 1, x_136); -lean_ctor_set(x_24, 0, x_130); -x_137 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_137, 0, x_24); -lean_ctor_set(x_137, 1, x_127); -x_138 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_28, x_137, x_5, x_6, x_7, x_8, x_9, x_10, x_105); -x_139 = lean_ctor_get(x_138, 1); -lean_inc(x_139); -lean_dec(x_138); -x_140 = 0; -x_20 = x_140; -x_21 = x_139; -goto block_23; -} -} -} -} -else -{ -lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; uint64_t x_151; uint64_t x_152; uint64_t x_153; uint64_t x_154; uint64_t x_155; uint64_t x_156; uint64_t x_157; size_t x_158; size_t x_159; size_t x_160; size_t x_161; size_t x_162; lean_object* x_163; uint8_t x_164; uint8_t x_165; -x_141 = lean_ctor_get(x_24, 0); -x_142 = lean_ctor_get(x_24, 1); -lean_inc(x_142); -lean_inc(x_141); -lean_dec(x_24); -x_143 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4; -x_144 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_143, x_5, x_6, x_7, x_8, x_9, x_10, x_142); -x_145 = lean_ctor_get(x_141, 1); -lean_inc(x_145); -if (lean_is_exclusive(x_141)) { - lean_ctor_release(x_141, 0); - lean_ctor_release(x_141, 1); - x_146 = x_141; -} else { - lean_dec_ref(x_141); - x_146 = lean_box(0); -} -x_147 = lean_ctor_get(x_144, 0); -lean_inc(x_147); -x_148 = lean_ctor_get(x_144, 1); -lean_inc(x_148); -if (lean_is_exclusive(x_144)) { - lean_ctor_release(x_144, 0); - lean_ctor_release(x_144, 1); - x_149 = x_144; -} else { - lean_dec_ref(x_144); - x_149 = lean_box(0); -} -x_150 = lean_array_get_size(x_145); -x_151 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); -x_152 = 32; -x_153 = lean_uint64_shift_right(x_151, x_152); -x_154 = lean_uint64_xor(x_151, x_153); -x_155 = 16; -x_156 = lean_uint64_shift_right(x_154, x_155); -x_157 = lean_uint64_xor(x_154, x_156); -x_158 = lean_uint64_to_usize(x_157); -x_159 = lean_usize_of_nat(x_150); -lean_dec(x_150); -x_160 = 1; -x_161 = lean_usize_sub(x_159, x_160); -x_162 = lean_usize_land(x_158, x_161); -x_163 = lean_array_uget(x_145, x_162); -lean_dec(x_145); -x_164 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_163); -lean_dec(x_163); -x_165 = lean_unbox(x_147); -lean_dec(x_147); -if (x_165 == 0) -{ -lean_dec(x_149); -lean_dec(x_146); -if (x_164 == 0) -{ -uint8_t x_166; -x_166 = 1; -x_20 = x_166; -x_21 = x_148; -goto block_23; -} -else -{ -uint8_t x_167; -x_167 = 0; -x_20 = x_167; -x_21 = x_148; -goto block_23; -} -} -else -{ -lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; -lean_inc(x_13); -x_168 = l_Lean_Expr_fvar___override(x_13); -x_169 = l_Lean_MessageData_ofExpr(x_168); -x_170 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6; -if (lean_is_scalar(x_149)) { - x_171 = lean_alloc_ctor(7, 2, 0); -} else { - x_171 = x_149; - lean_ctor_set_tag(x_171, 7); -} -lean_ctor_set(x_171, 0, x_170); -lean_ctor_set(x_171, 1, x_169); -x_172 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8; -if (lean_is_scalar(x_146)) { - x_173 = lean_alloc_ctor(7, 2, 0); -} else { - x_173 = x_146; - lean_ctor_set_tag(x_173, 7); -} -lean_ctor_set(x_173, 0, x_171); -lean_ctor_set(x_173, 1, x_172); -if (x_164 == 0) -{ -lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; uint8_t x_179; -x_174 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11; -x_175 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_175, 0, x_173); -lean_ctor_set(x_175, 1, x_174); -x_176 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_176, 0, x_175); -lean_ctor_set(x_176, 1, x_170); -x_177 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_143, x_176, x_5, x_6, x_7, x_8, x_9, x_10, x_148); -x_178 = lean_ctor_get(x_177, 1); -lean_inc(x_178); -lean_dec(x_177); -x_179 = 1; -x_20 = x_179; -x_21 = x_178; -goto block_23; -} -else -{ -lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; uint8_t x_185; -x_180 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14; -x_181 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_181, 0, x_173); -lean_ctor_set(x_181, 1, x_180); -x_182 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_182, 0, x_181); -lean_ctor_set(x_182, 1, x_170); -x_183 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_143, x_182, x_5, x_6, x_7, x_8, x_9, x_10, x_148); -x_184 = lean_ctor_get(x_183, 1); -lean_inc(x_184); -lean_dec(x_183); -x_185 = 0; -x_20 = x_185; -x_21 = x_184; -goto block_23; -} -} -} -block_19: -{ -size_t x_16; size_t x_17; -x_16 = 1; -x_17 = lean_usize_add(x_2, x_16); -x_2 = x_17; -x_4 = x_14; -x_11 = x_15; +lean_object* x_33; size_t x_34; +x_33 = lean_array_push(x_4, x_13); +x_34 = lean_usize_add(x_2, x_28); +x_2 = x_34; +x_4 = x_33; +x_11 = x_16; goto _start; } -block_23: -{ -if (x_20 == 0) +else { +size_t x_36; lean_dec(x_13); -x_14 = x_4; -x_15 = x_21; -goto block_19; -} -else -{ -lean_object* x_22; -x_22 = lean_array_push(x_4, x_13); -x_14 = x_22; -x_15 = x_21; -goto block_19; -} +x_36 = lean_usize_add(x_2, x_28); +x_2 = x_36; +x_11 = x_16; +goto _start; } } else { -lean_object* x_186; -x_186 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_186, 0, x_4); -lean_ctor_set(x_186, 1, x_11); -return x_186; +lean_object* x_38; +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_4); +lean_ctor_set(x_38, 1, x_11); +return x_38; } } } @@ -893,12 +276,12 @@ x_2 = lean_alloc_closure((void*)(l_Lean_MVarId_withContext___at_Lean_Elab_Tactic return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_9; -x_9 = l_Lean_MVarId_getNondepPropHyps(x_1, x_4, x_5, x_6, x_7, x_8); -return x_9; +lean_object* x_8; +x_8 = l_Lean_Meta_getPropHyps(x_3, x_4, x_5, x_6, x_7); +return x_8; } } static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___closed__1() { @@ -958,6 +341,14 @@ static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewrite _start: { lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2() { +_start: +{ +lean_object* x_1; x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___boxed), 8, 0); return x_1; } @@ -966,10 +357,8 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteR _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -lean_inc(x_1); -x_9 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_9, 0, x_1); -x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1; +x_10 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2; x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); lean_closure_set(x_11, 0, x_9); lean_closure_set(x_11, 1, x_10); @@ -977,23 +366,6 @@ x_12 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normali return x_12; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -uint8_t x_10; lean_object* x_11; -x_10 = lean_unbox(x_1); -lean_dec(x_1); -x_11 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___lambda__1(x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -1013,14 +385,14 @@ lean_dec(x_1); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_9; -x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_3); +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_2); -return x_9; +lean_dec(x_1); +return x_8; } } LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { @@ -1038,155 +410,124 @@ lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; -x_10 = lean_st_ref_take(x_4, x_9); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = !lean_is_exclusive(x_11); -if (x_13 == 0) +uint8_t x_12; +x_12 = lean_usize_dec_eq(x_2, x_3); +if (x_12 == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; size_t x_28; lean_object* x_29; uint8_t x_30; -x_14 = lean_ctor_get(x_11, 0); -x_15 = lean_ctor_get(x_11, 1); -x_16 = lean_array_get_size(x_15); -x_17 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); -x_18 = 32; -x_19 = lean_uint64_shift_right(x_17, x_18); -x_20 = lean_uint64_xor(x_17, x_19); -x_21 = 16; -x_22 = lean_uint64_shift_right(x_20, x_21); -x_23 = lean_uint64_xor(x_20, x_22); -x_24 = lean_uint64_to_usize(x_23); -x_25 = lean_usize_of_nat(x_16); -lean_dec(x_16); -x_26 = 1; -x_27 = lean_usize_sub(x_25, x_26); -x_28 = lean_usize_land(x_24, x_27); -x_29 = lean_array_uget(x_15, x_28); -x_30 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_29); -if (x_30 == 0) -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_31 = lean_unsigned_to_nat(1u); -x_32 = lean_nat_add(x_14, x_31); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +lean_dec(x_4); +x_13 = lean_array_uget(x_1, x_2); +x_14 = lean_st_ref_take(x_6, x_11); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); lean_dec(x_14); -x_33 = lean_box(0); -x_34 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_34, 0, x_1); -lean_ctor_set(x_34, 1, x_33); -lean_ctor_set(x_34, 2, x_29); -x_35 = lean_array_uset(x_15, x_28, x_34); -x_36 = lean_unsigned_to_nat(4u); -x_37 = lean_nat_mul(x_32, x_36); -x_38 = lean_unsigned_to_nat(3u); -x_39 = lean_nat_div(x_37, x_38); -lean_dec(x_37); -x_40 = lean_array_get_size(x_35); -x_41 = lean_nat_dec_le(x_39, x_40); -lean_dec(x_40); -lean_dec(x_39); -if (x_41 == 0) +x_17 = !lean_is_exclusive(x_15); +if (x_17 == 0) { -lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_42 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_35); -lean_ctor_set(x_11, 1, x_42); -lean_ctor_set(x_11, 0, x_32); -x_43 = lean_st_ref_set(x_4, x_11, x_12); -x_44 = !lean_is_exclusive(x_43); -if (x_44 == 0) +lean_object* x_18; lean_object* x_19; lean_object* x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; uint64_t x_24; uint64_t x_25; uint64_t x_26; uint64_t x_27; size_t x_28; size_t x_29; size_t x_30; size_t x_31; size_t x_32; lean_object* x_33; uint8_t x_34; +x_18 = lean_ctor_get(x_15, 0); +x_19 = lean_ctor_get(x_15, 1); +x_20 = lean_array_get_size(x_19); +x_21 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); +x_22 = 32; +x_23 = lean_uint64_shift_right(x_21, x_22); +x_24 = lean_uint64_xor(x_21, x_23); +x_25 = 16; +x_26 = lean_uint64_shift_right(x_24, x_25); +x_27 = lean_uint64_xor(x_24, x_26); +x_28 = lean_uint64_to_usize(x_27); +x_29 = lean_usize_of_nat(x_20); +lean_dec(x_20); +x_30 = 1; +x_31 = lean_usize_sub(x_29, x_30); +x_32 = lean_usize_land(x_28, x_31); +x_33 = lean_array_uget(x_19, x_32); +x_34 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_33); +if (x_34 == 0) { -lean_object* x_45; -x_45 = lean_ctor_get(x_43, 0); -lean_dec(x_45); -lean_ctor_set(x_43, 0, x_33); -return x_43; -} -else -{ -lean_object* x_46; lean_object* x_47; -x_46 = lean_ctor_get(x_43, 1); -lean_inc(x_46); +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_35 = lean_unsigned_to_nat(1u); +x_36 = lean_nat_add(x_18, x_35); +lean_dec(x_18); +x_37 = lean_box(0); +x_38 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_38, 0, x_13); +lean_ctor_set(x_38, 1, x_37); +lean_ctor_set(x_38, 2, x_33); +x_39 = lean_array_uset(x_19, x_32, x_38); +x_40 = lean_unsigned_to_nat(4u); +x_41 = lean_nat_mul(x_36, x_40); +x_42 = lean_unsigned_to_nat(3u); +x_43 = lean_nat_div(x_41, x_42); +lean_dec(x_41); +x_44 = lean_array_get_size(x_39); +x_45 = lean_nat_dec_le(x_43, x_44); +lean_dec(x_44); lean_dec(x_43); -x_47 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_47, 0, x_33); -lean_ctor_set(x_47, 1, x_46); -return x_47; +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; size_t x_49; +x_46 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_39); +lean_ctor_set(x_15, 1, x_46); +lean_ctor_set(x_15, 0, x_36); +x_47 = lean_st_ref_set(x_6, x_15, x_16); +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +x_49 = lean_usize_add(x_2, x_30); +x_2 = x_49; +x_4 = x_37; +x_11 = x_48; +goto _start; +} +else +{ +lean_object* x_51; lean_object* x_52; size_t x_53; +lean_ctor_set(x_15, 1, x_39); +lean_ctor_set(x_15, 0, x_36); +x_51 = lean_st_ref_set(x_6, x_15, x_16); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_usize_add(x_2, x_30); +x_2 = x_53; +x_4 = x_37; +x_11 = x_52; +goto _start; } } else { -lean_object* x_48; uint8_t x_49; -lean_ctor_set(x_11, 1, x_35); -lean_ctor_set(x_11, 0, x_32); -x_48 = lean_st_ref_set(x_4, x_11, x_12); -x_49 = !lean_is_exclusive(x_48); -if (x_49 == 0) -{ -lean_object* x_50; -x_50 = lean_ctor_get(x_48, 0); -lean_dec(x_50); -lean_ctor_set(x_48, 0, x_33); -return x_48; -} -else -{ -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_48, 1); -lean_inc(x_51); -lean_dec(x_48); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_33); -lean_ctor_set(x_52, 1, x_51); -return x_52; -} -} -} -else -{ -lean_object* x_53; uint8_t x_54; -lean_dec(x_29); -lean_dec(x_1); -x_53 = lean_st_ref_set(x_4, x_11, x_12); -x_54 = !lean_is_exclusive(x_53); -if (x_54 == 0) -{ -lean_object* x_55; lean_object* x_56; -x_55 = lean_ctor_get(x_53, 0); +lean_object* x_55; lean_object* x_56; size_t x_57; lean_object* x_58; +lean_dec(x_33); +lean_dec(x_13); +x_55 = lean_st_ref_set(x_6, x_15, x_16); +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); lean_dec(x_55); -x_56 = lean_box(0); -lean_ctor_set(x_53, 0, x_56); -return x_53; -} -else -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_53, 1); -lean_inc(x_57); -lean_dec(x_53); +x_57 = lean_usize_add(x_2, x_30); x_58 = lean_box(0); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -return x_59; -} +x_2 = x_57; +x_4 = x_58; +x_11 = x_56; +goto _start; } } else { lean_object* x_60; lean_object* x_61; lean_object* x_62; uint64_t x_63; uint64_t x_64; uint64_t x_65; uint64_t x_66; uint64_t x_67; uint64_t x_68; uint64_t x_69; size_t x_70; size_t x_71; size_t x_72; size_t x_73; size_t x_74; lean_object* x_75; uint8_t x_76; -x_60 = lean_ctor_get(x_11, 0); -x_61 = lean_ctor_get(x_11, 1); +x_60 = lean_ctor_get(x_15, 0); +x_61 = lean_ctor_get(x_15, 1); lean_inc(x_61); lean_inc(x_60); -lean_dec(x_11); +lean_dec(x_15); x_62 = lean_array_get_size(x_61); -x_63 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_1); +x_63 = l___private_Lean_Expr_0__Lean_hashFVarId____x40_Lean_Expr___hyg_1730_(x_13); x_64 = 32; x_65 = lean_uint64_shift_right(x_63, x_64); x_66 = lean_uint64_xor(x_63, x_65); @@ -1200,7 +541,7 @@ x_72 = 1; x_73 = lean_usize_sub(x_71, x_72); x_74 = lean_usize_land(x_70, x_73); x_75 = lean_array_uget(x_61, x_74); -x_76 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_1, x_75); +x_76 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_MVarId_getNondepPropHyps___spec__1(x_13, x_75); if (x_76 == 0) { lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; uint8_t x_87; @@ -1209,7 +550,7 @@ x_78 = lean_nat_add(x_60, x_77); lean_dec(x_60); x_79 = lean_box(0); x_80 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_80, 0, x_1); +lean_ctor_set(x_80, 0, x_13); lean_ctor_set(x_80, 1, x_79); lean_ctor_set(x_80, 2, x_75); x_81 = lean_array_uset(x_61, x_74, x_80); @@ -1224,247 +565,66 @@ lean_dec(x_86); lean_dec(x_85); if (x_87 == 0) { -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; size_t x_92; x_88 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_MVarId_getNondepPropHyps___spec__7(x_81); x_89 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_89, 0, x_78); lean_ctor_set(x_89, 1, x_88); -x_90 = lean_st_ref_set(x_4, x_89, x_12); +x_90 = lean_st_ref_set(x_6, x_89, x_16); x_91 = lean_ctor_get(x_90, 1); lean_inc(x_91); -if (lean_is_exclusive(x_90)) { - lean_ctor_release(x_90, 0); - lean_ctor_release(x_90, 1); - x_92 = x_90; -} else { - lean_dec_ref(x_90); - x_92 = lean_box(0); -} -if (lean_is_scalar(x_92)) { - x_93 = lean_alloc_ctor(0, 2, 0); -} else { - x_93 = x_92; -} -lean_ctor_set(x_93, 0, x_79); -lean_ctor_set(x_93, 1, x_91); -return x_93; +lean_dec(x_90); +x_92 = lean_usize_add(x_2, x_72); +x_2 = x_92; +x_4 = x_79; +x_11 = x_91; +goto _start; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +lean_object* x_94; lean_object* x_95; lean_object* x_96; size_t x_97; x_94 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_94, 0, x_78); lean_ctor_set(x_94, 1, x_81); -x_95 = lean_st_ref_set(x_4, x_94, x_12); +x_95 = lean_st_ref_set(x_6, x_94, x_16); x_96 = lean_ctor_get(x_95, 1); lean_inc(x_96); -if (lean_is_exclusive(x_95)) { - lean_ctor_release(x_95, 0); - lean_ctor_release(x_95, 1); - x_97 = x_95; -} else { - lean_dec_ref(x_95); - x_97 = lean_box(0); -} -if (lean_is_scalar(x_97)) { - x_98 = lean_alloc_ctor(0, 2, 0); -} else { - x_98 = x_97; -} -lean_ctor_set(x_98, 0, x_79); -lean_ctor_set(x_98, 1, x_96); -return x_98; +lean_dec(x_95); +x_97 = lean_usize_add(x_2, x_72); +x_2 = x_97; +x_4 = x_79; +x_11 = x_96; +goto _start; } } else { -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_object* x_99; lean_object* x_100; lean_object* x_101; size_t x_102; lean_object* x_103; lean_dec(x_75); -lean_dec(x_1); +lean_dec(x_13); x_99 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_99, 0, x_60); lean_ctor_set(x_99, 1, x_61); -x_100 = lean_st_ref_set(x_4, x_99, x_12); +x_100 = lean_st_ref_set(x_6, x_99, x_16); x_101 = lean_ctor_get(x_100, 1); lean_inc(x_101); -if (lean_is_exclusive(x_100)) { - lean_ctor_release(x_100, 0); - lean_ctor_release(x_100, 1); - x_102 = x_100; -} else { - lean_dec_ref(x_100); - x_102 = lean_box(0); -} +lean_dec(x_100); +x_102 = lean_usize_add(x_2, x_72); x_103 = lean_box(0); -if (lean_is_scalar(x_102)) { - x_104 = lean_alloc_ctor(0, 2, 0); -} else { - x_104 = x_102; -} -lean_ctor_set(x_104, 0, x_103); -lean_ctor_set(x_104, 1, x_101); -return x_104; -} -} -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Adding ", 7, 7); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" to the rewritten set", 21, 21); -return x_1; -} -} -static lean_object* _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -uint8_t x_12; -x_12 = lean_usize_dec_eq(x_2, x_3); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; -lean_dec(x_4); -x_13 = lean_array_uget(x_1, x_2); -x_14 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4; -x_15 = l_Lean_isTracingEnabledFor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__1(x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_unbox(x_16); -lean_dec(x_16); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; -x_18 = lean_ctor_get(x_15, 1); -lean_inc(x_18); -lean_dec(x_15); -x_19 = lean_box(0); -x_20 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(x_13, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_dec(x_20); -x_23 = 1; -x_24 = lean_usize_add(x_2, x_23); -x_2 = x_24; -x_4 = x_21; -x_11 = x_22; -goto _start; -} -else -{ -uint8_t x_26; -x_26 = !lean_is_exclusive(x_15); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; size_t x_40; size_t x_41; -x_27 = lean_ctor_get(x_15, 1); -x_28 = lean_ctor_get(x_15, 0); -lean_dec(x_28); -lean_inc(x_13); -x_29 = l_Lean_Expr_fvar___override(x_13); -x_30 = l_Lean_MessageData_ofExpr(x_29); -x_31 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2; -lean_ctor_set_tag(x_15, 7); -lean_ctor_set(x_15, 1, x_30); -lean_ctor_set(x_15, 0, x_31); -x_32 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4; -x_33 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_33, 0, x_15); -lean_ctor_set(x_33, 1, x_32); -x_34 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_14, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_27); -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_34, 1); -lean_inc(x_36); -lean_dec(x_34); -x_37 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(x_13, x_35, x_5, x_6, x_7, x_8, x_9, x_10, x_36); -lean_dec(x_35); -x_38 = lean_ctor_get(x_37, 0); -lean_inc(x_38); -x_39 = lean_ctor_get(x_37, 1); -lean_inc(x_39); -lean_dec(x_37); -x_40 = 1; -x_41 = lean_usize_add(x_2, x_40); -x_2 = x_41; -x_4 = x_38; -x_11 = x_39; -goto _start; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; size_t x_56; size_t x_57; -x_43 = lean_ctor_get(x_15, 1); -lean_inc(x_43); -lean_dec(x_15); -lean_inc(x_13); -x_44 = l_Lean_Expr_fvar___override(x_13); -x_45 = l_Lean_MessageData_ofExpr(x_44); -x_46 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2; -x_47 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_45); -x_48 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4; -x_49 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -x_50 = l_Lean_addTrace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_PreProcessM_checkRewritten___spec__2(x_14, x_49, x_5, x_6, x_7, x_8, x_9, x_10, x_43); -x_51 = lean_ctor_get(x_50, 0); -lean_inc(x_51); -x_52 = lean_ctor_get(x_50, 1); -lean_inc(x_52); -lean_dec(x_50); -x_53 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(x_13, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_52); -lean_dec(x_51); -x_54 = lean_ctor_get(x_53, 0); -lean_inc(x_54); -x_55 = lean_ctor_get(x_53, 1); -lean_inc(x_55); -lean_dec(x_53); -x_56 = 1; -x_57 = lean_usize_add(x_2, x_56); -x_2 = x_57; -x_4 = x_54; -x_11 = x_55; +x_2 = x_102; +x_4 = x_103; +x_11 = x_101; goto _start; } } } else { -lean_object* x_59; -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_4); -lean_ctor_set(x_59, 1, x_11); -return x_59; +lean_object* x_105; +x_105 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_105, 0, x_4); +lean_ctor_set(x_105, 1, x_11); +return x_105; } } } @@ -1636,6 +796,18 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_ return x_1; } } +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1; +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; +x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { @@ -1799,7 +971,7 @@ uint8_t x_57; x_57 = !lean_is_exclusive(x_52); if (x_57 == 0) { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; x_58 = lean_ctor_get(x_52, 0); x_59 = lean_ctor_get(x_50, 1); lean_inc(x_59); @@ -1807,171 +979,159 @@ lean_dec(x_50); x_60 = lean_ctor_get(x_58, 1); lean_inc(x_60); lean_dec(x_58); +x_61 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; lean_inc(x_60); -x_61 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_61, 0, x_60); -x_62 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_63 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_63, 0, x_61); -lean_closure_set(x_63, 1, x_62); -lean_inc(x_60); -x_64 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_60, x_63, x_2, x_3, x_4, x_5, x_6, x_7, x_59); -if (lean_obj_tag(x_64) == 0) +x_62 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_60, x_61, x_2, x_3, x_4, x_5, x_6, x_7, x_59); +if (lean_obj_tag(x_62) == 0) { -uint8_t x_65; -x_65 = !lean_is_exclusive(x_64); -if (x_65 == 0) +uint8_t x_63; +x_63 = !lean_is_exclusive(x_62); +if (x_63 == 0) { -lean_object* x_66; -x_66 = lean_ctor_get(x_64, 0); -lean_dec(x_66); -lean_ctor_set(x_52, 0, x_60); -lean_ctor_set(x_64, 0, x_52); -return x_64; -} -else -{ -lean_object* x_67; lean_object* x_68; -x_67 = lean_ctor_get(x_64, 1); -lean_inc(x_67); +lean_object* x_64; +x_64 = lean_ctor_get(x_62, 0); lean_dec(x_64); lean_ctor_set(x_52, 0, x_60); -x_68 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_68, 0, x_52); -lean_ctor_set(x_68, 1, x_67); -return x_68; +lean_ctor_set(x_62, 0, x_52); +return x_62; +} +else +{ +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_62, 1); +lean_inc(x_65); +lean_dec(x_62); +lean_ctor_set(x_52, 0, x_60); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_52); +lean_ctor_set(x_66, 1, x_65); +return x_66; } } else { -uint8_t x_69; +uint8_t x_67; lean_dec(x_60); lean_free_object(x_52); -x_69 = !lean_is_exclusive(x_64); -if (x_69 == 0) +x_67 = !lean_is_exclusive(x_62); +if (x_67 == 0) { -return x_64; +return x_62; } else { -lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_70 = lean_ctor_get(x_64, 0); -x_71 = lean_ctor_get(x_64, 1); +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_62, 0); +x_69 = lean_ctor_get(x_62, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_62); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +return x_70; +} +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_71 = lean_ctor_get(x_52, 0); lean_inc(x_71); -lean_inc(x_70); -lean_dec(x_64); -x_72 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_72, 0, x_70); -lean_ctor_set(x_72, 1, x_71); -return x_72; +lean_dec(x_52); +x_72 = lean_ctor_get(x_50, 1); +lean_inc(x_72); +lean_dec(x_50); +x_73 = lean_ctor_get(x_71, 1); +lean_inc(x_73); +lean_dec(x_71); +x_74 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_73); +x_75 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_73, x_74, x_2, x_3, x_4, x_5, x_6, x_7, x_72); +if (lean_obj_tag(x_75) == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_76 = lean_ctor_get(x_75, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_77 = x_75; +} else { + lean_dec_ref(x_75); + x_77 = lean_box(0); } +x_78 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_78, 0, x_73); +if (lean_is_scalar(x_77)) { + x_79 = lean_alloc_ctor(0, 2, 0); +} else { + x_79 = x_77; } +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set(x_79, 1, x_76); +return x_79; } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; -x_73 = lean_ctor_get(x_52, 0); -lean_inc(x_73); -lean_dec(x_52); -x_74 = lean_ctor_get(x_50, 1); -lean_inc(x_74); -lean_dec(x_50); -x_75 = lean_ctor_get(x_73, 1); -lean_inc(x_75); -lean_dec(x_73); -lean_inc(x_75); -x_76 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_76, 0, x_75); -x_77 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_78 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_78, 0, x_76); -lean_closure_set(x_78, 1, x_77); -lean_inc(x_75); -x_79 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_75, x_78, x_2, x_3, x_4, x_5, x_6, x_7, x_74); -if (lean_obj_tag(x_79) == 0) -{ lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; -x_80 = lean_ctor_get(x_79, 1); +lean_dec(x_73); +x_80 = lean_ctor_get(x_75, 0); lean_inc(x_80); -if (lean_is_exclusive(x_79)) { - lean_ctor_release(x_79, 0); - lean_ctor_release(x_79, 1); - x_81 = x_79; +x_81 = lean_ctor_get(x_75, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_82 = x_75; } else { - lean_dec_ref(x_79); - x_81 = lean_box(0); + lean_dec_ref(x_75); + x_82 = lean_box(0); } -x_82 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_82, 0, x_75); -if (lean_is_scalar(x_81)) { - x_83 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_82)) { + x_83 = lean_alloc_ctor(1, 2, 0); } else { - x_83 = x_81; + x_83 = x_82; } -lean_ctor_set(x_83, 0, x_82); -lean_ctor_set(x_83, 1, x_80); +lean_ctor_set(x_83, 0, x_80); +lean_ctor_set(x_83, 1, x_81); return x_83; } -else -{ -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; -lean_dec(x_75); -x_84 = lean_ctor_get(x_79, 0); -lean_inc(x_84); -x_85 = lean_ctor_get(x_79, 1); -lean_inc(x_85); -if (lean_is_exclusive(x_79)) { - lean_ctor_release(x_79, 0); - lean_ctor_release(x_79, 1); - x_86 = x_79; -} else { - lean_dec_ref(x_79); - x_86 = lean_box(0); -} -if (lean_is_scalar(x_86)) { - x_87 = lean_alloc_ctor(1, 2, 0); -} else { - x_87 = x_86; -} -lean_ctor_set(x_87, 0, x_84); -lean_ctor_set(x_87, 1, x_85); -return x_87; -} } } } else { -uint8_t x_88; +uint8_t x_84; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_88 = !lean_is_exclusive(x_50); -if (x_88 == 0) +x_84 = !lean_is_exclusive(x_50); +if (x_84 == 0) { return x_50; } else { -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_50, 0); -x_90 = lean_ctor_get(x_50, 1); -lean_inc(x_90); -lean_inc(x_89); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_50, 0); +x_86 = lean_ctor_get(x_50, 1); +lean_inc(x_86); +lean_inc(x_85); lean_dec(x_50); -x_91 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_91, 0, x_89); -lean_ctor_set(x_91, 1, x_90); -return x_91; +x_87 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +return x_87; } } } else { -lean_object* x_92; +lean_object* x_88; lean_dec(x_44); lean_free_object(x_38); lean_dec(x_40); @@ -1984,192 +1144,186 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_1); -lean_ctor_set(x_42, 0, x_92); +x_88 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_88, 0, x_1); +lean_ctor_set(x_42, 0, x_88); return x_42; } } else { -lean_object* x_93; lean_object* x_94; uint8_t x_95; -x_93 = lean_ctor_get(x_42, 0); -x_94 = lean_ctor_get(x_42, 1); -lean_inc(x_94); -lean_inc(x_93); +lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_89 = lean_ctor_get(x_42, 0); +x_90 = lean_ctor_get(x_42, 1); +lean_inc(x_90); +lean_inc(x_89); lean_dec(x_42); -x_95 = l_Array_isEmpty___rarg(x_93); -if (x_95 == 0) +x_91 = l_Array_isEmpty___rarg(x_89); +if (x_91 == 0) { -lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_ctor_set_tag(x_38, 1); lean_ctor_set(x_38, 1, x_36); lean_ctor_set(x_38, 0, x_24); lean_ctor_set_tag(x_18, 1); lean_ctor_set(x_18, 1, x_38); lean_ctor_set(x_18, 0, x_15); -x_96 = lean_array_mk(x_18); -x_97 = lean_box(0); -x_98 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; +x_92 = lean_array_mk(x_18); +x_93 = lean_box(0); +x_94 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_99 = l_Lean_Meta_simpGoal(x_1, x_40, x_96, x_97, x_33, x_93, x_98, x_4, x_5, x_6, x_7, x_94); -if (lean_obj_tag(x_99) == 0) +x_95 = l_Lean_Meta_simpGoal(x_1, x_40, x_92, x_93, x_33, x_89, x_94, x_4, x_5, x_6, x_7, x_90); +if (lean_obj_tag(x_95) == 0) { -lean_object* x_100; lean_object* x_101; -x_100 = lean_ctor_get(x_99, 0); -lean_inc(x_100); -x_101 = lean_ctor_get(x_100, 0); +lean_object* x_96; lean_object* x_97; +x_96 = lean_ctor_get(x_95, 0); +lean_inc(x_96); +x_97 = lean_ctor_get(x_96, 0); +lean_inc(x_97); +lean_dec(x_96); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_98 = lean_ctor_get(x_95, 1); +lean_inc(x_98); +if (lean_is_exclusive(x_95)) { + lean_ctor_release(x_95, 0); + lean_ctor_release(x_95, 1); + x_99 = x_95; +} else { + lean_dec_ref(x_95); + x_99 = lean_box(0); +} +if (lean_is_scalar(x_99)) { + x_100 = lean_alloc_ctor(0, 2, 0); +} else { + x_100 = x_99; +} +lean_ctor_set(x_100, 0, x_93); +lean_ctor_set(x_100, 1, x_98); +return x_100; +} +else +{ +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; +x_101 = lean_ctor_get(x_97, 0); lean_inc(x_101); -lean_dec(x_100); -if (lean_obj_tag(x_101) == 0) +if (lean_is_exclusive(x_97)) { + lean_ctor_release(x_97, 0); + x_102 = x_97; +} else { + lean_dec_ref(x_97); + x_102 = lean_box(0); +} +x_103 = lean_ctor_get(x_95, 1); +lean_inc(x_103); +lean_dec(x_95); +x_104 = lean_ctor_get(x_101, 1); +lean_inc(x_104); +lean_dec(x_101); +x_105 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_104); +x_106 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_104, x_105, x_2, x_3, x_4, x_5, x_6, x_7, x_103); +if (lean_obj_tag(x_106) == 0) { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_102 = lean_ctor_get(x_99, 1); -lean_inc(x_102); -if (lean_is_exclusive(x_99)) { - lean_ctor_release(x_99, 0); - lean_ctor_release(x_99, 1); - x_103 = x_99; -} else { - lean_dec_ref(x_99); - x_103 = lean_box(0); -} -if (lean_is_scalar(x_103)) { - x_104 = lean_alloc_ctor(0, 2, 0); -} else { - x_104 = x_103; -} -lean_ctor_set(x_104, 0, x_97); -lean_ctor_set(x_104, 1, x_102); -return x_104; -} -else -{ -lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; -x_105 = lean_ctor_get(x_101, 0); -lean_inc(x_105); -if (lean_is_exclusive(x_101)) { - lean_ctor_release(x_101, 0); - x_106 = x_101; -} else { - lean_dec_ref(x_101); - x_106 = lean_box(0); -} -x_107 = lean_ctor_get(x_99, 1); +lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_107 = lean_ctor_get(x_106, 1); lean_inc(x_107); -lean_dec(x_99); -x_108 = lean_ctor_get(x_105, 1); -lean_inc(x_108); -lean_dec(x_105); -lean_inc(x_108); -x_109 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_109, 0, x_108); -x_110 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_111 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_111, 0, x_109); -lean_closure_set(x_111, 1, x_110); -lean_inc(x_108); -x_112 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_108, x_111, x_2, x_3, x_4, x_5, x_6, x_7, x_107); -if (lean_obj_tag(x_112) == 0) -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_113 = lean_ctor_get(x_112, 1); -lean_inc(x_113); -if (lean_is_exclusive(x_112)) { - lean_ctor_release(x_112, 0); - lean_ctor_release(x_112, 1); - x_114 = x_112; +if (lean_is_exclusive(x_106)) { + lean_ctor_release(x_106, 0); + lean_ctor_release(x_106, 1); + x_108 = x_106; } else { - lean_dec_ref(x_112); - x_114 = lean_box(0); + lean_dec_ref(x_106); + x_108 = lean_box(0); } -if (lean_is_scalar(x_106)) { - x_115 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_102)) { + x_109 = lean_alloc_ctor(1, 1, 0); } else { - x_115 = x_106; + x_109 = x_102; } -lean_ctor_set(x_115, 0, x_108); -if (lean_is_scalar(x_114)) { - x_116 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_109, 0, x_104); +if (lean_is_scalar(x_108)) { + x_110 = lean_alloc_ctor(0, 2, 0); } else { - x_116 = x_114; + x_110 = x_108; } -lean_ctor_set(x_116, 0, x_115); -lean_ctor_set(x_116, 1, x_113); -return x_116; +lean_ctor_set(x_110, 0, x_109); +lean_ctor_set(x_110, 1, x_107); +return x_110; } else { -lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -lean_dec(x_108); -lean_dec(x_106); -x_117 = lean_ctor_get(x_112, 0); -lean_inc(x_117); -x_118 = lean_ctor_get(x_112, 1); -lean_inc(x_118); -if (lean_is_exclusive(x_112)) { - lean_ctor_release(x_112, 0); - lean_ctor_release(x_112, 1); - x_119 = x_112; +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; +lean_dec(x_104); +lean_dec(x_102); +x_111 = lean_ctor_get(x_106, 0); +lean_inc(x_111); +x_112 = lean_ctor_get(x_106, 1); +lean_inc(x_112); +if (lean_is_exclusive(x_106)) { + lean_ctor_release(x_106, 0); + lean_ctor_release(x_106, 1); + x_113 = x_106; } else { - lean_dec_ref(x_112); - x_119 = lean_box(0); + lean_dec_ref(x_106); + x_113 = lean_box(0); } -if (lean_is_scalar(x_119)) { - x_120 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_113)) { + x_114 = lean_alloc_ctor(1, 2, 0); } else { - x_120 = x_119; + x_114 = x_113; } -lean_ctor_set(x_120, 0, x_117); -lean_ctor_set(x_120, 1, x_118); -return x_120; +lean_ctor_set(x_114, 0, x_111); +lean_ctor_set(x_114, 1, x_112); +return x_114; } } } else { -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; +lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_121 = lean_ctor_get(x_99, 0); -lean_inc(x_121); -x_122 = lean_ctor_get(x_99, 1); -lean_inc(x_122); -if (lean_is_exclusive(x_99)) { - lean_ctor_release(x_99, 0); - lean_ctor_release(x_99, 1); - x_123 = x_99; +x_115 = lean_ctor_get(x_95, 0); +lean_inc(x_115); +x_116 = lean_ctor_get(x_95, 1); +lean_inc(x_116); +if (lean_is_exclusive(x_95)) { + lean_ctor_release(x_95, 0); + lean_ctor_release(x_95, 1); + x_117 = x_95; } else { - lean_dec_ref(x_99); - x_123 = lean_box(0); + lean_dec_ref(x_95); + x_117 = lean_box(0); } -if (lean_is_scalar(x_123)) { - x_124 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_117)) { + x_118 = lean_alloc_ctor(1, 2, 0); } else { - x_124 = x_123; + x_118 = x_117; } -lean_ctor_set(x_124, 0, x_121); -lean_ctor_set(x_124, 1, x_122); -return x_124; +lean_ctor_set(x_118, 0, x_115); +lean_ctor_set(x_118, 1, x_116); +return x_118; } } else { -lean_object* x_125; lean_object* x_126; -lean_dec(x_93); +lean_object* x_119; lean_object* x_120; +lean_dec(x_89); lean_free_object(x_38); lean_dec(x_40); lean_dec(x_24); @@ -2181,18 +1335,18 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_125 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_125, 0, x_1); -x_126 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_126, 0, x_125); -lean_ctor_set(x_126, 1, x_94); -return x_126; +x_119 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_119, 0, x_1); +x_120 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_120, 0, x_119); +lean_ctor_set(x_120, 1, x_90); +return x_120; } } } else { -uint8_t x_127; +uint8_t x_121; lean_free_object(x_38); lean_dec(x_40); lean_dec(x_24); @@ -2205,33 +1359,33 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_127 = !lean_is_exclusive(x_42); -if (x_127 == 0) +x_121 = !lean_is_exclusive(x_42); +if (x_121 == 0) { return x_42; } else { -lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_128 = lean_ctor_get(x_42, 0); -x_129 = lean_ctor_get(x_42, 1); -lean_inc(x_129); -lean_inc(x_128); +lean_object* x_122; lean_object* x_123; lean_object* x_124; +x_122 = lean_ctor_get(x_42, 0); +x_123 = lean_ctor_get(x_42, 1); +lean_inc(x_123); +lean_inc(x_122); lean_dec(x_42); -x_130 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_130, 0, x_128); -lean_ctor_set(x_130, 1, x_129); -return x_130; +x_124 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_124, 0, x_122); +lean_ctor_set(x_124, 1, x_123); +return x_124; } } } else { -lean_object* x_131; lean_object* x_132; lean_object* x_133; -x_131 = lean_ctor_get(x_38, 0); -x_132 = lean_ctor_get(x_38, 1); -lean_inc(x_132); -lean_inc(x_131); +lean_object* x_125; lean_object* x_126; lean_object* x_127; +x_125 = lean_ctor_get(x_38, 0); +x_126 = lean_ctor_get(x_38, 1); +lean_inc(x_126); +lean_inc(x_125); lean_dec(x_38); lean_inc(x_7); lean_inc(x_6); @@ -2240,196 +1394,190 @@ lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_133 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_132); -if (lean_obj_tag(x_133) == 0) +x_127 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_126); +if (lean_obj_tag(x_127) == 0) { -lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; -x_134 = lean_ctor_get(x_133, 0); -lean_inc(x_134); -x_135 = lean_ctor_get(x_133, 1); -lean_inc(x_135); -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - lean_ctor_release(x_133, 1); - x_136 = x_133; +lean_object* x_128; lean_object* x_129; lean_object* x_130; uint8_t x_131; +x_128 = lean_ctor_get(x_127, 0); +lean_inc(x_128); +x_129 = lean_ctor_get(x_127, 1); +lean_inc(x_129); +if (lean_is_exclusive(x_127)) { + lean_ctor_release(x_127, 0); + lean_ctor_release(x_127, 1); + x_130 = x_127; } else { - lean_dec_ref(x_133); - x_136 = lean_box(0); + lean_dec_ref(x_127); + x_130 = lean_box(0); } -x_137 = l_Array_isEmpty___rarg(x_134); -if (x_137 == 0) +x_131 = l_Array_isEmpty___rarg(x_128); +if (x_131 == 0) { -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; -lean_dec(x_136); -x_138 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_138, 0, x_24); -lean_ctor_set(x_138, 1, x_36); +lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_130); +x_132 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_132, 0, x_24); +lean_ctor_set(x_132, 1, x_36); lean_ctor_set_tag(x_18, 1); -lean_ctor_set(x_18, 1, x_138); +lean_ctor_set(x_18, 1, x_132); lean_ctor_set(x_18, 0, x_15); -x_139 = lean_array_mk(x_18); -x_140 = lean_box(0); -x_141 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; +x_133 = lean_array_mk(x_18); +x_134 = lean_box(0); +x_135 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_142 = l_Lean_Meta_simpGoal(x_1, x_131, x_139, x_140, x_33, x_134, x_141, x_4, x_5, x_6, x_7, x_135); -if (lean_obj_tag(x_142) == 0) +x_136 = l_Lean_Meta_simpGoal(x_1, x_125, x_133, x_134, x_33, x_128, x_135, x_4, x_5, x_6, x_7, x_129); +if (lean_obj_tag(x_136) == 0) { -lean_object* x_143; lean_object* x_144; -x_143 = lean_ctor_get(x_142, 0); -lean_inc(x_143); -x_144 = lean_ctor_get(x_143, 0); -lean_inc(x_144); -lean_dec(x_143); -if (lean_obj_tag(x_144) == 0) +lean_object* x_137; lean_object* x_138; +x_137 = lean_ctor_get(x_136, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_137, 0); +lean_inc(x_138); +lean_dec(x_137); +if (lean_obj_tag(x_138) == 0) { -lean_object* x_145; lean_object* x_146; lean_object* x_147; +lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); +x_139 = lean_ctor_get(x_136, 1); +lean_inc(x_139); +if (lean_is_exclusive(x_136)) { + lean_ctor_release(x_136, 0); + lean_ctor_release(x_136, 1); + x_140 = x_136; +} else { + lean_dec_ref(x_136); + x_140 = lean_box(0); +} +if (lean_is_scalar(x_140)) { + x_141 = lean_alloc_ctor(0, 2, 0); +} else { + x_141 = x_140; +} +lean_ctor_set(x_141, 0, x_134); +lean_ctor_set(x_141, 1, x_139); +return x_141; +} +else +{ +lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; +x_142 = lean_ctor_get(x_138, 0); +lean_inc(x_142); +if (lean_is_exclusive(x_138)) { + lean_ctor_release(x_138, 0); + x_143 = x_138; +} else { + lean_dec_ref(x_138); + x_143 = lean_box(0); +} +x_144 = lean_ctor_get(x_136, 1); +lean_inc(x_144); +lean_dec(x_136); x_145 = lean_ctor_get(x_142, 1); lean_inc(x_145); -if (lean_is_exclusive(x_142)) { - lean_ctor_release(x_142, 0); - lean_ctor_release(x_142, 1); - x_146 = x_142; -} else { - lean_dec_ref(x_142); - x_146 = lean_box(0); -} -if (lean_is_scalar(x_146)) { - x_147 = lean_alloc_ctor(0, 2, 0); -} else { - x_147 = x_146; -} -lean_ctor_set(x_147, 0, x_140); -lean_ctor_set(x_147, 1, x_145); -return x_147; -} -else +lean_dec(x_142); +x_146 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_145); +x_147 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_145, x_146, x_2, x_3, x_4, x_5, x_6, x_7, x_144); +if (lean_obj_tag(x_147) == 0) { -lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; -x_148 = lean_ctor_get(x_144, 0); +lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; +x_148 = lean_ctor_get(x_147, 1); lean_inc(x_148); -if (lean_is_exclusive(x_144)) { - lean_ctor_release(x_144, 0); - x_149 = x_144; +if (lean_is_exclusive(x_147)) { + lean_ctor_release(x_147, 0); + lean_ctor_release(x_147, 1); + x_149 = x_147; } else { - lean_dec_ref(x_144); + lean_dec_ref(x_147); x_149 = lean_box(0); } -x_150 = lean_ctor_get(x_142, 1); -lean_inc(x_150); -lean_dec(x_142); -x_151 = lean_ctor_get(x_148, 1); -lean_inc(x_151); -lean_dec(x_148); -lean_inc(x_151); -x_152 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_152, 0, x_151); -x_153 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_154 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_154, 0, x_152); -lean_closure_set(x_154, 1, x_153); -lean_inc(x_151); -x_155 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_151, x_154, x_2, x_3, x_4, x_5, x_6, x_7, x_150); -if (lean_obj_tag(x_155) == 0) +if (lean_is_scalar(x_143)) { + x_150 = lean_alloc_ctor(1, 1, 0); +} else { + x_150 = x_143; +} +lean_ctor_set(x_150, 0, x_145); +if (lean_is_scalar(x_149)) { + x_151 = lean_alloc_ctor(0, 2, 0); +} else { + x_151 = x_149; +} +lean_ctor_set(x_151, 0, x_150); +lean_ctor_set(x_151, 1, x_148); +return x_151; +} +else +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; +lean_dec(x_145); +lean_dec(x_143); +x_152 = lean_ctor_get(x_147, 0); +lean_inc(x_152); +x_153 = lean_ctor_get(x_147, 1); +lean_inc(x_153); +if (lean_is_exclusive(x_147)) { + lean_ctor_release(x_147, 0); + lean_ctor_release(x_147, 1); + x_154 = x_147; +} else { + lean_dec_ref(x_147); + x_154 = lean_box(0); +} +if (lean_is_scalar(x_154)) { + x_155 = lean_alloc_ctor(1, 2, 0); +} else { + x_155 = x_154; +} +lean_ctor_set(x_155, 0, x_152); +lean_ctor_set(x_155, 1, x_153); +return x_155; +} +} +} +else { lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; -x_156 = lean_ctor_get(x_155, 1); -lean_inc(x_156); -if (lean_is_exclusive(x_155)) { - lean_ctor_release(x_155, 0); - lean_ctor_release(x_155, 1); - x_157 = x_155; -} else { - lean_dec_ref(x_155); - x_157 = lean_box(0); -} -if (lean_is_scalar(x_149)) { - x_158 = lean_alloc_ctor(1, 1, 0); -} else { - x_158 = x_149; -} -lean_ctor_set(x_158, 0, x_151); -if (lean_is_scalar(x_157)) { - x_159 = lean_alloc_ctor(0, 2, 0); -} else { - x_159 = x_157; -} -lean_ctor_set(x_159, 0, x_158); -lean_ctor_set(x_159, 1, x_156); -return x_159; -} -else -{ -lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; -lean_dec(x_151); -lean_dec(x_149); -x_160 = lean_ctor_get(x_155, 0); -lean_inc(x_160); -x_161 = lean_ctor_get(x_155, 1); -lean_inc(x_161); -if (lean_is_exclusive(x_155)) { - lean_ctor_release(x_155, 0); - lean_ctor_release(x_155, 1); - x_162 = x_155; -} else { - lean_dec_ref(x_155); - x_162 = lean_box(0); -} -if (lean_is_scalar(x_162)) { - x_163 = lean_alloc_ctor(1, 2, 0); -} else { - x_163 = x_162; -} -lean_ctor_set(x_163, 0, x_160); -lean_ctor_set(x_163, 1, x_161); -return x_163; -} -} -} -else -{ -lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_164 = lean_ctor_get(x_142, 0); -lean_inc(x_164); -x_165 = lean_ctor_get(x_142, 1); -lean_inc(x_165); -if (lean_is_exclusive(x_142)) { - lean_ctor_release(x_142, 0); - lean_ctor_release(x_142, 1); - x_166 = x_142; +x_156 = lean_ctor_get(x_136, 0); +lean_inc(x_156); +x_157 = lean_ctor_get(x_136, 1); +lean_inc(x_157); +if (lean_is_exclusive(x_136)) { + lean_ctor_release(x_136, 0); + lean_ctor_release(x_136, 1); + x_158 = x_136; } else { - lean_dec_ref(x_142); - x_166 = lean_box(0); + lean_dec_ref(x_136); + x_158 = lean_box(0); } -if (lean_is_scalar(x_166)) { - x_167 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_158)) { + x_159 = lean_alloc_ctor(1, 2, 0); } else { - x_167 = x_166; + x_159 = x_158; } -lean_ctor_set(x_167, 0, x_164); -lean_ctor_set(x_167, 1, x_165); -return x_167; +lean_ctor_set(x_159, 0, x_156); +lean_ctor_set(x_159, 1, x_157); +return x_159; } } else { -lean_object* x_168; lean_object* x_169; -lean_dec(x_134); -lean_dec(x_131); +lean_object* x_160; lean_object* x_161; +lean_dec(x_128); +lean_dec(x_125); lean_dec(x_24); lean_free_object(x_18); lean_dec(x_15); @@ -2439,22 +1587,22 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_168 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_168, 0, x_1); -if (lean_is_scalar(x_136)) { - x_169 = lean_alloc_ctor(0, 2, 0); +x_160 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_160, 0, x_1); +if (lean_is_scalar(x_130)) { + x_161 = lean_alloc_ctor(0, 2, 0); } else { - x_169 = x_136; + x_161 = x_130; } -lean_ctor_set(x_169, 0, x_168); -lean_ctor_set(x_169, 1, x_135); -return x_169; +lean_ctor_set(x_161, 0, x_160); +lean_ctor_set(x_161, 1, x_129); +return x_161; } } else { -lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; -lean_dec(x_131); +lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_125); lean_dec(x_24); lean_free_object(x_18); lean_dec(x_15); @@ -2465,85 +1613,85 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_170 = lean_ctor_get(x_133, 0); -lean_inc(x_170); -x_171 = lean_ctor_get(x_133, 1); -lean_inc(x_171); -if (lean_is_exclusive(x_133)) { - lean_ctor_release(x_133, 0); - lean_ctor_release(x_133, 1); - x_172 = x_133; +x_162 = lean_ctor_get(x_127, 0); +lean_inc(x_162); +x_163 = lean_ctor_get(x_127, 1); +lean_inc(x_163); +if (lean_is_exclusive(x_127)) { + lean_ctor_release(x_127, 0); + lean_ctor_release(x_127, 1); + x_164 = x_127; } else { - lean_dec_ref(x_133); - x_172 = lean_box(0); + lean_dec_ref(x_127); + x_164 = lean_box(0); } -if (lean_is_scalar(x_172)) { - x_173 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_164)) { + x_165 = lean_alloc_ctor(1, 2, 0); } else { - x_173 = x_172; + x_165 = x_164; } -lean_ctor_set(x_173, 0, x_170); -lean_ctor_set(x_173, 1, x_171); -return x_173; +lean_ctor_set(x_165, 0, x_162); +lean_ctor_set(x_165, 1, x_163); +return x_165; } } } else { -lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; uint8_t x_178; uint8_t x_179; uint8_t x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; -x_174 = lean_ctor_get(x_26, 0); -x_175 = lean_ctor_get(x_26, 1); -lean_inc(x_175); -lean_inc(x_174); +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; uint8_t x_170; uint8_t x_171; uint8_t x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; +x_166 = lean_ctor_get(x_26, 0); +x_167 = lean_ctor_get(x_26, 1); +lean_inc(x_167); +lean_inc(x_166); lean_dec(x_26); -x_176 = lean_ctor_get(x_2, 1); -lean_inc(x_176); -x_177 = lean_unsigned_to_nat(2u); -x_178 = 0; -x_179 = 1; -x_180 = 0; -x_181 = lean_alloc_ctor(0, 2, 19); -lean_ctor_set(x_181, 0, x_176); -lean_ctor_set(x_181, 1, x_177); -lean_ctor_set_uint8(x_181, sizeof(void*)*2, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 1, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 2, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 3, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 4, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 5, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 6, x_180); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 7, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 8, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 9, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 10, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 11, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 12, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 13, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 14, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 15, x_178); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 16, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 17, x_179); -lean_ctor_set_uint8(x_181, sizeof(void*)*2 + 18, x_179); -x_182 = lean_box(0); -x_183 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_183, 0, x_20); -lean_ctor_set(x_183, 1, x_182); +x_168 = lean_ctor_get(x_2, 1); +lean_inc(x_168); +x_169 = lean_unsigned_to_nat(2u); +x_170 = 0; +x_171 = 1; +x_172 = 0; +x_173 = lean_alloc_ctor(0, 2, 19); +lean_ctor_set(x_173, 0, x_168); +lean_ctor_set(x_173, 1, x_169); +lean_ctor_set_uint8(x_173, sizeof(void*)*2, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 1, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 2, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 3, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 4, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 5, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 6, x_172); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 7, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 8, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 9, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 10, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 11, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 12, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 13, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 14, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 15, x_170); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 16, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 17, x_171); +lean_ctor_set_uint8(x_173, sizeof(void*)*2 + 18, x_171); +x_174 = lean_box(0); +x_175 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_175, 0, x_20); +lean_ctor_set(x_175, 1, x_174); lean_ctor_set_tag(x_22, 1); -lean_ctor_set(x_22, 1, x_183); +lean_ctor_set(x_22, 1, x_175); lean_ctor_set(x_22, 0, x_11); -x_184 = lean_array_mk(x_22); -x_185 = l_Lean_Meta_Simp_mkContext(x_181, x_184, x_174, x_4, x_5, x_6, x_7, x_175); -x_186 = lean_ctor_get(x_185, 0); -lean_inc(x_186); -x_187 = lean_ctor_get(x_185, 1); -lean_inc(x_187); -if (lean_is_exclusive(x_185)) { - lean_ctor_release(x_185, 0); - lean_ctor_release(x_185, 1); - x_188 = x_185; +x_176 = lean_array_mk(x_22); +x_177 = l_Lean_Meta_Simp_mkContext(x_173, x_176, x_166, x_4, x_5, x_6, x_7, x_167); +x_178 = lean_ctor_get(x_177, 0); +lean_inc(x_178); +x_179 = lean_ctor_get(x_177, 1); +lean_inc(x_179); +if (lean_is_exclusive(x_177)) { + lean_ctor_release(x_177, 0); + lean_ctor_release(x_177, 1); + x_180 = x_177; } else { - lean_dec_ref(x_185); - x_188 = lean_box(0); + lean_dec_ref(x_177); + x_180 = lean_box(0); } lean_inc(x_7); lean_inc(x_6); @@ -2552,152 +1700,242 @@ lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_189 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_187); -if (lean_obj_tag(x_189) == 0) +x_181 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_179); +if (lean_obj_tag(x_181) == 0) { -lean_object* x_190; lean_object* x_191; lean_object* x_192; uint8_t x_193; -x_190 = lean_ctor_get(x_189, 0); -lean_inc(x_190); -x_191 = lean_ctor_get(x_189, 1); -lean_inc(x_191); -if (lean_is_exclusive(x_189)) { - lean_ctor_release(x_189, 0); - lean_ctor_release(x_189, 1); - x_192 = x_189; +lean_object* x_182; lean_object* x_183; lean_object* x_184; uint8_t x_185; +x_182 = lean_ctor_get(x_181, 0); +lean_inc(x_182); +x_183 = lean_ctor_get(x_181, 1); +lean_inc(x_183); +if (lean_is_exclusive(x_181)) { + lean_ctor_release(x_181, 0); + lean_ctor_release(x_181, 1); + x_184 = x_181; } else { - lean_dec_ref(x_189); - x_192 = lean_box(0); + lean_dec_ref(x_181); + x_184 = lean_box(0); } -x_193 = l_Array_isEmpty___rarg(x_190); -if (x_193 == 0) +x_185 = l_Array_isEmpty___rarg(x_182); +if (x_185 == 0) { -lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; -lean_dec(x_192); -if (lean_is_scalar(x_188)) { - x_194 = lean_alloc_ctor(1, 2, 0); +lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +lean_dec(x_184); +if (lean_is_scalar(x_180)) { + x_186 = lean_alloc_ctor(1, 2, 0); } else { - x_194 = x_188; - lean_ctor_set_tag(x_194, 1); + x_186 = x_180; + lean_ctor_set_tag(x_186, 1); } -lean_ctor_set(x_194, 0, x_24); -lean_ctor_set(x_194, 1, x_182); +lean_ctor_set(x_186, 0, x_24); +lean_ctor_set(x_186, 1, x_174); lean_ctor_set_tag(x_18, 1); -lean_ctor_set(x_18, 1, x_194); +lean_ctor_set(x_18, 1, x_186); lean_ctor_set(x_18, 0, x_15); -x_195 = lean_array_mk(x_18); -x_196 = lean_box(0); -x_197 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; +x_187 = lean_array_mk(x_18); +x_188 = lean_box(0); +x_189 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_198 = l_Lean_Meta_simpGoal(x_1, x_186, x_195, x_196, x_179, x_190, x_197, x_4, x_5, x_6, x_7, x_191); -if (lean_obj_tag(x_198) == 0) +x_190 = l_Lean_Meta_simpGoal(x_1, x_178, x_187, x_188, x_171, x_182, x_189, x_4, x_5, x_6, x_7, x_183); +if (lean_obj_tag(x_190) == 0) { -lean_object* x_199; lean_object* x_200; -x_199 = lean_ctor_get(x_198, 0); -lean_inc(x_199); -x_200 = lean_ctor_get(x_199, 0); -lean_inc(x_200); -lean_dec(x_199); -if (lean_obj_tag(x_200) == 0) +lean_object* x_191; lean_object* x_192; +x_191 = lean_ctor_get(x_190, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_191, 0); +lean_inc(x_192); +lean_dec(x_191); +if (lean_obj_tag(x_192) == 0) { -lean_object* x_201; lean_object* x_202; lean_object* x_203; +lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_201 = lean_ctor_get(x_198, 1); -lean_inc(x_201); -if (lean_is_exclusive(x_198)) { - lean_ctor_release(x_198, 0); - lean_ctor_release(x_198, 1); - x_202 = x_198; +x_193 = lean_ctor_get(x_190, 1); +lean_inc(x_193); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_194 = x_190; } else { - lean_dec_ref(x_198); - x_202 = lean_box(0); + lean_dec_ref(x_190); + x_194 = lean_box(0); } -if (lean_is_scalar(x_202)) { - x_203 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_194)) { + x_195 = lean_alloc_ctor(0, 2, 0); } else { - x_203 = x_202; + x_195 = x_194; } -lean_ctor_set(x_203, 0, x_196); -lean_ctor_set(x_203, 1, x_201); -return x_203; +lean_ctor_set(x_195, 0, x_188); +lean_ctor_set(x_195, 1, x_193); +return x_195; } else { -lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; -x_204 = lean_ctor_get(x_200, 0); -lean_inc(x_204); -if (lean_is_exclusive(x_200)) { - lean_ctor_release(x_200, 0); - x_205 = x_200; +lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; +x_196 = lean_ctor_get(x_192, 0); +lean_inc(x_196); +if (lean_is_exclusive(x_192)) { + lean_ctor_release(x_192, 0); + x_197 = x_192; } else { - lean_dec_ref(x_200); - x_205 = lean_box(0); + lean_dec_ref(x_192); + x_197 = lean_box(0); } -x_206 = lean_ctor_get(x_198, 1); -lean_inc(x_206); -lean_dec(x_198); -x_207 = lean_ctor_get(x_204, 1); -lean_inc(x_207); -lean_dec(x_204); -lean_inc(x_207); -x_208 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_208, 0, x_207); -x_209 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_210 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_210, 0, x_208); -lean_closure_set(x_210, 1, x_209); -lean_inc(x_207); -x_211 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_207, x_210, x_2, x_3, x_4, x_5, x_6, x_7, x_206); -if (lean_obj_tag(x_211) == 0) +x_198 = lean_ctor_get(x_190, 1); +lean_inc(x_198); +lean_dec(x_190); +x_199 = lean_ctor_get(x_196, 1); +lean_inc(x_199); +lean_dec(x_196); +x_200 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_199); +x_201 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_199, x_200, x_2, x_3, x_4, x_5, x_6, x_7, x_198); +if (lean_obj_tag(x_201) == 0) { -lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; -x_212 = lean_ctor_get(x_211, 1); -lean_inc(x_212); -if (lean_is_exclusive(x_211)) { - lean_ctor_release(x_211, 0); - lean_ctor_release(x_211, 1); - x_213 = x_211; +lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; +x_202 = lean_ctor_get(x_201, 1); +lean_inc(x_202); +if (lean_is_exclusive(x_201)) { + lean_ctor_release(x_201, 0); + lean_ctor_release(x_201, 1); + x_203 = x_201; } else { - lean_dec_ref(x_211); - x_213 = lean_box(0); + lean_dec_ref(x_201); + x_203 = lean_box(0); } -if (lean_is_scalar(x_205)) { - x_214 = lean_alloc_ctor(1, 1, 0); +if (lean_is_scalar(x_197)) { + x_204 = lean_alloc_ctor(1, 1, 0); } else { - x_214 = x_205; + x_204 = x_197; } -lean_ctor_set(x_214, 0, x_207); -if (lean_is_scalar(x_213)) { +lean_ctor_set(x_204, 0, x_199); +if (lean_is_scalar(x_203)) { + x_205 = lean_alloc_ctor(0, 2, 0); +} else { + x_205 = x_203; +} +lean_ctor_set(x_205, 0, x_204); +lean_ctor_set(x_205, 1, x_202); +return x_205; +} +else +{ +lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; +lean_dec(x_199); +lean_dec(x_197); +x_206 = lean_ctor_get(x_201, 0); +lean_inc(x_206); +x_207 = lean_ctor_get(x_201, 1); +lean_inc(x_207); +if (lean_is_exclusive(x_201)) { + lean_ctor_release(x_201, 0); + lean_ctor_release(x_201, 1); + x_208 = x_201; +} else { + lean_dec_ref(x_201); + x_208 = lean_box(0); +} +if (lean_is_scalar(x_208)) { + x_209 = lean_alloc_ctor(1, 2, 0); +} else { + x_209 = x_208; +} +lean_ctor_set(x_209, 0, x_206); +lean_ctor_set(x_209, 1, x_207); +return x_209; +} +} +} +else +{ +lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_210 = lean_ctor_get(x_190, 0); +lean_inc(x_210); +x_211 = lean_ctor_get(x_190, 1); +lean_inc(x_211); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_212 = x_190; +} else { + lean_dec_ref(x_190); + x_212 = lean_box(0); +} +if (lean_is_scalar(x_212)) { + x_213 = lean_alloc_ctor(1, 2, 0); +} else { + x_213 = x_212; +} +lean_ctor_set(x_213, 0, x_210); +lean_ctor_set(x_213, 1, x_211); +return x_213; +} +} +else +{ +lean_object* x_214; lean_object* x_215; +lean_dec(x_182); +lean_dec(x_180); +lean_dec(x_178); +lean_dec(x_24); +lean_free_object(x_18); +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_214 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_214, 0, x_1); +if (lean_is_scalar(x_184)) { x_215 = lean_alloc_ctor(0, 2, 0); } else { - x_215 = x_213; + x_215 = x_184; } lean_ctor_set(x_215, 0, x_214); -lean_ctor_set(x_215, 1, x_212); +lean_ctor_set(x_215, 1, x_183); return x_215; } +} else { lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; -lean_dec(x_207); -lean_dec(x_205); -x_216 = lean_ctor_get(x_211, 0); +lean_dec(x_180); +lean_dec(x_178); +lean_dec(x_24); +lean_free_object(x_18); +lean_dec(x_15); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_216 = lean_ctor_get(x_181, 0); lean_inc(x_216); -x_217 = lean_ctor_get(x_211, 1); +x_217 = lean_ctor_get(x_181, 1); lean_inc(x_217); -if (lean_is_exclusive(x_211)) { - lean_ctor_release(x_211, 0); - lean_ctor_release(x_211, 1); - x_218 = x_211; +if (lean_is_exclusive(x_181)) { + lean_ctor_release(x_181, 0); + lean_ctor_release(x_181, 1); + x_218 = x_181; } else { - lean_dec_ref(x_211); + lean_dec_ref(x_181); x_218 = lean_box(0); } if (lean_is_scalar(x_218)) { @@ -2713,174 +1951,78 @@ return x_219; } else { -lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_220 = lean_ctor_get(x_198, 0); -lean_inc(x_220); -x_221 = lean_ctor_get(x_198, 1); +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; uint8_t x_228; uint8_t x_229; uint8_t x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; +x_220 = lean_ctor_get(x_22, 0); +x_221 = lean_ctor_get(x_22, 1); lean_inc(x_221); -if (lean_is_exclusive(x_198)) { - lean_ctor_release(x_198, 0); - lean_ctor_release(x_198, 1); - x_222 = x_198; -} else { - lean_dec_ref(x_198); - x_222 = lean_box(0); -} -if (lean_is_scalar(x_222)) { - x_223 = lean_alloc_ctor(1, 2, 0); -} else { - x_223 = x_222; -} -lean_ctor_set(x_223, 0, x_220); -lean_ctor_set(x_223, 1, x_221); -return x_223; -} -} -else -{ -lean_object* x_224; lean_object* x_225; -lean_dec(x_190); -lean_dec(x_188); -lean_dec(x_186); -lean_dec(x_24); -lean_free_object(x_18); -lean_dec(x_15); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_224 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_224, 0, x_1); -if (lean_is_scalar(x_192)) { - x_225 = lean_alloc_ctor(0, 2, 0); -} else { - x_225 = x_192; -} -lean_ctor_set(x_225, 0, x_224); -lean_ctor_set(x_225, 1, x_191); -return x_225; -} -} -else -{ -lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; -lean_dec(x_188); -lean_dec(x_186); -lean_dec(x_24); -lean_free_object(x_18); -lean_dec(x_15); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_226 = lean_ctor_get(x_189, 0); -lean_inc(x_226); -x_227 = lean_ctor_get(x_189, 1); -lean_inc(x_227); -if (lean_is_exclusive(x_189)) { - lean_ctor_release(x_189, 0); - lean_ctor_release(x_189, 1); - x_228 = x_189; -} else { - lean_dec_ref(x_189); - x_228 = lean_box(0); -} -if (lean_is_scalar(x_228)) { - x_229 = lean_alloc_ctor(1, 2, 0); -} else { - x_229 = x_228; -} -lean_ctor_set(x_229, 0, x_226); -lean_ctor_set(x_229, 1, x_227); -return x_229; -} -} -} -else -{ -lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; uint8_t x_238; uint8_t x_239; uint8_t x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; -x_230 = lean_ctor_get(x_22, 0); -x_231 = lean_ctor_get(x_22, 1); -lean_inc(x_231); -lean_inc(x_230); +lean_inc(x_220); lean_dec(x_22); -x_232 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_7, x_231); -x_233 = lean_ctor_get(x_232, 0); -lean_inc(x_233); -x_234 = lean_ctor_get(x_232, 1); -lean_inc(x_234); -if (lean_is_exclusive(x_232)) { - lean_ctor_release(x_232, 0); - lean_ctor_release(x_232, 1); - x_235 = x_232; +x_222 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_7, x_221); +x_223 = lean_ctor_get(x_222, 0); +lean_inc(x_223); +x_224 = lean_ctor_get(x_222, 1); +lean_inc(x_224); +if (lean_is_exclusive(x_222)) { + lean_ctor_release(x_222, 0); + lean_ctor_release(x_222, 1); + x_225 = x_222; } else { - lean_dec_ref(x_232); - x_235 = lean_box(0); + lean_dec_ref(x_222); + x_225 = lean_box(0); } -x_236 = lean_ctor_get(x_2, 1); -lean_inc(x_236); -x_237 = lean_unsigned_to_nat(2u); -x_238 = 0; -x_239 = 1; -x_240 = 0; -x_241 = lean_alloc_ctor(0, 2, 19); -lean_ctor_set(x_241, 0, x_236); -lean_ctor_set(x_241, 1, x_237); -lean_ctor_set_uint8(x_241, sizeof(void*)*2, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 1, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 2, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 3, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 4, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 5, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 6, x_240); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 7, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 8, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 9, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 10, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 11, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 12, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 13, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 14, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 15, x_238); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 16, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 17, x_239); -lean_ctor_set_uint8(x_241, sizeof(void*)*2 + 18, x_239); -x_242 = lean_box(0); -if (lean_is_scalar(x_235)) { - x_243 = lean_alloc_ctor(1, 2, 0); +x_226 = lean_ctor_get(x_2, 1); +lean_inc(x_226); +x_227 = lean_unsigned_to_nat(2u); +x_228 = 0; +x_229 = 1; +x_230 = 0; +x_231 = lean_alloc_ctor(0, 2, 19); +lean_ctor_set(x_231, 0, x_226); +lean_ctor_set(x_231, 1, x_227); +lean_ctor_set_uint8(x_231, sizeof(void*)*2, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 1, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 2, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 3, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 4, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 5, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 6, x_230); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 7, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 8, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 9, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 10, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 11, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 12, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 13, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 14, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 15, x_228); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 16, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 17, x_229); +lean_ctor_set_uint8(x_231, sizeof(void*)*2 + 18, x_229); +x_232 = lean_box(0); +if (lean_is_scalar(x_225)) { + x_233 = lean_alloc_ctor(1, 2, 0); } else { - x_243 = x_235; - lean_ctor_set_tag(x_243, 1); + x_233 = x_225; + lean_ctor_set_tag(x_233, 1); } -lean_ctor_set(x_243, 0, x_20); -lean_ctor_set(x_243, 1, x_242); -x_244 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_244, 0, x_11); -lean_ctor_set(x_244, 1, x_243); -x_245 = lean_array_mk(x_244); -x_246 = l_Lean_Meta_Simp_mkContext(x_241, x_245, x_233, x_4, x_5, x_6, x_7, x_234); -x_247 = lean_ctor_get(x_246, 0); -lean_inc(x_247); -x_248 = lean_ctor_get(x_246, 1); -lean_inc(x_248); -if (lean_is_exclusive(x_246)) { - lean_ctor_release(x_246, 0); - lean_ctor_release(x_246, 1); - x_249 = x_246; +lean_ctor_set(x_233, 0, x_20); +lean_ctor_set(x_233, 1, x_232); +x_234 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_234, 0, x_11); +lean_ctor_set(x_234, 1, x_233); +x_235 = lean_array_mk(x_234); +x_236 = l_Lean_Meta_Simp_mkContext(x_231, x_235, x_223, x_4, x_5, x_6, x_7, x_224); +x_237 = lean_ctor_get(x_236, 0); +lean_inc(x_237); +x_238 = lean_ctor_get(x_236, 1); +lean_inc(x_238); +if (lean_is_exclusive(x_236)) { + lean_ctor_release(x_236, 0); + lean_ctor_release(x_236, 1); + x_239 = x_236; } else { - lean_dec_ref(x_246); - x_249 = lean_box(0); + lean_dec_ref(x_236); + x_239 = lean_box(0); } lean_inc(x_7); lean_inc(x_6); @@ -2889,203 +2031,197 @@ lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_250 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_248); -if (lean_obj_tag(x_250) == 0) +x_240 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_238); +if (lean_obj_tag(x_240) == 0) { -lean_object* x_251; lean_object* x_252; lean_object* x_253; uint8_t x_254; -x_251 = lean_ctor_get(x_250, 0); -lean_inc(x_251); -x_252 = lean_ctor_get(x_250, 1); -lean_inc(x_252); -if (lean_is_exclusive(x_250)) { - lean_ctor_release(x_250, 0); - lean_ctor_release(x_250, 1); - x_253 = x_250; +lean_object* x_241; lean_object* x_242; lean_object* x_243; uint8_t x_244; +x_241 = lean_ctor_get(x_240, 0); +lean_inc(x_241); +x_242 = lean_ctor_get(x_240, 1); +lean_inc(x_242); +if (lean_is_exclusive(x_240)) { + lean_ctor_release(x_240, 0); + lean_ctor_release(x_240, 1); + x_243 = x_240; } else { - lean_dec_ref(x_250); - x_253 = lean_box(0); + lean_dec_ref(x_240); + x_243 = lean_box(0); } -x_254 = l_Array_isEmpty___rarg(x_251); -if (x_254 == 0) +x_244 = l_Array_isEmpty___rarg(x_241); +if (x_244 == 0) { -lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; -lean_dec(x_253); -if (lean_is_scalar(x_249)) { - x_255 = lean_alloc_ctor(1, 2, 0); +lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; +lean_dec(x_243); +if (lean_is_scalar(x_239)) { + x_245 = lean_alloc_ctor(1, 2, 0); } else { - x_255 = x_249; - lean_ctor_set_tag(x_255, 1); + x_245 = x_239; + lean_ctor_set_tag(x_245, 1); } -lean_ctor_set(x_255, 0, x_230); -lean_ctor_set(x_255, 1, x_242); +lean_ctor_set(x_245, 0, x_220); +lean_ctor_set(x_245, 1, x_232); lean_ctor_set_tag(x_18, 1); -lean_ctor_set(x_18, 1, x_255); +lean_ctor_set(x_18, 1, x_245); lean_ctor_set(x_18, 0, x_15); -x_256 = lean_array_mk(x_18); -x_257 = lean_box(0); -x_258 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; +x_246 = lean_array_mk(x_18); +x_247 = lean_box(0); +x_248 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_259 = l_Lean_Meta_simpGoal(x_1, x_247, x_256, x_257, x_239, x_251, x_258, x_4, x_5, x_6, x_7, x_252); -if (lean_obj_tag(x_259) == 0) +x_249 = l_Lean_Meta_simpGoal(x_1, x_237, x_246, x_247, x_229, x_241, x_248, x_4, x_5, x_6, x_7, x_242); +if (lean_obj_tag(x_249) == 0) { -lean_object* x_260; lean_object* x_261; -x_260 = lean_ctor_get(x_259, 0); -lean_inc(x_260); -x_261 = lean_ctor_get(x_260, 0); -lean_inc(x_261); -lean_dec(x_260); -if (lean_obj_tag(x_261) == 0) +lean_object* x_250; lean_object* x_251; +x_250 = lean_ctor_get(x_249, 0); +lean_inc(x_250); +x_251 = lean_ctor_get(x_250, 0); +lean_inc(x_251); +lean_dec(x_250); +if (lean_obj_tag(x_251) == 0) { -lean_object* x_262; lean_object* x_263; lean_object* x_264; +lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_262 = lean_ctor_get(x_259, 1); -lean_inc(x_262); -if (lean_is_exclusive(x_259)) { - lean_ctor_release(x_259, 0); - lean_ctor_release(x_259, 1); - x_263 = x_259; +x_252 = lean_ctor_get(x_249, 1); +lean_inc(x_252); +if (lean_is_exclusive(x_249)) { + lean_ctor_release(x_249, 0); + lean_ctor_release(x_249, 1); + x_253 = x_249; } else { - lean_dec_ref(x_259); - x_263 = lean_box(0); + lean_dec_ref(x_249); + x_253 = lean_box(0); } -if (lean_is_scalar(x_263)) { +if (lean_is_scalar(x_253)) { + x_254 = lean_alloc_ctor(0, 2, 0); +} else { + x_254 = x_253; +} +lean_ctor_set(x_254, 0, x_247); +lean_ctor_set(x_254, 1, x_252); +return x_254; +} +else +{ +lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; +x_255 = lean_ctor_get(x_251, 0); +lean_inc(x_255); +if (lean_is_exclusive(x_251)) { + lean_ctor_release(x_251, 0); + x_256 = x_251; +} else { + lean_dec_ref(x_251); + x_256 = lean_box(0); +} +x_257 = lean_ctor_get(x_249, 1); +lean_inc(x_257); +lean_dec(x_249); +x_258 = lean_ctor_get(x_255, 1); +lean_inc(x_258); +lean_dec(x_255); +x_259 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_258); +x_260 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_258, x_259, x_2, x_3, x_4, x_5, x_6, x_7, x_257); +if (lean_obj_tag(x_260) == 0) +{ +lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; +x_261 = lean_ctor_get(x_260, 1); +lean_inc(x_261); +if (lean_is_exclusive(x_260)) { + lean_ctor_release(x_260, 0); + lean_ctor_release(x_260, 1); + x_262 = x_260; +} else { + lean_dec_ref(x_260); + x_262 = lean_box(0); +} +if (lean_is_scalar(x_256)) { + x_263 = lean_alloc_ctor(1, 1, 0); +} else { + x_263 = x_256; +} +lean_ctor_set(x_263, 0, x_258); +if (lean_is_scalar(x_262)) { x_264 = lean_alloc_ctor(0, 2, 0); } else { - x_264 = x_263; + x_264 = x_262; } -lean_ctor_set(x_264, 0, x_257); -lean_ctor_set(x_264, 1, x_262); +lean_ctor_set(x_264, 0, x_263); +lean_ctor_set(x_264, 1, x_261); return x_264; } else { -lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; -x_265 = lean_ctor_get(x_261, 0); +lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; +lean_dec(x_258); +lean_dec(x_256); +x_265 = lean_ctor_get(x_260, 0); lean_inc(x_265); -if (lean_is_exclusive(x_261)) { - lean_ctor_release(x_261, 0); - x_266 = x_261; +x_266 = lean_ctor_get(x_260, 1); +lean_inc(x_266); +if (lean_is_exclusive(x_260)) { + lean_ctor_release(x_260, 0); + lean_ctor_release(x_260, 1); + x_267 = x_260; } else { - lean_dec_ref(x_261); - x_266 = lean_box(0); + lean_dec_ref(x_260); + x_267 = lean_box(0); } -x_267 = lean_ctor_get(x_259, 1); -lean_inc(x_267); -lean_dec(x_259); -x_268 = lean_ctor_get(x_265, 1); -lean_inc(x_268); -lean_dec(x_265); -lean_inc(x_268); -x_269 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_269, 0, x_268); -x_270 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_271 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_271, 0, x_269); -lean_closure_set(x_271, 1, x_270); -lean_inc(x_268); -x_272 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_268, x_271, x_2, x_3, x_4, x_5, x_6, x_7, x_267); -if (lean_obj_tag(x_272) == 0) -{ -lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; -x_273 = lean_ctor_get(x_272, 1); -lean_inc(x_273); -if (lean_is_exclusive(x_272)) { - lean_ctor_release(x_272, 0); - lean_ctor_release(x_272, 1); - x_274 = x_272; +if (lean_is_scalar(x_267)) { + x_268 = lean_alloc_ctor(1, 2, 0); } else { - lean_dec_ref(x_272); - x_274 = lean_box(0); + x_268 = x_267; } -if (lean_is_scalar(x_266)) { - x_275 = lean_alloc_ctor(1, 1, 0); -} else { - x_275 = x_266; -} -lean_ctor_set(x_275, 0, x_268); -if (lean_is_scalar(x_274)) { - x_276 = lean_alloc_ctor(0, 2, 0); -} else { - x_276 = x_274; -} -lean_ctor_set(x_276, 0, x_275); -lean_ctor_set(x_276, 1, x_273); -return x_276; -} -else -{ -lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; -lean_dec(x_268); -lean_dec(x_266); -x_277 = lean_ctor_get(x_272, 0); -lean_inc(x_277); -x_278 = lean_ctor_get(x_272, 1); -lean_inc(x_278); -if (lean_is_exclusive(x_272)) { - lean_ctor_release(x_272, 0); - lean_ctor_release(x_272, 1); - x_279 = x_272; -} else { - lean_dec_ref(x_272); - x_279 = lean_box(0); -} -if (lean_is_scalar(x_279)) { - x_280 = lean_alloc_ctor(1, 2, 0); -} else { - x_280 = x_279; -} -lean_ctor_set(x_280, 0, x_277); -lean_ctor_set(x_280, 1, x_278); -return x_280; +lean_ctor_set(x_268, 0, x_265); +lean_ctor_set(x_268, 1, x_266); +return x_268; } } } else { -lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; +lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_281 = lean_ctor_get(x_259, 0); -lean_inc(x_281); -x_282 = lean_ctor_get(x_259, 1); -lean_inc(x_282); -if (lean_is_exclusive(x_259)) { - lean_ctor_release(x_259, 0); - lean_ctor_release(x_259, 1); - x_283 = x_259; +x_269 = lean_ctor_get(x_249, 0); +lean_inc(x_269); +x_270 = lean_ctor_get(x_249, 1); +lean_inc(x_270); +if (lean_is_exclusive(x_249)) { + lean_ctor_release(x_249, 0); + lean_ctor_release(x_249, 1); + x_271 = x_249; } else { - lean_dec_ref(x_259); - x_283 = lean_box(0); + lean_dec_ref(x_249); + x_271 = lean_box(0); } -if (lean_is_scalar(x_283)) { - x_284 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_271)) { + x_272 = lean_alloc_ctor(1, 2, 0); } else { - x_284 = x_283; + x_272 = x_271; } -lean_ctor_set(x_284, 0, x_281); -lean_ctor_set(x_284, 1, x_282); -return x_284; +lean_ctor_set(x_272, 0, x_269); +lean_ctor_set(x_272, 1, x_270); +return x_272; } } else { -lean_object* x_285; lean_object* x_286; -lean_dec(x_251); -lean_dec(x_249); -lean_dec(x_247); -lean_dec(x_230); +lean_object* x_273; lean_object* x_274; +lean_dec(x_241); +lean_dec(x_239); +lean_dec(x_237); +lean_dec(x_220); lean_free_object(x_18); lean_dec(x_15); lean_dec(x_7); @@ -3094,24 +2230,24 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_285 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_285, 0, x_1); -if (lean_is_scalar(x_253)) { - x_286 = lean_alloc_ctor(0, 2, 0); +x_273 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_273, 0, x_1); +if (lean_is_scalar(x_243)) { + x_274 = lean_alloc_ctor(0, 2, 0); } else { - x_286 = x_253; + x_274 = x_243; } -lean_ctor_set(x_286, 0, x_285); -lean_ctor_set(x_286, 1, x_252); -return x_286; +lean_ctor_set(x_274, 0, x_273); +lean_ctor_set(x_274, 1, x_242); +return x_274; } } else { -lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; -lean_dec(x_249); -lean_dec(x_247); -lean_dec(x_230); +lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; +lean_dec(x_239); +lean_dec(x_237); +lean_dec(x_220); lean_free_object(x_18); lean_dec(x_15); lean_dec(x_7); @@ -3121,121 +2257,121 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_287 = lean_ctor_get(x_250, 0); -lean_inc(x_287); -x_288 = lean_ctor_get(x_250, 1); -lean_inc(x_288); -if (lean_is_exclusive(x_250)) { - lean_ctor_release(x_250, 0); - lean_ctor_release(x_250, 1); - x_289 = x_250; +x_275 = lean_ctor_get(x_240, 0); +lean_inc(x_275); +x_276 = lean_ctor_get(x_240, 1); +lean_inc(x_276); +if (lean_is_exclusive(x_240)) { + lean_ctor_release(x_240, 0); + lean_ctor_release(x_240, 1); + x_277 = x_240; } else { - lean_dec_ref(x_250); - x_289 = lean_box(0); + lean_dec_ref(x_240); + x_277 = lean_box(0); } -if (lean_is_scalar(x_289)) { - x_290 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_277)) { + x_278 = lean_alloc_ctor(1, 2, 0); } else { - x_290 = x_289; + x_278 = x_277; } -lean_ctor_set(x_290, 0, x_287); -lean_ctor_set(x_290, 1, x_288); -return x_290; +lean_ctor_set(x_278, 0, x_275); +lean_ctor_set(x_278, 1, x_276); +return x_278; } } } else { -lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; uint8_t x_303; uint8_t x_304; uint8_t x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; -x_291 = lean_ctor_get(x_18, 0); -x_292 = lean_ctor_get(x_18, 1); -lean_inc(x_292); -lean_inc(x_291); +lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; uint8_t x_291; uint8_t x_292; uint8_t x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; +x_279 = lean_ctor_get(x_18, 0); +x_280 = lean_ctor_get(x_18, 1); +lean_inc(x_280); +lean_inc(x_279); lean_dec(x_18); -x_293 = l_Lean_Meta_Simp_getSEvalSimprocs___rarg(x_7, x_292); -x_294 = lean_ctor_get(x_293, 0); -lean_inc(x_294); -x_295 = lean_ctor_get(x_293, 1); -lean_inc(x_295); -if (lean_is_exclusive(x_293)) { - lean_ctor_release(x_293, 0); - lean_ctor_release(x_293, 1); - x_296 = x_293; +x_281 = l_Lean_Meta_Simp_getSEvalSimprocs___rarg(x_7, x_280); +x_282 = lean_ctor_get(x_281, 0); +lean_inc(x_282); +x_283 = lean_ctor_get(x_281, 1); +lean_inc(x_283); +if (lean_is_exclusive(x_281)) { + lean_ctor_release(x_281, 0); + lean_ctor_release(x_281, 1); + x_284 = x_281; } else { - lean_dec_ref(x_293); - x_296 = lean_box(0); + lean_dec_ref(x_281); + x_284 = lean_box(0); } -x_297 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_7, x_295); -x_298 = lean_ctor_get(x_297, 0); -lean_inc(x_298); -x_299 = lean_ctor_get(x_297, 1); -lean_inc(x_299); -if (lean_is_exclusive(x_297)) { - lean_ctor_release(x_297, 0); - lean_ctor_release(x_297, 1); - x_300 = x_297; +x_285 = l_Lean_Meta_getSimpCongrTheorems___rarg(x_7, x_283); +x_286 = lean_ctor_get(x_285, 0); +lean_inc(x_286); +x_287 = lean_ctor_get(x_285, 1); +lean_inc(x_287); +if (lean_is_exclusive(x_285)) { + lean_ctor_release(x_285, 0); + lean_ctor_release(x_285, 1); + x_288 = x_285; } else { - lean_dec_ref(x_297); - x_300 = lean_box(0); + lean_dec_ref(x_285); + x_288 = lean_box(0); } -x_301 = lean_ctor_get(x_2, 1); +x_289 = lean_ctor_get(x_2, 1); +lean_inc(x_289); +x_290 = lean_unsigned_to_nat(2u); +x_291 = 0; +x_292 = 1; +x_293 = 0; +x_294 = lean_alloc_ctor(0, 2, 19); +lean_ctor_set(x_294, 0, x_289); +lean_ctor_set(x_294, 1, x_290); +lean_ctor_set_uint8(x_294, sizeof(void*)*2, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 1, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 2, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 3, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 4, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 5, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 6, x_293); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 7, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 8, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 9, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 10, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 11, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 12, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 13, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 14, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 15, x_291); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 16, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 17, x_292); +lean_ctor_set_uint8(x_294, sizeof(void*)*2 + 18, x_292); +x_295 = lean_box(0); +if (lean_is_scalar(x_288)) { + x_296 = lean_alloc_ctor(1, 2, 0); +} else { + x_296 = x_288; + lean_ctor_set_tag(x_296, 1); +} +lean_ctor_set(x_296, 0, x_279); +lean_ctor_set(x_296, 1, x_295); +if (lean_is_scalar(x_284)) { + x_297 = lean_alloc_ctor(1, 2, 0); +} else { + x_297 = x_284; + lean_ctor_set_tag(x_297, 1); +} +lean_ctor_set(x_297, 0, x_11); +lean_ctor_set(x_297, 1, x_296); +x_298 = lean_array_mk(x_297); +x_299 = l_Lean_Meta_Simp_mkContext(x_294, x_298, x_286, x_4, x_5, x_6, x_7, x_287); +x_300 = lean_ctor_get(x_299, 0); +lean_inc(x_300); +x_301 = lean_ctor_get(x_299, 1); lean_inc(x_301); -x_302 = lean_unsigned_to_nat(2u); -x_303 = 0; -x_304 = 1; -x_305 = 0; -x_306 = lean_alloc_ctor(0, 2, 19); -lean_ctor_set(x_306, 0, x_301); -lean_ctor_set(x_306, 1, x_302); -lean_ctor_set_uint8(x_306, sizeof(void*)*2, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 1, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 2, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 3, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 4, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 5, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 6, x_305); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 7, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 8, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 9, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 10, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 11, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 12, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 13, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 14, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 15, x_303); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 16, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 17, x_304); -lean_ctor_set_uint8(x_306, sizeof(void*)*2 + 18, x_304); -x_307 = lean_box(0); -if (lean_is_scalar(x_300)) { - x_308 = lean_alloc_ctor(1, 2, 0); +if (lean_is_exclusive(x_299)) { + lean_ctor_release(x_299, 0); + lean_ctor_release(x_299, 1); + x_302 = x_299; } else { - x_308 = x_300; - lean_ctor_set_tag(x_308, 1); -} -lean_ctor_set(x_308, 0, x_291); -lean_ctor_set(x_308, 1, x_307); -if (lean_is_scalar(x_296)) { - x_309 = lean_alloc_ctor(1, 2, 0); -} else { - x_309 = x_296; - lean_ctor_set_tag(x_309, 1); -} -lean_ctor_set(x_309, 0, x_11); -lean_ctor_set(x_309, 1, x_308); -x_310 = lean_array_mk(x_309); -x_311 = l_Lean_Meta_Simp_mkContext(x_306, x_310, x_298, x_4, x_5, x_6, x_7, x_299); -x_312 = lean_ctor_get(x_311, 0); -lean_inc(x_312); -x_313 = lean_ctor_get(x_311, 1); -lean_inc(x_313); -if (lean_is_exclusive(x_311)) { - lean_ctor_release(x_311, 0); - lean_ctor_release(x_311, 1); - x_314 = x_311; -} else { - lean_dec_ref(x_311); - x_314 = lean_box(0); + lean_dec_ref(x_299); + x_302 = lean_box(0); } lean_inc(x_7); lean_inc(x_6); @@ -3244,203 +2380,197 @@ lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_315 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_313); -if (lean_obj_tag(x_315) == 0) +x_303 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_301); +if (lean_obj_tag(x_303) == 0) { -lean_object* x_316; lean_object* x_317; lean_object* x_318; uint8_t x_319; -x_316 = lean_ctor_get(x_315, 0); -lean_inc(x_316); -x_317 = lean_ctor_get(x_315, 1); -lean_inc(x_317); -if (lean_is_exclusive(x_315)) { - lean_ctor_release(x_315, 0); - lean_ctor_release(x_315, 1); - x_318 = x_315; +lean_object* x_304; lean_object* x_305; lean_object* x_306; uint8_t x_307; +x_304 = lean_ctor_get(x_303, 0); +lean_inc(x_304); +x_305 = lean_ctor_get(x_303, 1); +lean_inc(x_305); +if (lean_is_exclusive(x_303)) { + lean_ctor_release(x_303, 0); + lean_ctor_release(x_303, 1); + x_306 = x_303; } else { - lean_dec_ref(x_315); - x_318 = lean_box(0); + lean_dec_ref(x_303); + x_306 = lean_box(0); } -x_319 = l_Array_isEmpty___rarg(x_316); -if (x_319 == 0) +x_307 = l_Array_isEmpty___rarg(x_304); +if (x_307 == 0) { -lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; lean_object* x_325; -lean_dec(x_318); -if (lean_is_scalar(x_314)) { - x_320 = lean_alloc_ctor(1, 2, 0); +lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; +lean_dec(x_306); +if (lean_is_scalar(x_302)) { + x_308 = lean_alloc_ctor(1, 2, 0); } else { - x_320 = x_314; - lean_ctor_set_tag(x_320, 1); + x_308 = x_302; + lean_ctor_set_tag(x_308, 1); } -lean_ctor_set(x_320, 0, x_294); -lean_ctor_set(x_320, 1, x_307); -x_321 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_321, 0, x_15); -lean_ctor_set(x_321, 1, x_320); -x_322 = lean_array_mk(x_321); -x_323 = lean_box(0); -x_324 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; +lean_ctor_set(x_308, 0, x_282); +lean_ctor_set(x_308, 1, x_295); +x_309 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_309, 0, x_15); +lean_ctor_set(x_309, 1, x_308); +x_310 = lean_array_mk(x_309); +x_311 = lean_box(0); +x_312 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11; lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_325 = l_Lean_Meta_simpGoal(x_1, x_312, x_322, x_323, x_304, x_316, x_324, x_4, x_5, x_6, x_7, x_317); -if (lean_obj_tag(x_325) == 0) +x_313 = l_Lean_Meta_simpGoal(x_1, x_300, x_310, x_311, x_292, x_304, x_312, x_4, x_5, x_6, x_7, x_305); +if (lean_obj_tag(x_313) == 0) { -lean_object* x_326; lean_object* x_327; -x_326 = lean_ctor_get(x_325, 0); -lean_inc(x_326); -x_327 = lean_ctor_get(x_326, 0); -lean_inc(x_327); -lean_dec(x_326); -if (lean_obj_tag(x_327) == 0) -{ -lean_object* x_328; lean_object* x_329; lean_object* x_330; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_328 = lean_ctor_get(x_325, 1); -lean_inc(x_328); -if (lean_is_exclusive(x_325)) { - lean_ctor_release(x_325, 0); - lean_ctor_release(x_325, 1); - x_329 = x_325; -} else { - lean_dec_ref(x_325); - x_329 = lean_box(0); -} -if (lean_is_scalar(x_329)) { - x_330 = lean_alloc_ctor(0, 2, 0); -} else { - x_330 = x_329; -} -lean_ctor_set(x_330, 0, x_323); -lean_ctor_set(x_330, 1, x_328); -return x_330; -} -else -{ -lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; -x_331 = lean_ctor_get(x_327, 0); -lean_inc(x_331); -if (lean_is_exclusive(x_327)) { - lean_ctor_release(x_327, 0); - x_332 = x_327; -} else { - lean_dec_ref(x_327); - x_332 = lean_box(0); -} -x_333 = lean_ctor_get(x_325, 1); -lean_inc(x_333); -lean_dec(x_325); -x_334 = lean_ctor_get(x_331, 1); -lean_inc(x_334); -lean_dec(x_331); -lean_inc(x_334); -x_335 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__1___boxed), 8, 1); -lean_closure_set(x_335, 0, x_334); -x_336 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12; -x_337 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__2___rarg), 9, 2); -lean_closure_set(x_337, 0, x_335); -lean_closure_set(x_337, 1, x_336); -lean_inc(x_334); -x_338 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_334, x_337, x_2, x_3, x_4, x_5, x_6, x_7, x_333); -if (lean_obj_tag(x_338) == 0) -{ -lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; -x_339 = lean_ctor_get(x_338, 1); -lean_inc(x_339); -if (lean_is_exclusive(x_338)) { - lean_ctor_release(x_338, 0); - lean_ctor_release(x_338, 1); - x_340 = x_338; -} else { - lean_dec_ref(x_338); - x_340 = lean_box(0); -} -if (lean_is_scalar(x_332)) { - x_341 = lean_alloc_ctor(1, 1, 0); -} else { - x_341 = x_332; -} -lean_ctor_set(x_341, 0, x_334); -if (lean_is_scalar(x_340)) { - x_342 = lean_alloc_ctor(0, 2, 0); -} else { - x_342 = x_340; -} -lean_ctor_set(x_342, 0, x_341); -lean_ctor_set(x_342, 1, x_339); -return x_342; -} -else -{ -lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; -lean_dec(x_334); -lean_dec(x_332); -x_343 = lean_ctor_get(x_338, 0); -lean_inc(x_343); -x_344 = lean_ctor_get(x_338, 1); -lean_inc(x_344); -if (lean_is_exclusive(x_338)) { - lean_ctor_release(x_338, 0); - lean_ctor_release(x_338, 1); - x_345 = x_338; -} else { - lean_dec_ref(x_338); - x_345 = lean_box(0); -} -if (lean_is_scalar(x_345)) { - x_346 = lean_alloc_ctor(1, 2, 0); -} else { - x_346 = x_345; -} -lean_ctor_set(x_346, 0, x_343); -lean_ctor_set(x_346, 1, x_344); -return x_346; -} -} -} -else -{ -lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_347 = lean_ctor_get(x_325, 0); -lean_inc(x_347); -x_348 = lean_ctor_get(x_325, 1); -lean_inc(x_348); -if (lean_is_exclusive(x_325)) { - lean_ctor_release(x_325, 0); - lean_ctor_release(x_325, 1); - x_349 = x_325; -} else { - lean_dec_ref(x_325); - x_349 = lean_box(0); -} -if (lean_is_scalar(x_349)) { - x_350 = lean_alloc_ctor(1, 2, 0); -} else { - x_350 = x_349; -} -lean_ctor_set(x_350, 0, x_347); -lean_ctor_set(x_350, 1, x_348); -return x_350; -} -} -else -{ -lean_object* x_351; lean_object* x_352; -lean_dec(x_316); +lean_object* x_314; lean_object* x_315; +x_314 = lean_ctor_get(x_313, 0); +lean_inc(x_314); +x_315 = lean_ctor_get(x_314, 0); +lean_inc(x_315); lean_dec(x_314); -lean_dec(x_312); -lean_dec(x_294); +if (lean_obj_tag(x_315) == 0) +{ +lean_object* x_316; lean_object* x_317; lean_object* x_318; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_316 = lean_ctor_get(x_313, 1); +lean_inc(x_316); +if (lean_is_exclusive(x_313)) { + lean_ctor_release(x_313, 0); + lean_ctor_release(x_313, 1); + x_317 = x_313; +} else { + lean_dec_ref(x_313); + x_317 = lean_box(0); +} +if (lean_is_scalar(x_317)) { + x_318 = lean_alloc_ctor(0, 2, 0); +} else { + x_318 = x_317; +} +lean_ctor_set(x_318, 0, x_311); +lean_ctor_set(x_318, 1, x_316); +return x_318; +} +else +{ +lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; +x_319 = lean_ctor_get(x_315, 0); +lean_inc(x_319); +if (lean_is_exclusive(x_315)) { + lean_ctor_release(x_315, 0); + x_320 = x_315; +} else { + lean_dec_ref(x_315); + x_320 = lean_box(0); +} +x_321 = lean_ctor_get(x_313, 1); +lean_inc(x_321); +lean_dec(x_313); +x_322 = lean_ctor_get(x_319, 1); +lean_inc(x_322); +lean_dec(x_319); +x_323 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13; +lean_inc(x_322); +x_324 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__3___rarg(x_322, x_323, x_2, x_3, x_4, x_5, x_6, x_7, x_321); +if (lean_obj_tag(x_324) == 0) +{ +lean_object* x_325; lean_object* x_326; lean_object* x_327; lean_object* x_328; +x_325 = lean_ctor_get(x_324, 1); +lean_inc(x_325); +if (lean_is_exclusive(x_324)) { + lean_ctor_release(x_324, 0); + lean_ctor_release(x_324, 1); + x_326 = x_324; +} else { + lean_dec_ref(x_324); + x_326 = lean_box(0); +} +if (lean_is_scalar(x_320)) { + x_327 = lean_alloc_ctor(1, 1, 0); +} else { + x_327 = x_320; +} +lean_ctor_set(x_327, 0, x_322); +if (lean_is_scalar(x_326)) { + x_328 = lean_alloc_ctor(0, 2, 0); +} else { + x_328 = x_326; +} +lean_ctor_set(x_328, 0, x_327); +lean_ctor_set(x_328, 1, x_325); +return x_328; +} +else +{ +lean_object* x_329; lean_object* x_330; lean_object* x_331; lean_object* x_332; +lean_dec(x_322); +lean_dec(x_320); +x_329 = lean_ctor_get(x_324, 0); +lean_inc(x_329); +x_330 = lean_ctor_get(x_324, 1); +lean_inc(x_330); +if (lean_is_exclusive(x_324)) { + lean_ctor_release(x_324, 0); + lean_ctor_release(x_324, 1); + x_331 = x_324; +} else { + lean_dec_ref(x_324); + x_331 = lean_box(0); +} +if (lean_is_scalar(x_331)) { + x_332 = lean_alloc_ctor(1, 2, 0); +} else { + x_332 = x_331; +} +lean_ctor_set(x_332, 0, x_329); +lean_ctor_set(x_332, 1, x_330); +return x_332; +} +} +} +else +{ +lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_333 = lean_ctor_get(x_313, 0); +lean_inc(x_333); +x_334 = lean_ctor_get(x_313, 1); +lean_inc(x_334); +if (lean_is_exclusive(x_313)) { + lean_ctor_release(x_313, 0); + lean_ctor_release(x_313, 1); + x_335 = x_313; +} else { + lean_dec_ref(x_313); + x_335 = lean_box(0); +} +if (lean_is_scalar(x_335)) { + x_336 = lean_alloc_ctor(1, 2, 0); +} else { + x_336 = x_335; +} +lean_ctor_set(x_336, 0, x_333); +lean_ctor_set(x_336, 1, x_334); +return x_336; +} +} +else +{ +lean_object* x_337; lean_object* x_338; +lean_dec(x_304); +lean_dec(x_302); +lean_dec(x_300); +lean_dec(x_282); lean_dec(x_15); lean_dec(x_7); lean_dec(x_6); @@ -3448,24 +2578,24 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_351 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_351, 0, x_1); -if (lean_is_scalar(x_318)) { - x_352 = lean_alloc_ctor(0, 2, 0); +x_337 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_337, 0, x_1); +if (lean_is_scalar(x_306)) { + x_338 = lean_alloc_ctor(0, 2, 0); } else { - x_352 = x_318; + x_338 = x_306; } -lean_ctor_set(x_352, 0, x_351); -lean_ctor_set(x_352, 1, x_317); -return x_352; +lean_ctor_set(x_338, 0, x_337); +lean_ctor_set(x_338, 1, x_305); +return x_338; } } else { -lean_object* x_353; lean_object* x_354; lean_object* x_355; lean_object* x_356; -lean_dec(x_314); -lean_dec(x_312); -lean_dec(x_294); +lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; +lean_dec(x_302); +lean_dec(x_300); +lean_dec(x_282); lean_dec(x_15); lean_dec(x_7); lean_dec(x_6); @@ -3474,26 +2604,26 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_353 = lean_ctor_get(x_315, 0); -lean_inc(x_353); -x_354 = lean_ctor_get(x_315, 1); -lean_inc(x_354); -if (lean_is_exclusive(x_315)) { - lean_ctor_release(x_315, 0); - lean_ctor_release(x_315, 1); - x_355 = x_315; +x_339 = lean_ctor_get(x_303, 0); +lean_inc(x_339); +x_340 = lean_ctor_get(x_303, 1); +lean_inc(x_340); +if (lean_is_exclusive(x_303)) { + lean_ctor_release(x_303, 0); + lean_ctor_release(x_303, 1); + x_341 = x_303; } else { - lean_dec_ref(x_315); - x_355 = lean_box(0); + lean_dec_ref(x_303); + x_341 = lean_box(0); } -if (lean_is_scalar(x_355)) { - x_356 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_341)) { + x_342 = lean_alloc_ctor(1, 2, 0); } else { - x_356 = x_355; + x_342 = x_341; } -lean_ctor_set(x_356, 0, x_353); -lean_ctor_set(x_356, 1, x_354); -return x_356; +lean_ctor_set(x_342, 0, x_339); +lean_ctor_set(x_342, 1, x_340); +return x_342; } } } @@ -3544,21 +2674,6 @@ x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__ return x_1; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_10; -} -} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -3610,46 +2725,12 @@ lean_dec_ref(res); res = initialize_Lean_Elab_Tactic_BVDecide_Frontend_Attr(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__1); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__2); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__3); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__4); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__5); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__6); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__7); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__8); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__9); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__10); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__11); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__12); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__13); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___spec__1___closed__14); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___lambda__2___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__1); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__1); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__2); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__3); -l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4(); -lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___spec__1___closed__4); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass_getHyps___closed__2); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__2(); @@ -3674,6 +2755,8 @@ l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___c lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__11); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__12); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___elambda__1___closed__13); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__1); l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_rewriteRulesPass___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Structures.c b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Structures.c new file mode 100644 index 0000000000..e6b7aba87c --- /dev/null +++ b/stage0/stdlib/Lean/Elab/Tactic/BVDecide/Frontend/Normalize/Structures.c @@ -0,0 +1,5320 @@ +// Lean compiler output +// Module: Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Structures +// Imports: Lean.Elab.Tactic.BVDecide.Frontend.Normalize.Basic Lean.Meta.Tactic.Cases +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(lean_object*); +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7(lean_object*); +static lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_getNatValue_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(lean_object*, uint8_t, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6; +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_uint64_to_usize(uint64_t); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isApp(lean_object*); +static lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_mk_array(lean_object*, lean_object*); +uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_fvarId_x21(lean_object*); +lean_object* l_Lean_Environment_find_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12; +lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +lean_object* l_Lean_stringToMessageData(lean_object*); +lean_object* l_List_head_x21___rarg(lean_object*, lean_object*); +lean_object* l_Lean_MVarId_casesRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7(lean_object*, size_t, size_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1; +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_of_nat(lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__4(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_st_ref_take(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markUninteresting___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint64_t lean_uint64_shift_right(uint64_t, uint64_t); +LEAN_EXPORT lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_StateRefT_x27_lift___rarg___boxed(lean_object*, lean_object*); +lean_object* lean_nat_div(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markUninteresting(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4; +lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1; +lean_object* lean_st_mk_ref(lean_object*, lean_object*); +static lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_constName_x3f(lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7; +lean_object* l_Lean_FVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_name_eq(lean_object*, lean_object*); +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__3(lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_LocalDecl_isLet(lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11; +uint8_t l_Lean_LocalDecl_isImplementationDetail(lean_object*); +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1(lean_object*, uint8_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1; +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1___boxed(lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint64_t l_Lean_Name_hash___override(lean_object*); +lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_LocalDecl_type(lean_object*); +uint64_t lean_uint64_xor(uint64_t, uint64_t); +lean_object* l_Lean_Expr_getAppFn(lean_object*); +uint8_t l_Lean_isStructure(lean_object*, lean_object*); +lean_object* lean_nat_mul(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16; +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(lean_object*, lean_object*); +size_t lean_usize_sub(size_t, size_t); +static lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1; +static lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_add(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_instInhabitedName; +lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3; +size_t lean_array_size(lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2; +lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14; +lean_object* lean_nat_add(lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1; +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4; +lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +static lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10; +size_t lean_usize_land(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_3; +x_3 = lean_box(0); +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_4 = lean_ctor_get(x_2, 0); +x_5 = lean_ctor_get(x_2, 1); +x_6 = lean_ctor_get(x_2, 2); +x_7 = lean_name_eq(x_4, x_1); +if (x_7 == 0) +{ +x_2 = x_6; +goto _start; +} +else +{ +lean_object* x_9; +lean_inc(x_5); +x_9 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_9, 0, x_5); +return x_9; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_st_ref_get(x_2, x_7); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint64_t x_13; uint64_t x_14; uint64_t x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; size_t x_20; size_t x_21; size_t x_22; size_t x_23; size_t x_24; lean_object* x_25; lean_object* x_26; +x_10 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_10, 1); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_array_get_size(x_11); +x_13 = l_Lean_Name_hash___override(x_1); +x_14 = 32; +x_15 = lean_uint64_shift_right(x_13, x_14); +x_16 = lean_uint64_xor(x_13, x_15); +x_17 = 16; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = lean_uint64_to_usize(x_19); +x_21 = lean_usize_of_nat(x_12); +lean_dec(x_12); +x_22 = 1; +x_23 = lean_usize_sub(x_21, x_22); +x_24 = lean_usize_land(x_20, x_23); +x_25 = lean_array_uget(x_11, x_24); +lean_dec(x_11); +x_26 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(x_1, x_25); +lean_dec(x_25); +lean_ctor_set(x_8, 0, x_26); +return x_8; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint64_t x_31; uint64_t x_32; uint64_t x_33; uint64_t x_34; uint64_t x_35; uint64_t x_36; uint64_t x_37; size_t x_38; size_t x_39; size_t x_40; size_t x_41; size_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_27 = lean_ctor_get(x_8, 0); +x_28 = lean_ctor_get(x_8, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_8); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = lean_array_get_size(x_29); +x_31 = l_Lean_Name_hash___override(x_1); +x_32 = 32; +x_33 = lean_uint64_shift_right(x_31, x_32); +x_34 = lean_uint64_xor(x_31, x_33); +x_35 = 16; +x_36 = lean_uint64_shift_right(x_34, x_35); +x_37 = lean_uint64_xor(x_34, x_36); +x_38 = lean_uint64_to_usize(x_37); +x_39 = lean_usize_of_nat(x_30); +lean_dec(x_30); +x_40 = 1; +x_41 = lean_usize_sub(x_39, x_40); +x_42 = lean_usize_land(x_38, x_41); +x_43 = lean_array_uget(x_29, x_42); +lean_dec(x_29); +x_44 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(x_1, x_43); +lean_dec(x_43); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_28); +return x_45; +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +uint8_t x_3; +x_3 = 0; +return x_3; +} +else +{ +lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_4 = lean_ctor_get(x_2, 0); +x_5 = lean_ctor_get(x_2, 2); +x_6 = lean_name_eq(x_4, x_1); +if (x_6 == 0) +{ +x_2 = x_5; +goto _start; +} +else +{ +uint8_t x_8; +x_8 = 1; +return x_8; +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__4(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +return x_1; +} +else +{ +uint8_t x_3; +x_3 = !lean_is_exclusive(x_2); +if (x_3 == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint64_t x_7; uint64_t x_8; uint64_t x_9; uint64_t x_10; uint64_t x_11; uint64_t x_12; uint64_t x_13; size_t x_14; size_t x_15; size_t x_16; size_t x_17; size_t x_18; lean_object* x_19; lean_object* x_20; +x_4 = lean_ctor_get(x_2, 0); +x_5 = lean_ctor_get(x_2, 2); +x_6 = lean_array_get_size(x_1); +x_7 = l_Lean_Name_hash___override(x_4); +x_8 = 32; +x_9 = lean_uint64_shift_right(x_7, x_8); +x_10 = lean_uint64_xor(x_7, x_9); +x_11 = 16; +x_12 = lean_uint64_shift_right(x_10, x_11); +x_13 = lean_uint64_xor(x_10, x_12); +x_14 = lean_uint64_to_usize(x_13); +x_15 = lean_usize_of_nat(x_6); +lean_dec(x_6); +x_16 = 1; +x_17 = lean_usize_sub(x_15, x_16); +x_18 = lean_usize_land(x_14, x_17); +x_19 = lean_array_uget(x_1, x_18); +lean_ctor_set(x_2, 2, x_19); +x_20 = lean_array_uset(x_1, x_18, x_2); +x_1 = x_20; +x_2 = x_5; +goto _start; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint64_t x_26; uint64_t x_27; uint64_t x_28; uint64_t x_29; uint64_t x_30; uint64_t x_31; uint64_t x_32; size_t x_33; size_t x_34; size_t x_35; size_t x_36; size_t x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_22 = lean_ctor_get(x_2, 0); +x_23 = lean_ctor_get(x_2, 1); +x_24 = lean_ctor_get(x_2, 2); +lean_inc(x_24); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_2); +x_25 = lean_array_get_size(x_1); +x_26 = l_Lean_Name_hash___override(x_22); +x_27 = 32; +x_28 = lean_uint64_shift_right(x_26, x_27); +x_29 = lean_uint64_xor(x_26, x_28); +x_30 = 16; +x_31 = lean_uint64_shift_right(x_29, x_30); +x_32 = lean_uint64_xor(x_29, x_31); +x_33 = lean_uint64_to_usize(x_32); +x_34 = lean_usize_of_nat(x_25); +lean_dec(x_25); +x_35 = 1; +x_36 = lean_usize_sub(x_34, x_35); +x_37 = lean_usize_land(x_33, x_36); +x_38 = lean_array_uget(x_1, x_37); +x_39 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_39, 0, x_22); +lean_ctor_set(x_39, 1, x_23); +lean_ctor_set(x_39, 2, x_38); +x_40 = lean_array_uset(x_1, x_37, x_39); +x_1 = x_40; +x_2 = x_24; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_array_get_size(x_2); +x_5 = lean_nat_dec_lt(x_1, x_4); +lean_dec(x_4); +if (x_5 == 0) +{ +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_6 = lean_array_fget(x_2, x_1); +x_7 = lean_box(0); +x_8 = lean_array_fset(x_2, x_1, x_7); +x_9 = l_Std_DHashMap_Internal_AssocList_foldlM___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__4(x_3, x_6); +x_10 = lean_unsigned_to_nat(1u); +x_11 = lean_nat_add(x_1, x_10); +lean_dec(x_1); +x_1 = x_11; +x_2 = x_8; +x_3 = x_9; +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_2 = lean_array_get_size(x_1); +x_3 = lean_unsigned_to_nat(2u); +x_4 = lean_nat_mul(x_2, x_3); +lean_dec(x_2); +x_5 = lean_box(0); +x_6 = lean_mk_array(x_4, x_5); +x_7 = lean_unsigned_to_nat(0u); +x_8 = l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__3(x_7, x_1, x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(lean_object* x_1, uint8_t x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; +lean_dec(x_1); +x_4 = lean_box(0); +return x_4; +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_3); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; +x_6 = lean_ctor_get(x_3, 0); +x_7 = lean_ctor_get(x_3, 1); +x_8 = lean_ctor_get(x_3, 2); +x_9 = lean_name_eq(x_6, x_1); +if (x_9 == 0) +{ +lean_object* x_10; +x_10 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_2, x_8); +lean_ctor_set(x_3, 2, x_10); +return x_3; +} +else +{ +lean_object* x_11; +lean_dec(x_7); +lean_dec(x_6); +x_11 = lean_box(x_2); +lean_ctor_set(x_3, 1, x_11); +lean_ctor_set(x_3, 0, x_1); +return x_3; +} +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_12 = lean_ctor_get(x_3, 0); +x_13 = lean_ctor_get(x_3, 1); +x_14 = lean_ctor_get(x_3, 2); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_3); +x_15 = lean_name_eq(x_12, x_1); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_2, x_14); +x_17 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_17, 0, x_12); +lean_ctor_set(x_17, 1, x_13); +lean_ctor_set(x_17, 2, x_16); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_13); +lean_dec(x_12); +x_18 = lean_box(x_2); +x_19 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_19, 0, x_1); +lean_ctor_set(x_19, 1, x_18); +lean_ctor_set(x_19, 2, x_14); +return x_19; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = lean_st_ref_take(x_2, x_7); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = !lean_is_exclusive(x_9); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; uint64_t x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; size_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; lean_object* x_27; uint8_t x_28; +x_12 = lean_ctor_get(x_9, 0); +x_13 = lean_ctor_get(x_9, 1); +x_14 = lean_array_get_size(x_13); +x_15 = l_Lean_Name_hash___override(x_1); +x_16 = 32; +x_17 = lean_uint64_shift_right(x_15, x_16); +x_18 = lean_uint64_xor(x_15, x_17); +x_19 = 16; +x_20 = lean_uint64_shift_right(x_18, x_19); +x_21 = lean_uint64_xor(x_18, x_20); +x_22 = lean_uint64_to_usize(x_21); +x_23 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_24 = 1; +x_25 = lean_usize_sub(x_23, x_24); +x_26 = lean_usize_land(x_22, x_25); +x_27 = lean_array_uget(x_13, x_26); +x_28 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_29 = lean_unsigned_to_nat(1u); +x_30 = lean_nat_add(x_12, x_29); +lean_dec(x_12); +x_31 = 1; +x_32 = lean_box(x_31); +x_33 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_33, 0, x_1); +lean_ctor_set(x_33, 1, x_32); +lean_ctor_set(x_33, 2, x_27); +x_34 = lean_array_uset(x_13, x_26, x_33); +x_35 = lean_unsigned_to_nat(4u); +x_36 = lean_nat_mul(x_30, x_35); +x_37 = lean_unsigned_to_nat(3u); +x_38 = lean_nat_div(x_36, x_37); +lean_dec(x_36); +x_39 = lean_array_get_size(x_34); +x_40 = lean_nat_dec_le(x_38, x_39); +lean_dec(x_39); +lean_dec(x_38); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_34); +lean_ctor_set(x_9, 1, x_41); +lean_ctor_set(x_9, 0, x_30); +x_42 = lean_st_ref_set(x_2, x_9, x_10); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_42, 0); +lean_dec(x_44); +x_45 = lean_box(0); +lean_ctor_set(x_42, 0, x_45); +return x_42; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); +lean_dec(x_42); +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +return x_48; +} +} +else +{ +lean_object* x_49; uint8_t x_50; +lean_ctor_set(x_9, 1, x_34); +lean_ctor_set(x_9, 0, x_30); +x_49 = lean_st_ref_set(x_2, x_9, x_10); +x_50 = !lean_is_exclusive(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = lean_ctor_get(x_49, 0); +lean_dec(x_51); +x_52 = lean_box(0); +lean_ctor_set(x_49, 0, x_52); +return x_49; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_49, 1); +lean_inc(x_53); +lean_dec(x_49); +x_54 = lean_box(0); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_53); +return x_55; +} +} +} +else +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; +x_56 = lean_box(0); +x_57 = lean_array_uset(x_13, x_26, x_56); +x_58 = 1; +x_59 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_58, x_27); +x_60 = lean_array_uset(x_57, x_26, x_59); +lean_ctor_set(x_9, 1, x_60); +x_61 = lean_st_ref_set(x_2, x_9, x_10); +x_62 = !lean_is_exclusive(x_61); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_61, 0); +lean_dec(x_63); +x_64 = lean_box(0); +lean_ctor_set(x_61, 0, x_64); +return x_61; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_61, 1); +lean_inc(x_65); +lean_dec(x_61); +x_66 = lean_box(0); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_65); +return x_67; +} +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; uint64_t x_71; uint64_t x_72; uint64_t x_73; uint64_t x_74; uint64_t x_75; uint64_t x_76; uint64_t x_77; size_t x_78; size_t x_79; size_t x_80; size_t x_81; size_t x_82; lean_object* x_83; uint8_t x_84; +x_68 = lean_ctor_get(x_9, 0); +x_69 = lean_ctor_get(x_9, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_9); +x_70 = lean_array_get_size(x_69); +x_71 = l_Lean_Name_hash___override(x_1); +x_72 = 32; +x_73 = lean_uint64_shift_right(x_71, x_72); +x_74 = lean_uint64_xor(x_71, x_73); +x_75 = 16; +x_76 = lean_uint64_shift_right(x_74, x_75); +x_77 = lean_uint64_xor(x_74, x_76); +x_78 = lean_uint64_to_usize(x_77); +x_79 = lean_usize_of_nat(x_70); +lean_dec(x_70); +x_80 = 1; +x_81 = lean_usize_sub(x_79, x_80); +x_82 = lean_usize_land(x_78, x_81); +x_83 = lean_array_uget(x_69, x_82); +x_84 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_83); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; uint8_t x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_85 = lean_unsigned_to_nat(1u); +x_86 = lean_nat_add(x_68, x_85); +lean_dec(x_68); +x_87 = 1; +x_88 = lean_box(x_87); +x_89 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_89, 0, x_1); +lean_ctor_set(x_89, 1, x_88); +lean_ctor_set(x_89, 2, x_83); +x_90 = lean_array_uset(x_69, x_82, x_89); +x_91 = lean_unsigned_to_nat(4u); +x_92 = lean_nat_mul(x_86, x_91); +x_93 = lean_unsigned_to_nat(3u); +x_94 = lean_nat_div(x_92, x_93); +lean_dec(x_92); +x_95 = lean_array_get_size(x_90); +x_96 = lean_nat_dec_le(x_94, x_95); +lean_dec(x_95); +lean_dec(x_94); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_97 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_90); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_86); +lean_ctor_set(x_98, 1, x_97); +x_99 = lean_st_ref_set(x_2, x_98, x_10); +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_101 = x_99; +} else { + lean_dec_ref(x_99); + x_101 = lean_box(0); +} +x_102 = lean_box(0); +if (lean_is_scalar(x_101)) { + x_103 = lean_alloc_ctor(0, 2, 0); +} else { + x_103 = x_101; +} +lean_ctor_set(x_103, 0, x_102); +lean_ctor_set(x_103, 1, x_100); +return x_103; +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_86); +lean_ctor_set(x_104, 1, x_90); +x_105 = lean_st_ref_set(x_2, x_104, x_10); +x_106 = lean_ctor_get(x_105, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_107 = x_105; +} else { + lean_dec_ref(x_105); + x_107 = lean_box(0); +} +x_108 = lean_box(0); +if (lean_is_scalar(x_107)) { + x_109 = lean_alloc_ctor(0, 2, 0); +} else { + x_109 = x_107; +} +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set(x_109, 1, x_106); +return x_109; +} +} +else +{ +lean_object* x_110; lean_object* x_111; uint8_t x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_110 = lean_box(0); +x_111 = lean_array_uset(x_69, x_82, x_110); +x_112 = 1; +x_113 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_112, x_83); +x_114 = lean_array_uset(x_111, x_82, x_113); +x_115 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_115, 0, x_68); +lean_ctor_set(x_115, 1, x_114); +x_116 = lean_st_ref_set(x_2, x_115, x_10); +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +if (lean_is_exclusive(x_116)) { + lean_ctor_release(x_116, 0); + lean_ctor_release(x_116, 1); + x_118 = x_116; +} else { + lean_dec_ref(x_116); + x_118 = lean_box(0); +} +x_119 = lean_box(0); +if (lean_is_scalar(x_118)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_118; +} +lean_ctor_set(x_120, 0, x_119); +lean_ctor_set(x_120, 1, x_117); +return x_120; +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = lean_unbox(x_2); +lean_dec(x_2); +x_5 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_4, x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markUninteresting(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = lean_st_ref_take(x_2, x_7); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = !lean_is_exclusive(x_9); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; uint64_t x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; size_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; lean_object* x_27; uint8_t x_28; +x_12 = lean_ctor_get(x_9, 0); +x_13 = lean_ctor_get(x_9, 1); +x_14 = lean_array_get_size(x_13); +x_15 = l_Lean_Name_hash___override(x_1); +x_16 = 32; +x_17 = lean_uint64_shift_right(x_15, x_16); +x_18 = lean_uint64_xor(x_15, x_17); +x_19 = 16; +x_20 = lean_uint64_shift_right(x_18, x_19); +x_21 = lean_uint64_xor(x_18, x_20); +x_22 = lean_uint64_to_usize(x_21); +x_23 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_24 = 1; +x_25 = lean_usize_sub(x_23, x_24); +x_26 = lean_usize_land(x_22, x_25); +x_27 = lean_array_uget(x_13, x_26); +x_28 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_29 = lean_unsigned_to_nat(1u); +x_30 = lean_nat_add(x_12, x_29); +lean_dec(x_12); +x_31 = 0; +x_32 = lean_box(x_31); +x_33 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_33, 0, x_1); +lean_ctor_set(x_33, 1, x_32); +lean_ctor_set(x_33, 2, x_27); +x_34 = lean_array_uset(x_13, x_26, x_33); +x_35 = lean_unsigned_to_nat(4u); +x_36 = lean_nat_mul(x_30, x_35); +x_37 = lean_unsigned_to_nat(3u); +x_38 = lean_nat_div(x_36, x_37); +lean_dec(x_36); +x_39 = lean_array_get_size(x_34); +x_40 = lean_nat_dec_le(x_38, x_39); +lean_dec(x_39); +lean_dec(x_38); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_41 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_34); +lean_ctor_set(x_9, 1, x_41); +lean_ctor_set(x_9, 0, x_30); +x_42 = lean_st_ref_set(x_2, x_9, x_10); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_42, 0); +lean_dec(x_44); +x_45 = lean_box(0); +lean_ctor_set(x_42, 0, x_45); +return x_42; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); +lean_dec(x_42); +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +return x_48; +} +} +else +{ +lean_object* x_49; uint8_t x_50; +lean_ctor_set(x_9, 1, x_34); +lean_ctor_set(x_9, 0, x_30); +x_49 = lean_st_ref_set(x_2, x_9, x_10); +x_50 = !lean_is_exclusive(x_49); +if (x_50 == 0) +{ +lean_object* x_51; lean_object* x_52; +x_51 = lean_ctor_get(x_49, 0); +lean_dec(x_51); +x_52 = lean_box(0); +lean_ctor_set(x_49, 0, x_52); +return x_49; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_49, 1); +lean_inc(x_53); +lean_dec(x_49); +x_54 = lean_box(0); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_53); +return x_55; +} +} +} +else +{ +lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; +x_56 = lean_box(0); +x_57 = lean_array_uset(x_13, x_26, x_56); +x_58 = 0; +x_59 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_58, x_27); +x_60 = lean_array_uset(x_57, x_26, x_59); +lean_ctor_set(x_9, 1, x_60); +x_61 = lean_st_ref_set(x_2, x_9, x_10); +x_62 = !lean_is_exclusive(x_61); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; +x_63 = lean_ctor_get(x_61, 0); +lean_dec(x_63); +x_64 = lean_box(0); +lean_ctor_set(x_61, 0, x_64); +return x_61; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_61, 1); +lean_inc(x_65); +lean_dec(x_61); +x_66 = lean_box(0); +x_67 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_67, 0, x_66); +lean_ctor_set(x_67, 1, x_65); +return x_67; +} +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; uint64_t x_71; uint64_t x_72; uint64_t x_73; uint64_t x_74; uint64_t x_75; uint64_t x_76; uint64_t x_77; size_t x_78; size_t x_79; size_t x_80; size_t x_81; size_t x_82; lean_object* x_83; uint8_t x_84; +x_68 = lean_ctor_get(x_9, 0); +x_69 = lean_ctor_get(x_9, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_9); +x_70 = lean_array_get_size(x_69); +x_71 = l_Lean_Name_hash___override(x_1); +x_72 = 32; +x_73 = lean_uint64_shift_right(x_71, x_72); +x_74 = lean_uint64_xor(x_71, x_73); +x_75 = 16; +x_76 = lean_uint64_shift_right(x_74, x_75); +x_77 = lean_uint64_xor(x_74, x_76); +x_78 = lean_uint64_to_usize(x_77); +x_79 = lean_usize_of_nat(x_70); +lean_dec(x_70); +x_80 = 1; +x_81 = lean_usize_sub(x_79, x_80); +x_82 = lean_usize_land(x_78, x_81); +x_83 = lean_array_uget(x_69, x_82); +x_84 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_83); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; uint8_t x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; uint8_t x_96; +x_85 = lean_unsigned_to_nat(1u); +x_86 = lean_nat_add(x_68, x_85); +lean_dec(x_68); +x_87 = 0; +x_88 = lean_box(x_87); +x_89 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_89, 0, x_1); +lean_ctor_set(x_89, 1, x_88); +lean_ctor_set(x_89, 2, x_83); +x_90 = lean_array_uset(x_69, x_82, x_89); +x_91 = lean_unsigned_to_nat(4u); +x_92 = lean_nat_mul(x_86, x_91); +x_93 = lean_unsigned_to_nat(3u); +x_94 = lean_nat_div(x_92, x_93); +lean_dec(x_92); +x_95 = lean_array_get_size(x_90); +x_96 = lean_nat_dec_le(x_94, x_95); +lean_dec(x_95); +lean_dec(x_94); +if (x_96 == 0) +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_97 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_90); +x_98 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_98, 0, x_86); +lean_ctor_set(x_98, 1, x_97); +x_99 = lean_st_ref_set(x_2, x_98, x_10); +x_100 = lean_ctor_get(x_99, 1); +lean_inc(x_100); +if (lean_is_exclusive(x_99)) { + lean_ctor_release(x_99, 0); + lean_ctor_release(x_99, 1); + x_101 = x_99; +} else { + lean_dec_ref(x_99); + x_101 = lean_box(0); +} +x_102 = lean_box(0); +if (lean_is_scalar(x_101)) { + x_103 = lean_alloc_ctor(0, 2, 0); +} else { + x_103 = x_101; +} +lean_ctor_set(x_103, 0, x_102); +lean_ctor_set(x_103, 1, x_100); +return x_103; +} +else +{ +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_86); +lean_ctor_set(x_104, 1, x_90); +x_105 = lean_st_ref_set(x_2, x_104, x_10); +x_106 = lean_ctor_get(x_105, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_107 = x_105; +} else { + lean_dec_ref(x_105); + x_107 = lean_box(0); +} +x_108 = lean_box(0); +if (lean_is_scalar(x_107)) { + x_109 = lean_alloc_ctor(0, 2, 0); +} else { + x_109 = x_107; +} +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set(x_109, 1, x_106); +return x_109; +} +} +else +{ +lean_object* x_110; lean_object* x_111; uint8_t x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; +x_110 = lean_box(0); +x_111 = lean_array_uset(x_69, x_82, x_110); +x_112 = 0; +x_113 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_112, x_83); +x_114 = lean_array_uset(x_111, x_82, x_113); +x_115 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_115, 0, x_68); +lean_ctor_set(x_115, 1, x_114); +x_116 = lean_st_ref_set(x_2, x_115, x_10); +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +if (lean_is_exclusive(x_116)) { + lean_ctor_release(x_116, 0); + lean_ctor_release(x_116, 1); + x_118 = x_116; +} else { + lean_dec_ref(x_116); + x_118 = lean_box(0); +} +x_119 = lean_box(0); +if (lean_is_scalar(x_118)) { + x_120 = lean_alloc_ctor(0, 2, 0); +} else { + x_120 = x_118; +} +lean_ctor_set(x_120, 0, x_119); +lean_ctor_set(x_120, 1, x_117); +return x_120; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markUninteresting___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markUninteresting(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; lean_object* x_9; lean_object* x_10; +x_8 = 1; +x_9 = lean_box(x_8); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_7); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Meta_getNatValue_x3f(x_1, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) +{ +lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_8, 0); +lean_dec(x_11); +x_12 = 0; +x_13 = lean_box(x_12); +lean_ctor_set(x_8, 0, x_13); +return x_8; +} +else +{ +lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_8, 1); +lean_inc(x_14); +lean_dec(x_8); +x_15 = 0; +x_16 = lean_box(x_15); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_14); +return x_17; +} +} +else +{ +uint8_t x_18; +lean_dec(x_9); +x_18 = !lean_is_exclusive(x_8); +if (x_18 == 0) +{ +lean_object* x_19; uint8_t x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_8, 0); +lean_dec(x_19); +x_20 = 1; +x_21 = lean_box(x_20); +lean_ctor_set(x_8, 0, x_21); +return x_8; +} +else +{ +lean_object* x_22; uint8_t x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_8, 1); +lean_inc(x_22); +lean_dec(x_8); +x_23 = 1; +x_24 = lean_box(x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_22); +return x_25; +} +} +} +else +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_8); +if (x_26 == 0) +{ +return x_8; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_8, 0); +x_28 = lean_ctor_get(x_8, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_8); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = l_Lean_Expr_getAppFn(x_1); +x_10 = l_Lean_Expr_constName_x3f(x_9); +lean_dec(x_9); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; lean_object* x_12; lean_object* x_13; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_11 = 0; +x_12 = lean_box(x_11); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_8); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_10, 0); +lean_inc(x_14); +lean_dec(x_10); +x_15 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached(x_14, x_3, x_4, x_5, x_6, x_7, x_8); +return x_15; +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1___boxed), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2___boxed), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Bool", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("USize", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("UInt64", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("UInt32", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("UInt16", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("UInt8", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("BitVec", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_inc(x_1); +x_8 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_1, x_3, x_4, x_5, x_6, x_7); +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_8, 1); +lean_inc(x_10); +lean_dec(x_8); +x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1; +x_12 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2; +x_13 = l_Lean_Expr_cleanupAnnotations(x_9); +x_14 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4; +x_15 = l_Lean_Expr_isConstOf(x_13, x_14); +if (x_15 == 0) +{ +lean_object* x_16; uint8_t x_17; +x_16 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6; +x_17 = l_Lean_Expr_isConstOf(x_13, x_16); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; +x_18 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8; +x_19 = l_Lean_Expr_isConstOf(x_13, x_18); +if (x_19 == 0) +{ +lean_object* x_20; uint8_t x_21; +x_20 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10; +x_21 = l_Lean_Expr_isConstOf(x_13, x_20); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12; +x_23 = l_Lean_Expr_isConstOf(x_13, x_22); +if (x_23 == 0) +{ +lean_object* x_24; uint8_t x_25; +x_24 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14; +x_25 = l_Lean_Expr_isConstOf(x_13, x_24); +if (x_25 == 0) +{ +uint8_t x_26; +x_26 = l_Lean_Expr_isApp(x_13); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_13); +x_27 = lean_box(0); +x_28 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3(x_1, x_27, x_2, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_1); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_29 = l_Lean_Expr_appArg(x_13, lean_box(0)); +x_30 = l_Lean_Expr_appFnCleanup(x_13, lean_box(0)); +x_31 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16; +x_32 = l_Lean_Expr_isConstOf(x_30, x_31); +lean_dec(x_30); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_29); +x_33 = lean_box(0); +x_34 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3(x_1, x_33, x_2, x_3, x_4, x_5, x_6, x_10); +lean_dec(x_1); +return x_34; +} +else +{ +lean_object* x_35; +lean_dec(x_1); +x_35 = lean_apply_7(x_12, x_29, x_2, x_3, x_4, x_5, x_6, x_10); +return x_35; +} +} +} +else +{ +lean_object* x_36; lean_object* x_37; +lean_dec(x_13); +lean_dec(x_1); +x_36 = lean_box(0); +x_37 = lean_apply_7(x_11, x_36, x_2, x_3, x_4, x_5, x_6, x_10); +return x_37; +} +} +else +{ +lean_object* x_38; lean_object* x_39; +lean_dec(x_13); +lean_dec(x_1); +x_38 = lean_box(0); +x_39 = lean_apply_7(x_11, x_38, x_2, x_3, x_4, x_5, x_6, x_10); +return x_39; +} +} +else +{ +lean_object* x_40; lean_object* x_41; +lean_dec(x_13); +lean_dec(x_1); +x_40 = lean_box(0); +x_41 = lean_apply_7(x_11, x_40, x_2, x_3, x_4, x_5, x_6, x_10); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_13); +lean_dec(x_1); +x_42 = lean_box(0); +x_43 = lean_apply_7(x_11, x_42, x_2, x_3, x_4, x_5, x_6, x_10); +return x_43; +} +} +else +{ +lean_object* x_44; lean_object* x_45; +lean_dec(x_13); +lean_dec(x_1); +x_44 = lean_box(0); +x_45 = lean_apply_7(x_11, x_44, x_2, x_3, x_4, x_5, x_6, x_10); +return x_45; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_13); +lean_dec(x_1); +x_46 = lean_box(0); +x_47 = lean_apply_7(x_11, x_46, x_2, x_3, x_4, x_5, x_6, x_10); +return x_47; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +lean_inc(x_5); +lean_inc(x_1); +x_11 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting(x_1, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; uint8_t x_13; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_unbox(x_12); +lean_dec(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_dec(x_11); +x_15 = lean_st_ref_take(x_5, x_14); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = !lean_is_exclusive(x_16); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; size_t x_22; size_t x_23; size_t x_24; lean_object* x_25; uint8_t x_26; +x_19 = lean_ctor_get(x_16, 0); +x_20 = lean_ctor_get(x_16, 1); +x_21 = lean_array_get_size(x_20); +x_22 = lean_usize_of_nat(x_21); +lean_dec(x_21); +x_23 = lean_usize_sub(x_22, x_2); +x_24 = lean_usize_land(x_3, x_23); +x_25 = lean_array_uget(x_20, x_24); +x_26 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_25); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_27 = lean_unsigned_to_nat(1u); +x_28 = lean_nat_add(x_19, x_27); +lean_dec(x_19); +x_29 = 0; +x_30 = lean_box(x_29); +x_31 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_31, 0, x_1); +lean_ctor_set(x_31, 1, x_30); +lean_ctor_set(x_31, 2, x_25); +x_32 = lean_array_uset(x_20, x_24, x_31); +x_33 = lean_unsigned_to_nat(4u); +x_34 = lean_nat_mul(x_28, x_33); +x_35 = lean_unsigned_to_nat(3u); +x_36 = lean_nat_div(x_34, x_35); +lean_dec(x_34); +x_37 = lean_array_get_size(x_32); +x_38 = lean_nat_dec_le(x_36, x_37); +lean_dec(x_37); +lean_dec(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_39 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_32); +lean_ctor_set(x_16, 1, x_39); +lean_ctor_set(x_16, 0, x_28); +x_40 = lean_st_ref_set(x_5, x_16, x_17); +lean_dec(x_5); +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_40, 0); +lean_dec(x_42); +x_43 = lean_box(x_29); +lean_ctor_set(x_40, 0, x_43); +return x_40; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_40, 1); +lean_inc(x_44); +lean_dec(x_40); +x_45 = lean_box(x_29); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_44); +return x_46; +} +} +else +{ +lean_object* x_47; uint8_t x_48; +lean_ctor_set(x_16, 1, x_32); +lean_ctor_set(x_16, 0, x_28); +x_47 = lean_st_ref_set(x_5, x_16, x_17); +lean_dec(x_5); +x_48 = !lean_is_exclusive(x_47); +if (x_48 == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_ctor_get(x_47, 0); +lean_dec(x_49); +x_50 = lean_box(x_29); +lean_ctor_set(x_47, 0, x_50); +return x_47; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_47, 1); +lean_inc(x_51); +lean_dec(x_47); +x_52 = lean_box(x_29); +x_53 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_51); +return x_53; +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; uint8_t x_60; +x_54 = lean_box(0); +x_55 = lean_array_uset(x_20, x_24, x_54); +x_56 = 0; +x_57 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_56, x_25); +x_58 = lean_array_uset(x_55, x_24, x_57); +lean_ctor_set(x_16, 1, x_58); +x_59 = lean_st_ref_set(x_5, x_16, x_17); +lean_dec(x_5); +x_60 = !lean_is_exclusive(x_59); +if (x_60 == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_ctor_get(x_59, 0); +lean_dec(x_61); +x_62 = lean_box(x_56); +lean_ctor_set(x_59, 0, x_62); +return x_59; +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_59, 1); +lean_inc(x_63); +lean_dec(x_59); +x_64 = lean_box(x_56); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_63); +return x_65; +} +} +} +else +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; size_t x_69; size_t x_70; size_t x_71; lean_object* x_72; uint8_t x_73; +x_66 = lean_ctor_get(x_16, 0); +x_67 = lean_ctor_get(x_16, 1); +lean_inc(x_67); +lean_inc(x_66); +lean_dec(x_16); +x_68 = lean_array_get_size(x_67); +x_69 = lean_usize_of_nat(x_68); +lean_dec(x_68); +x_70 = lean_usize_sub(x_69, x_2); +x_71 = lean_usize_land(x_3, x_70); +x_72 = lean_array_uget(x_67, x_71); +x_73 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_72); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; uint8_t x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_74 = lean_unsigned_to_nat(1u); +x_75 = lean_nat_add(x_66, x_74); +lean_dec(x_66); +x_76 = 0; +x_77 = lean_box(x_76); +x_78 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_78, 0, x_1); +lean_ctor_set(x_78, 1, x_77); +lean_ctor_set(x_78, 2, x_72); +x_79 = lean_array_uset(x_67, x_71, x_78); +x_80 = lean_unsigned_to_nat(4u); +x_81 = lean_nat_mul(x_75, x_80); +x_82 = lean_unsigned_to_nat(3u); +x_83 = lean_nat_div(x_81, x_82); +lean_dec(x_81); +x_84 = lean_array_get_size(x_79); +x_85 = lean_nat_dec_le(x_83, x_84); +lean_dec(x_84); +lean_dec(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; +x_86 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_79); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_75); +lean_ctor_set(x_87, 1, x_86); +x_88 = lean_st_ref_set(x_5, x_87, x_17); +lean_dec(x_5); +x_89 = lean_ctor_get(x_88, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_88)) { + lean_ctor_release(x_88, 0); + lean_ctor_release(x_88, 1); + x_90 = x_88; +} else { + lean_dec_ref(x_88); + x_90 = lean_box(0); +} +x_91 = lean_box(x_76); +if (lean_is_scalar(x_90)) { + x_92 = lean_alloc_ctor(0, 2, 0); +} else { + x_92 = x_90; +} +lean_ctor_set(x_92, 0, x_91); +lean_ctor_set(x_92, 1, x_89); +return x_92; +} +else +{ +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_93 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_93, 0, x_75); +lean_ctor_set(x_93, 1, x_79); +x_94 = lean_st_ref_set(x_5, x_93, x_17); +lean_dec(x_5); +x_95 = lean_ctor_get(x_94, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_94)) { + lean_ctor_release(x_94, 0); + lean_ctor_release(x_94, 1); + x_96 = x_94; +} else { + lean_dec_ref(x_94); + x_96 = lean_box(0); +} +x_97 = lean_box(x_76); +if (lean_is_scalar(x_96)) { + x_98 = lean_alloc_ctor(0, 2, 0); +} else { + x_98 = x_96; +} +lean_ctor_set(x_98, 0, x_97); +lean_ctor_set(x_98, 1, x_95); +return x_98; +} +} +else +{ +lean_object* x_99; lean_object* x_100; uint8_t x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_99 = lean_box(0); +x_100 = lean_array_uset(x_67, x_71, x_99); +x_101 = 0; +x_102 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_101, x_72); +x_103 = lean_array_uset(x_100, x_71, x_102); +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_66); +lean_ctor_set(x_104, 1, x_103); +x_105 = lean_st_ref_set(x_5, x_104, x_17); +lean_dec(x_5); +x_106 = lean_ctor_get(x_105, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_107 = x_105; +} else { + lean_dec_ref(x_105); + x_107 = lean_box(0); +} +x_108 = lean_box(x_101); +if (lean_is_scalar(x_107)) { + x_109 = lean_alloc_ctor(0, 2, 0); +} else { + x_109 = x_107; +} +lean_ctor_set(x_109, 0, x_108); +lean_ctor_set(x_109, 1, x_106); +return x_109; +} +} +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; uint8_t x_114; +x_110 = lean_ctor_get(x_11, 1); +lean_inc(x_110); +lean_dec(x_11); +x_111 = lean_st_ref_take(x_5, x_110); +x_112 = lean_ctor_get(x_111, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_111, 1); +lean_inc(x_113); +lean_dec(x_111); +x_114 = !lean_is_exclusive(x_112); +if (x_114 == 0) +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; size_t x_118; size_t x_119; size_t x_120; lean_object* x_121; uint8_t x_122; +x_115 = lean_ctor_get(x_112, 0); +x_116 = lean_ctor_get(x_112, 1); +x_117 = lean_array_get_size(x_116); +x_118 = lean_usize_of_nat(x_117); +lean_dec(x_117); +x_119 = lean_usize_sub(x_118, x_2); +x_120 = lean_usize_land(x_3, x_119); +x_121 = lean_array_uget(x_116, x_120); +x_122 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_121); +if (x_122 == 0) +{ +lean_object* x_123; lean_object* x_124; uint8_t x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; +x_123 = lean_unsigned_to_nat(1u); +x_124 = lean_nat_add(x_115, x_123); +lean_dec(x_115); +x_125 = 1; +x_126 = lean_box(x_125); +x_127 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_127, 0, x_1); +lean_ctor_set(x_127, 1, x_126); +lean_ctor_set(x_127, 2, x_121); +x_128 = lean_array_uset(x_116, x_120, x_127); +x_129 = lean_unsigned_to_nat(4u); +x_130 = lean_nat_mul(x_124, x_129); +x_131 = lean_unsigned_to_nat(3u); +x_132 = lean_nat_div(x_130, x_131); +lean_dec(x_130); +x_133 = lean_array_get_size(x_128); +x_134 = lean_nat_dec_le(x_132, x_133); +lean_dec(x_133); +lean_dec(x_132); +if (x_134 == 0) +{ +lean_object* x_135; lean_object* x_136; uint8_t x_137; +x_135 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_128); +lean_ctor_set(x_112, 1, x_135); +lean_ctor_set(x_112, 0, x_124); +x_136 = lean_st_ref_set(x_5, x_112, x_113); +lean_dec(x_5); +x_137 = !lean_is_exclusive(x_136); +if (x_137 == 0) +{ +lean_object* x_138; lean_object* x_139; +x_138 = lean_ctor_get(x_136, 0); +lean_dec(x_138); +x_139 = lean_box(x_125); +lean_ctor_set(x_136, 0, x_139); +return x_136; +} +else +{ +lean_object* x_140; lean_object* x_141; lean_object* x_142; +x_140 = lean_ctor_get(x_136, 1); +lean_inc(x_140); +lean_dec(x_136); +x_141 = lean_box(x_125); +x_142 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_142, 0, x_141); +lean_ctor_set(x_142, 1, x_140); +return x_142; +} +} +else +{ +lean_object* x_143; uint8_t x_144; +lean_ctor_set(x_112, 1, x_128); +lean_ctor_set(x_112, 0, x_124); +x_143 = lean_st_ref_set(x_5, x_112, x_113); +lean_dec(x_5); +x_144 = !lean_is_exclusive(x_143); +if (x_144 == 0) +{ +lean_object* x_145; lean_object* x_146; +x_145 = lean_ctor_get(x_143, 0); +lean_dec(x_145); +x_146 = lean_box(x_125); +lean_ctor_set(x_143, 0, x_146); +return x_143; +} +else +{ +lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_147 = lean_ctor_get(x_143, 1); +lean_inc(x_147); +lean_dec(x_143); +x_148 = lean_box(x_125); +x_149 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_149, 0, x_148); +lean_ctor_set(x_149, 1, x_147); +return x_149; +} +} +} +else +{ +lean_object* x_150; lean_object* x_151; uint8_t x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; uint8_t x_156; +x_150 = lean_box(0); +x_151 = lean_array_uset(x_116, x_120, x_150); +x_152 = 1; +x_153 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_152, x_121); +x_154 = lean_array_uset(x_151, x_120, x_153); +lean_ctor_set(x_112, 1, x_154); +x_155 = lean_st_ref_set(x_5, x_112, x_113); +lean_dec(x_5); +x_156 = !lean_is_exclusive(x_155); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; +x_157 = lean_ctor_get(x_155, 0); +lean_dec(x_157); +x_158 = lean_box(x_152); +lean_ctor_set(x_155, 0, x_158); +return x_155; +} +else +{ +lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_159 = lean_ctor_get(x_155, 1); +lean_inc(x_159); +lean_dec(x_155); +x_160 = lean_box(x_152); +x_161 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_161, 0, x_160); +lean_ctor_set(x_161, 1, x_159); +return x_161; +} +} +} +else +{ +lean_object* x_162; lean_object* x_163; lean_object* x_164; size_t x_165; size_t x_166; size_t x_167; lean_object* x_168; uint8_t x_169; +x_162 = lean_ctor_get(x_112, 0); +x_163 = lean_ctor_get(x_112, 1); +lean_inc(x_163); +lean_inc(x_162); +lean_dec(x_112); +x_164 = lean_array_get_size(x_163); +x_165 = lean_usize_of_nat(x_164); +lean_dec(x_164); +x_166 = lean_usize_sub(x_165, x_2); +x_167 = lean_usize_land(x_3, x_166); +x_168 = lean_array_uget(x_163, x_167); +x_169 = l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__1(x_1, x_168); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; uint8_t x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; uint8_t x_181; +x_170 = lean_unsigned_to_nat(1u); +x_171 = lean_nat_add(x_162, x_170); +lean_dec(x_162); +x_172 = 1; +x_173 = lean_box(x_172); +x_174 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_174, 0, x_1); +lean_ctor_set(x_174, 1, x_173); +lean_ctor_set(x_174, 2, x_168); +x_175 = lean_array_uset(x_163, x_167, x_174); +x_176 = lean_unsigned_to_nat(4u); +x_177 = lean_nat_mul(x_171, x_176); +x_178 = lean_unsigned_to_nat(3u); +x_179 = lean_nat_div(x_177, x_178); +lean_dec(x_177); +x_180 = lean_array_get_size(x_175); +x_181 = lean_nat_dec_le(x_179, x_180); +lean_dec(x_180); +lean_dec(x_179); +if (x_181 == 0) +{ +lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; +x_182 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__2(x_175); +x_183 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_183, 0, x_171); +lean_ctor_set(x_183, 1, x_182); +x_184 = lean_st_ref_set(x_5, x_183, x_113); +lean_dec(x_5); +x_185 = lean_ctor_get(x_184, 1); +lean_inc(x_185); +if (lean_is_exclusive(x_184)) { + lean_ctor_release(x_184, 0); + lean_ctor_release(x_184, 1); + x_186 = x_184; +} else { + lean_dec_ref(x_184); + x_186 = lean_box(0); +} +x_187 = lean_box(x_172); +if (lean_is_scalar(x_186)) { + x_188 = lean_alloc_ctor(0, 2, 0); +} else { + x_188 = x_186; +} +lean_ctor_set(x_188, 0, x_187); +lean_ctor_set(x_188, 1, x_185); +return x_188; +} +else +{ +lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; +x_189 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_189, 0, x_171); +lean_ctor_set(x_189, 1, x_175); +x_190 = lean_st_ref_set(x_5, x_189, x_113); +lean_dec(x_5); +x_191 = lean_ctor_get(x_190, 1); +lean_inc(x_191); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_192 = x_190; +} else { + lean_dec_ref(x_190); + x_192 = lean_box(0); +} +x_193 = lean_box(x_172); +if (lean_is_scalar(x_192)) { + x_194 = lean_alloc_ctor(0, 2, 0); +} else { + x_194 = x_192; +} +lean_ctor_set(x_194, 0, x_193); +lean_ctor_set(x_194, 1, x_191); +return x_194; +} +} +else +{ +lean_object* x_195; lean_object* x_196; uint8_t x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; +x_195 = lean_box(0); +x_196 = lean_array_uset(x_163, x_167, x_195); +x_197 = 1; +x_198 = l_Std_DHashMap_Internal_AssocList_replace___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_markInteresting___spec__5(x_1, x_197, x_168); +x_199 = lean_array_uset(x_196, x_167, x_198); +x_200 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_200, 0, x_162); +lean_ctor_set(x_200, 1, x_199); +x_201 = lean_st_ref_set(x_5, x_200, x_113); +lean_dec(x_5); +x_202 = lean_ctor_get(x_201, 1); +lean_inc(x_202); +if (lean_is_exclusive(x_201)) { + lean_ctor_release(x_201, 0); + lean_ctor_release(x_201, 1); + x_203 = x_201; +} else { + lean_dec_ref(x_201); + x_203 = lean_box(0); +} +x_204 = lean_box(x_197); +if (lean_is_scalar(x_203)) { + x_205 = lean_alloc_ctor(0, 2, 0); +} else { + x_205 = x_203; +} +lean_ctor_set(x_205, 0, x_204); +lean_ctor_set(x_205, 1, x_202); +return x_205; +} +} +} +} +else +{ +uint8_t x_206; +lean_dec(x_5); +lean_dec(x_1); +x_206 = !lean_is_exclusive(x_11); +if (x_206 == 0) +{ +return x_11; +} +else +{ +lean_object* x_207; lean_object* x_208; lean_object* x_209; +x_207 = lean_ctor_get(x_11, 0); +x_208 = lean_ctor_get(x_11, 1); +lean_inc(x_208); +lean_inc(x_207); +lean_dec(x_11); +x_209 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_209, 0, x_207); +lean_ctor_set(x_209, 1, x_208); +return x_209; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_st_ref_get(x_2, x_7); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint64_t x_14; uint64_t x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; size_t x_21; size_t x_22; size_t x_23; size_t x_24; size_t x_25; lean_object* x_26; lean_object* x_27; +x_10 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_8, 1); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_array_get_size(x_12); +x_14 = l_Lean_Name_hash___override(x_1); +x_15 = 32; +x_16 = lean_uint64_shift_right(x_14, x_15); +x_17 = lean_uint64_xor(x_14, x_16); +x_18 = 16; +x_19 = lean_uint64_shift_right(x_17, x_18); +x_20 = lean_uint64_xor(x_17, x_19); +x_21 = lean_uint64_to_usize(x_20); +x_22 = lean_usize_of_nat(x_13); +lean_dec(x_13); +x_23 = 1; +x_24 = lean_usize_sub(x_22, x_23); +x_25 = lean_usize_land(x_21, x_24); +x_26 = lean_array_uget(x_12, x_25); +lean_dec(x_12); +x_27 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(x_1, x_26); +lean_dec(x_26); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; +lean_free_object(x_8); +x_28 = lean_box(0); +x_29 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1(x_1, x_23, x_21, x_28, x_2, x_3, x_4, x_5, x_6, x_11); +return x_29; +} +else +{ +lean_object* x_30; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_30 = lean_ctor_get(x_27, 0); +lean_inc(x_30); +lean_dec(x_27); +lean_ctor_set(x_8, 0, x_30); +return x_8; +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; uint64_t x_35; uint64_t x_36; uint64_t x_37; uint64_t x_38; uint64_t x_39; uint64_t x_40; uint64_t x_41; size_t x_42; size_t x_43; size_t x_44; size_t x_45; size_t x_46; lean_object* x_47; lean_object* x_48; +x_31 = lean_ctor_get(x_8, 0); +x_32 = lean_ctor_get(x_8, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_8); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = lean_array_get_size(x_33); +x_35 = l_Lean_Name_hash___override(x_1); +x_36 = 32; +x_37 = lean_uint64_shift_right(x_35, x_36); +x_38 = lean_uint64_xor(x_35, x_37); +x_39 = 16; +x_40 = lean_uint64_shift_right(x_38, x_39); +x_41 = lean_uint64_xor(x_38, x_40); +x_42 = lean_uint64_to_usize(x_41); +x_43 = lean_usize_of_nat(x_34); +lean_dec(x_34); +x_44 = 1; +x_45 = lean_usize_sub(x_43, x_44); +x_46 = lean_usize_land(x_42, x_45); +x_47 = lean_array_uget(x_33, x_46); +lean_dec(x_33); +x_48 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_M_lookup___spec__1(x_1, x_47); +lean_dec(x_47); +if (lean_obj_tag(x_48) == 0) +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_box(0); +x_50 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1(x_1, x_44, x_42, x_49, x_2, x_3, x_4, x_5, x_6, x_32); +return x_50; +} +else +{ +lean_object* x_51; lean_object* x_52; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_51 = lean_ctor_get(x_48, 0); +lean_inc(x_51); +lean_dec(x_48); +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_32); +return x_52; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_8 = lean_ctor_get(x_5, 5); +x_9 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_3, x_4, x_5, x_6, x_7); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_8); +lean_ctor_set(x_12, 1, x_11); +lean_ctor_set_tag(x_9, 1); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_9, 0); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_9); +lean_inc(x_8); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_13); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +} +} +static lean_object* _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unknown constant '", 18, 18); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("'", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_st_ref_get(x_6, x_7); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_10 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_8, 1); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +lean_inc(x_1); +x_13 = l_Lean_Environment_find_x3f(x_12, x_1); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_free_object(x_8); +x_14 = 0; +x_15 = l_Lean_MessageData_ofConstName(x_1, x_14); +x_16 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3(x_19, x_2, x_3, x_4, x_5, x_6, x_11); +return x_20; +} +else +{ +lean_object* x_21; +lean_dec(x_1); +x_21 = lean_ctor_get(x_13, 0); +lean_inc(x_21); +lean_dec(x_13); +lean_ctor_set(x_8, 0, x_21); +return x_8; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_8, 0); +x_23 = lean_ctor_get(x_8, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_8); +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +lean_dec(x_22); +lean_inc(x_1); +x_25 = l_Lean_Environment_find_x3f(x_24, x_1); +if (lean_obj_tag(x_25) == 0) +{ +uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_26 = 0; +x_27 = l_Lean_MessageData_ofConstName(x_1, x_26); +x_28 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2; +x_29 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_27); +x_30 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4; +x_31 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +x_32 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3(x_31, x_2, x_3, x_4, x_5, x_6, x_23); +return x_32; +} +else +{ +lean_object* x_33; lean_object* x_34; +lean_dec(x_1); +x_33 = lean_ctor_get(x_25, 0); +lean_inc(x_33); +lean_dec(x_25); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_23); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_8 = lean_ctor_get(x_5, 5); +x_9 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_3, x_4, x_5, x_6, x_7); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_8); +lean_ctor_set(x_12, 1, x_11); +lean_ctor_set_tag(x_9, 1); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_9, 0); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_9); +lean_inc(x_8); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_13); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' is not a inductive type", 25, 25); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_1); +x_8 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 5) +{ +uint8_t x_10; +lean_dec(x_1); +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_8, 0); +lean_dec(x_11); +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +lean_dec(x_9); +lean_ctor_set(x_8, 0, x_12); +return x_8; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +else +{ +lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_9); +x_16 = lean_ctor_get(x_8, 1); +lean_inc(x_16); +lean_dec(x_8); +x_17 = 0; +x_18 = l_Lean_MessageData_ofConstName(x_1, x_17); +x_19 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +x_21 = l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2; +x_22 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +x_23 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4(x_22, x_2, x_3, x_4, x_5, x_6, x_16); +return x_23; +} +} +else +{ +uint8_t x_24; +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_8); +if (x_24 == 0) +{ +return x_8; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_8, 0); +x_26 = lean_ctor_get(x_8, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_8); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_8 = lean_ctor_get(x_5, 5); +x_9 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_3, x_4, x_5, x_6, x_7); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_8); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_8); +lean_ctor_set(x_12, 1, x_11); +lean_ctor_set_tag(x_9, 1); +lean_ctor_set(x_9, 0, x_12); +return x_9; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_13 = lean_ctor_get(x_9, 0); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_9); +lean_inc(x_8); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_8); +lean_ctor_set(x_15, 1, x_13); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +} +} +static lean_object* _init_l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' is not a constructor", 22, 22); +return x_1; +} +} +static lean_object* _init_l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +lean_inc(x_1); +x_8 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; +x_9 = lean_ctor_get(x_8, 0); +lean_inc(x_9); +if (lean_obj_tag(x_9) == 6) +{ +uint8_t x_10; +lean_dec(x_1); +x_10 = !lean_is_exclusive(x_8); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_ctor_get(x_8, 0); +lean_dec(x_11); +x_12 = lean_ctor_get(x_9, 0); +lean_inc(x_12); +lean_dec(x_9); +lean_ctor_set(x_8, 0, x_12); +return x_8; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +} +else +{ +lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_9); +x_16 = lean_ctor_get(x_8, 1); +lean_inc(x_16); +lean_dec(x_8); +x_17 = 0; +x_18 = l_Lean_MessageData_ofConstName(x_1, x_17); +x_19 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +x_21 = l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2; +x_22 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +x_23 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6(x_22, x_2, x_3, x_4, x_5, x_6, x_16); +return x_23; +} +} +else +{ +uint8_t x_24; +lean_dec(x_1); +x_24 = !lean_is_exclusive(x_8); +if (x_24 == 0) +{ +return x_8; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_8, 0); +x_26 = lean_ctor_get(x_8, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_8); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +return x_27; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7(lean_object* x_1, size_t x_2, size_t x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; +x_11 = lean_usize_dec_eq(x_2, x_3); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_array_uget(x_1, x_2); +x_13 = l_Lean_Expr_fvarId_x21(x_12); +lean_dec(x_12); +lean_inc(x_6); +x_14 = l_Lean_FVarId_getType(x_13, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_17 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting(x_15, x_5, x_6, x_7, x_8, x_9, x_16); +if (lean_obj_tag(x_17) == 0) +{ +if (x_4 == 0) +{ +lean_object* x_18; lean_object* x_19; size_t x_20; size_t x_21; uint8_t x_22; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = 1; +x_21 = lean_usize_add(x_2, x_20); +x_22 = lean_unbox(x_18); +lean_dec(x_18); +x_2 = x_21; +x_4 = x_22; +x_10 = x_19; +goto _start; +} +else +{ +lean_object* x_24; size_t x_25; size_t x_26; uint8_t x_27; +x_24 = lean_ctor_get(x_17, 1); +lean_inc(x_24); +lean_dec(x_17); +x_25 = 1; +x_26 = lean_usize_add(x_2, x_25); +x_27 = 1; +x_2 = x_26; +x_4 = x_27; +x_10 = x_24; +goto _start; +} +} +else +{ +uint8_t x_29; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_29 = !lean_is_exclusive(x_17); +if (x_29 == 0) +{ +return x_17; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_17, 0); +x_31 = lean_ctor_get(x_17, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_17); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +} +else +{ +uint8_t x_33; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_33 = !lean_is_exclusive(x_14); +if (x_33 == 0) +{ +return x_14; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_14, 0); +x_35 = lean_ctor_get(x_14, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_14); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +else +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_37 = lean_box(x_4); +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_10); +return x_38; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = lean_apply_8(x_1, x_3, x_4, x_2, x_5, x_6, x_7, x_8, x_9); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_10 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___lambda__1), 9, 2); +lean_closure_set(x_10, 0, x_2); +lean_closure_set(x_10, 1, x_4); +x_11 = lean_box(0); +x_12 = 0; +x_13 = l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(x_12, x_11, x_1, x_10, x_3, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +return x_13; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_13); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +else +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_13); +if (x_18 == 0) +{ +return x_13; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_13, 0); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_13); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___boxed), 9, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_9 = lean_array_get_size(x_1); +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_lt(x_10, x_9); +if (x_11 == 0) +{ +uint8_t x_12; lean_object* x_13; lean_object* x_14; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_12 = 0; +x_13 = lean_box(x_12); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_8); +return x_14; +} +else +{ +uint8_t x_15; +x_15 = lean_nat_dec_le(x_9, x_9); +if (x_15 == 0) +{ +uint8_t x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_16 = 0; +x_17 = lean_box(x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_8); +return x_18; +} +else +{ +size_t x_19; size_t x_20; uint8_t x_21; lean_object* x_22; +x_19 = 0; +x_20 = lean_usize_of_nat(x_9); +lean_dec(x_9); +x_21 = 0; +x_22 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7(x_1, x_19, x_20, x_21, x_3, x_4, x_5, x_6, x_7, x_8); +return x_22; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1___boxed), 8, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_1, 4); +x_10 = l_Lean_instInhabitedName; +x_11 = l_List_head_x21___rarg(x_10, x_9); +x_12 = l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5(x_11, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; lean_object* x_19; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = lean_ctor_get(x_13, 0); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_ctor_get(x_15, 2); +lean_inc(x_16); +lean_dec(x_15); +x_17 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1; +x_18 = 0; +x_19 = l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg(x_16, x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_14); +return x_19; +} +else +{ +uint8_t x_20; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_20 = !lean_is_exclusive(x_12); +if (x_20 == 0) +{ +return x_12; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_12, 0); +x_22 = lean_ctor_get(x_12, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_12); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1(x_1, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get_uint8(x_10, sizeof(void*)*6); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_dec(x_9); +x_13 = lean_box(0); +x_14 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2(x_10, x_13, x_3, x_4, x_5, x_6, x_7, x_12); +lean_dec(x_10); +return x_14; +} +else +{ +uint8_t x_15; +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_15 = !lean_is_exclusive(x_9); +if (x_15 == 0) +{ +lean_object* x_16; uint8_t x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_9, 0); +lean_dec(x_16); +x_17 = 0; +x_18 = lean_box(x_17); +lean_ctor_set(x_9, 0, x_18); +return x_9; +} +else +{ +lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_9, 1); +lean_inc(x_19); +lean_dec(x_9); +x_20 = 0; +x_21 = lean_box(x_20); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_19); +return x_22; +} +} +} +else +{ +uint8_t x_23; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_23 = !lean_is_exclusive(x_9); +if (x_23 == 0) +{ +return x_9; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_9, 0); +x_25 = lean_ctor_get(x_9, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_9); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; +x_8 = lean_st_ref_get(x_6, x_7); +x_9 = !lean_is_exclusive(x_8); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_10 = lean_ctor_get(x_8, 0); +x_11 = lean_ctor_get(x_8, 1); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +lean_dec(x_10); +lean_inc(x_1); +x_13 = l_Lean_isStructure(x_12, x_1); +if (x_13 == 0) +{ +uint8_t x_14; lean_object* x_15; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_14 = 0; +x_15 = lean_box(x_14); +lean_ctor_set(x_8, 0, x_15); +return x_8; +} +else +{ +lean_object* x_16; lean_object* x_17; +lean_free_object(x_8); +x_16 = lean_box(0); +x_17 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3(x_1, x_16, x_2, x_3, x_4, x_5, x_6, x_11); +return x_17; +} +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_18 = lean_ctor_get(x_8, 0); +x_19 = lean_ctor_get(x_8, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_8); +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +lean_dec(x_18); +lean_inc(x_1); +x_21 = l_Lean_isStructure(x_20, x_1); +if (x_21 == 0) +{ +uint8_t x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_22 = 0; +x_23 = lean_box(x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_19); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_box(0); +x_26 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3(x_1, x_25, x_2, x_3, x_4, x_5, x_6, x_19); +return x_26; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_12 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInterestingCached___lambda__1(x_1, x_11, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_4); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; uint8_t x_13; lean_object* x_14; +x_11 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_12 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_13 = lean_unbox(x_4); +lean_dec(x_4); +x_14 = l_Array_foldlMUnsafe_fold___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__7(x_1, x_11, x_12, x_13, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_1); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; lean_object* x_11; +x_10 = lean_unbox(x_3); +lean_dec(x_3); +x_11 = l_Lean_Meta_forallTelescope___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__8___rarg(x_1, x_2, x_10, x_4, x_5, x_6, x_7, x_8, x_9); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +uint8_t x_15; +x_15 = lean_usize_dec_lt(x_7, x_6); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_8); +lean_ctor_set(x_16, 1, x_14); +return x_16; +} +else +{ +lean_object* x_17; uint8_t x_18; +x_17 = lean_array_uget(x_5, x_7); +x_18 = !lean_is_exclusive(x_8); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_8, 1); +x_20 = lean_ctor_get(x_8, 0); +lean_dec(x_20); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_19); +x_21 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(x_1, x_17, x_19, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_17); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +uint8_t x_23; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_23 = !lean_is_exclusive(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_21, 0); +lean_dec(x_24); +x_25 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_25, 0, x_22); +lean_ctor_set(x_8, 0, x_25); +lean_ctor_set(x_21, 0, x_8); +return x_21; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_21, 1); +lean_inc(x_26); +lean_dec(x_21); +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_22); +lean_ctor_set(x_8, 0, x_27); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_8); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; size_t x_31; size_t x_32; +lean_dec(x_19); +x_29 = lean_ctor_get(x_21, 1); +lean_inc(x_29); +lean_dec(x_21); +x_30 = lean_ctor_get(x_22, 0); +lean_inc(x_30); +lean_dec(x_22); +lean_inc(x_4); +lean_ctor_set(x_8, 1, x_30); +lean_ctor_set(x_8, 0, x_4); +x_31 = 1; +x_32 = lean_usize_add(x_7, x_31); +x_7 = x_32; +x_14 = x_29; +goto _start; +} +} +else +{ +uint8_t x_34; +lean_free_object(x_8); +lean_dec(x_19); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_34 = !lean_is_exclusive(x_21); +if (x_34 == 0) +{ +return x_21; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_21, 0); +x_36 = lean_ctor_get(x_21, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_21); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; +} +} +} +else +{ +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_8, 1); +lean_inc(x_38); +lean_dec(x_8); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_38); +x_39 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(x_1, x_17, x_38, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_17); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_41 = lean_ctor_get(x_39, 1); +lean_inc(x_41); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_42 = x_39; +} else { + lean_dec_ref(x_39); + x_42 = lean_box(0); +} +x_43 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_43, 0, x_40); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_43); +lean_ctor_set(x_44, 1, x_38); +if (lean_is_scalar(x_42)) { + x_45 = lean_alloc_ctor(0, 2, 0); +} else { + x_45 = x_42; +} +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_41); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; size_t x_49; size_t x_50; +lean_dec(x_38); +x_46 = lean_ctor_get(x_39, 1); +lean_inc(x_46); +lean_dec(x_39); +x_47 = lean_ctor_get(x_40, 0); +lean_inc(x_47); +lean_dec(x_40); +lean_inc(x_4); +x_48 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_48, 0, x_4); +lean_ctor_set(x_48, 1, x_47); +x_49 = 1; +x_50 = lean_usize_add(x_7, x_49); +x_7 = x_50; +x_8 = x_48; +x_14 = x_46; +goto _start; +} +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +lean_dec(x_38); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_52 = lean_ctor_get(x_39, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_39, 1); +lean_inc(x_53); +if (lean_is_exclusive(x_39)) { + lean_ctor_release(x_39, 0); + lean_ctor_release(x_39, 1); + x_54 = x_39; +} else { + lean_dec_ref(x_39); + x_54 = lean_box(0); +} +if (lean_is_scalar(x_54)) { + x_55 = lean_alloc_ctor(1, 2, 0); +} else { + x_55 = x_54; +} +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_53); +return x_55; +} +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_6, x_5); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_7); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_array_uget(x_4, x_6); +x_17 = lean_ctor_get(x_7, 1); +lean_inc(x_17); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + x_18 = x_7; +} else { + lean_dec_ref(x_7); + x_18 = lean_box(0); +} +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_27; +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_17); +x_19 = x_27; +x_20 = x_13; +goto block_26; +} +else +{ +lean_object* x_28; uint8_t x_29; +lean_dec(x_17); +x_28 = lean_ctor_get(x_16, 0); +lean_inc(x_28); +lean_dec(x_16); +x_29 = l_Lean_LocalDecl_isLet(x_28); +if (x_29 == 0) +{ +uint8_t x_30; +x_30 = l_Lean_LocalDecl_isImplementationDetail(x_28); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = l_Lean_LocalDecl_type(x_28); +lean_dec(x_28); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_32 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting(x_31, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_34; +x_20 = x_33; +goto block_26; +} +else +{ +uint8_t x_35; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_35 = !lean_is_exclusive(x_32); +if (x_35 == 0) +{ +return x_32; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_32, 0); +x_37 = lean_ctor_get(x_32, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_32); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; +lean_dec(x_28); +x_39 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_39; +x_20 = x_13; +goto block_26; +} +} +else +{ +lean_object* x_40; +lean_dec(x_28); +x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_40; +x_20 = x_13; +goto block_26; +} +} +block_26: +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +lean_dec(x_19); +lean_inc(x_3); +if (lean_is_scalar(x_18)) { + x_22 = lean_alloc_ctor(0, 2, 0); +} else { + x_22 = x_18; +} +lean_ctor_set(x_22, 0, x_3); +lean_ctor_set(x_22, 1, x_21); +x_23 = 1; +x_24 = lean_usize_add(x_6, x_23); +x_6 = x_24; +x_7 = x_22; +x_13 = x_20; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_9, 0, x_1); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; size_t x_14; size_t x_15; lean_object* x_16; +x_10 = lean_ctor_get(x_2, 0); +x_11 = lean_box(0); +x_12 = lean_box(0); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_3); +x_14 = lean_array_size(x_10); +x_15 = 0; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3(x_1, x_10, x_11, x_12, x_10, x_14, x_15, x_13, x_4, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_19 = lean_ctor_get(x_16, 1); +lean_inc(x_19); +lean_dec(x_16); +x_20 = lean_ctor_get(x_17, 1); +lean_inc(x_20); +lean_dec(x_17); +x_21 = lean_box(0); +x_22 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1(x_20, x_21, x_4, x_5, x_6, x_7, x_8, x_19); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_22; +} +else +{ +uint8_t x_23; +lean_dec(x_17); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_23 = !lean_is_exclusive(x_16); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_16, 0); +lean_dec(x_24); +x_25 = lean_ctor_get(x_18, 0); +lean_inc(x_25); +lean_dec(x_18); +lean_ctor_set(x_16, 0, x_25); +return x_16; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_16, 1); +lean_inc(x_26); +lean_dec(x_16); +x_27 = lean_ctor_get(x_18, 0); +lean_inc(x_27); +lean_dec(x_18); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +} +else +{ +uint8_t x_29; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_29 = !lean_is_exclusive(x_16); +if (x_29 == 0) +{ +return x_16; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_16, 0); +x_31 = lean_ctor_get(x_16, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_16); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; size_t x_37; size_t x_38; lean_object* x_39; +x_33 = lean_ctor_get(x_2, 0); +x_34 = lean_box(0); +x_35 = lean_box(0); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_3); +x_37 = lean_array_size(x_33); +x_38 = 0; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_39 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4(x_33, x_34, x_35, x_33, x_37, x_38, x_36, x_4, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_42 = lean_ctor_get(x_39, 1); +lean_inc(x_42); +lean_dec(x_39); +x_43 = lean_ctor_get(x_40, 1); +lean_inc(x_43); +lean_dec(x_40); +x_44 = lean_box(0); +x_45 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1(x_43, x_44, x_4, x_5, x_6, x_7, x_8, x_42); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_45; +} +else +{ +uint8_t x_46; +lean_dec(x_40); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_46 = !lean_is_exclusive(x_39); +if (x_46 == 0) +{ +lean_object* x_47; lean_object* x_48; +x_47 = lean_ctor_get(x_39, 0); +lean_dec(x_47); +x_48 = lean_ctor_get(x_41, 0); +lean_inc(x_48); +lean_dec(x_41); +lean_ctor_set(x_39, 0, x_48); +return x_39; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_39, 1); +lean_inc(x_49); +lean_dec(x_39); +x_50 = lean_ctor_get(x_41, 0); +lean_inc(x_50); +lean_dec(x_41); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_49); +return x_51; +} +} +} +else +{ +uint8_t x_52; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_52 = !lean_is_exclusive(x_39); +if (x_52 == 0) +{ +return x_39; +} +else +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_39, 0); +x_54 = lean_ctor_get(x_39, 1); +lean_inc(x_54); +lean_inc(x_53); +lean_dec(x_39); +x_55 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +return x_55; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_usize_dec_lt(x_6, x_5); +if (x_14 == 0) +{ +lean_object* x_15; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_7); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_array_uget(x_4, x_6); +x_17 = lean_ctor_get(x_7, 1); +lean_inc(x_17); +if (lean_is_exclusive(x_7)) { + lean_ctor_release(x_7, 0); + lean_ctor_release(x_7, 1); + x_18 = x_7; +} else { + lean_dec_ref(x_7); + x_18 = lean_box(0); +} +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_27; +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_17); +x_19 = x_27; +x_20 = x_13; +goto block_26; +} +else +{ +lean_object* x_28; uint8_t x_29; +lean_dec(x_17); +x_28 = lean_ctor_get(x_16, 0); +lean_inc(x_28); +lean_dec(x_16); +x_29 = l_Lean_LocalDecl_isLet(x_28); +if (x_29 == 0) +{ +uint8_t x_30; +x_30 = l_Lean_LocalDecl_isImplementationDetail(x_28); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = l_Lean_LocalDecl_type(x_28); +lean_dec(x_28); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_32 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting(x_31, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_32, 1); +lean_inc(x_33); +lean_dec(x_32); +x_34 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_34; +x_20 = x_33; +goto block_26; +} +else +{ +uint8_t x_35; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_35 = !lean_is_exclusive(x_32); +if (x_35 == 0) +{ +return x_32; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_32, 0); +x_37 = lean_ctor_get(x_32, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_32); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +else +{ +lean_object* x_39; +lean_dec(x_28); +x_39 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_39; +x_20 = x_13; +goto block_26; +} +} +else +{ +lean_object* x_40; +lean_dec(x_28); +x_40 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1; +x_19 = x_40; +x_20 = x_13; +goto block_26; +} +} +block_26: +{ +lean_object* x_21; lean_object* x_22; size_t x_23; size_t x_24; +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +lean_dec(x_19); +lean_inc(x_3); +if (lean_is_scalar(x_18)) { + x_22 = lean_alloc_ctor(0, 2, 0); +} else { + x_22 = x_18; +} +lean_ctor_set(x_22, 0, x_3); +lean_ctor_set(x_22, 1, x_21); +x_23 = 1; +x_24 = lean_usize_add(x_6, x_23); +x_6 = x_24; +x_7 = x_22; +x_13 = x_20; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_1); +lean_ctor_set(x_9, 1, x_8); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_ctor_get(x_1, 0); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_10 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(x_2, x_9, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_12 = !lean_is_exclusive(x_10); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_ctor_get(x_10, 0); +lean_dec(x_13); +x_14 = lean_ctor_get(x_11, 0); +lean_inc(x_14); +lean_dec(x_11); +lean_ctor_set(x_10, 0, x_14); +return x_10; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); +lean_dec(x_10); +x_16 = lean_ctor_get(x_11, 0); +lean_inc(x_16); +lean_dec(x_11); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +return x_17; +} +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; size_t x_24; size_t x_25; lean_object* x_26; +x_18 = lean_ctor_get(x_10, 1); +lean_inc(x_18); +lean_dec(x_10); +x_19 = lean_ctor_get(x_11, 0); +lean_inc(x_19); +lean_dec(x_11); +x_20 = lean_ctor_get(x_1, 1); +x_21 = lean_box(0); +x_22 = lean_box(0); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_19); +x_24 = lean_array_size(x_20); +x_25 = 0; +x_26 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5(x_20, x_21, x_22, x_20, x_24, x_25, x_23, x_3, x_4, x_5, x_6, x_7, x_18); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +x_29 = !lean_is_exclusive(x_26); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_ctor_get(x_26, 0); +lean_dec(x_30); +x_31 = lean_ctor_get(x_27, 1); +lean_inc(x_31); +lean_dec(x_27); +lean_ctor_set(x_26, 0, x_31); +return x_26; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_26, 1); +lean_inc(x_32); +lean_dec(x_26); +x_33 = lean_ctor_get(x_27, 1); +lean_inc(x_33); +lean_dec(x_27); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_32); +return x_34; +} +} +else +{ +uint8_t x_35; +lean_dec(x_27); +x_35 = !lean_is_exclusive(x_26); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; +x_36 = lean_ctor_get(x_26, 0); +lean_dec(x_36); +x_37 = lean_ctor_get(x_28, 0); +lean_inc(x_37); +lean_dec(x_28); +lean_ctor_set(x_26, 0, x_37); +return x_26; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_26, 1); +lean_inc(x_38); +lean_dec(x_26); +x_39 = lean_ctor_get(x_28, 0); +lean_inc(x_39); +lean_dec(x_28); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_38); +return x_40; +} +} +} +else +{ +uint8_t x_41; +x_41 = !lean_is_exclusive(x_26); +if (x_41 == 0) +{ +return x_26; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_26, 0); +x_43 = lean_ctor_get(x_26, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_26); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +} +else +{ +uint8_t x_45; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_45 = !lean_is_exclusive(x_10); +if (x_45 == 0) +{ +return x_10; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_10, 0); +x_47 = lean_ctor_get(x_10, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_10); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +} +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_9 = lean_apply_6(x_1, x_3, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_apply_7(x_2, x_10, x_3, x_4, x_5, x_6, x_7, x_11); +return x_12; +} +else +{ +uint8_t x_13; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_13 = !lean_is_exclusive(x_9); +if (x_13 == 0) +{ +return x_9; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_9, 0); +x_15 = lean_ctor_get(x_9, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_9); +x_16 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +return x_16; +} +} +} +} +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6___rarg), 8, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; +x_9 = lean_apply_1(x_2, x_3); +x_10 = l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(x_1, x_9, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +return x_10; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_ctor_get(x_10, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_10); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +return x_14; +} +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_10); +if (x_15 == 0) +{ +return x_10; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_10, 0); +x_17 = lean_ctor_get(x_10, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_10); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7___rarg), 8, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; +x_6 = lean_ctor_get(x_1, 2); +lean_inc(x_6); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_5); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_1, 1); +x_9 = lean_box(0); +x_10 = l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1(x_8, x_9, x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_10, 0); +lean_dec(x_12); +lean_ctor_set(x_10, 0, x_9); +return x_10; +} +else +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_ctor_get(x_10, 1); +lean_inc(x_13); +lean_dec(x_10); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_9); +lean_ctor_set(x_14, 1, x_13); +return x_14; +} +} +else +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_10); +if (x_15 == 0) +{ +return x_10; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_10, 0); +x_17 = lean_ctor_get(x_10, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_10); +x_18 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1___boxed), 5, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1; +x_2 = lean_alloc_closure((void*)(l_StateRefT_x27_lift___rarg___boxed), 2, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2___boxed), 7, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3; +x_10 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__6___rarg), 8, 2); +lean_closure_set(x_10, 0, x_8); +lean_closure_set(x_10, 1, x_9); +x_11 = l_Lean_MVarId_withContext___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__7___rarg(x_1, x_10, x_2, x_3, x_4, x_5, x_6, x_7); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +size_t x_15; size_t x_16; lean_object* x_17; +x_15 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_16 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__3(x_1, x_2, x_3, x_4, x_5, x_15, x_16, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_15 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4(x_1, x_2, x_3, x_4, x_14, x_15, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_2); +lean_dec(x_1); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +size_t x_14; size_t x_15; lean_object* x_16; +x_14 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_15 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__5(x_1, x_2, x_3, x_4, x_14, x_15, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_PersistentArray_forIn___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_1); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__1(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1(lean_object* x_1, uint8_t x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_3) == 0) +{ +return x_2; +} +else +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_4 = lean_ctor_get(x_3, 0); +x_5 = lean_ctor_get(x_3, 1); +x_6 = lean_ctor_get(x_3, 2); +x_7 = lean_name_eq(x_4, x_1); +if (x_7 == 0) +{ +x_3 = x_6; +goto _start; +} +else +{ +uint8_t x_9; +x_9 = lean_unbox(x_5); +return x_9; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_9 = lean_ctor_get(x_6, 5); +x_10 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_4, x_5, x_6, x_7, x_8); +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_9); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_9); +lean_ctor_set(x_13, 1, x_12); +lean_ctor_set_tag(x_10, 1); +lean_ctor_set(x_10, 0, x_13); +return x_10; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_10, 0); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_10); +lean_inc(x_9); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_9); +lean_ctor_set(x_16, 1, x_14); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +return x_17; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +uint8_t x_8; +x_8 = l_Lean_LocalDecl_isLet(x_2); +if (x_8 == 0) +{ +uint8_t x_9; +x_9 = l_Lean_LocalDecl_isImplementationDetail(x_2); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = l_Lean_LocalDecl_type(x_2); +x_11 = l_Lean_Expr_getAppFn(x_10); +lean_dec(x_10); +x_12 = l_Lean_Expr_constName_x3f(x_11); +lean_dec(x_11); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; lean_object* x_14; lean_object* x_15; +lean_dec(x_1); +x_13 = 0; +x_14 = lean_box(x_13); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_7); +return x_15; +} +else +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_ctor_get(x_12, 0); +lean_inc(x_16); +lean_dec(x_12); +x_17 = !lean_is_exclusive(x_1); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; uint64_t x_24; uint64_t x_25; uint64_t x_26; uint64_t x_27; size_t x_28; size_t x_29; size_t x_30; size_t x_31; size_t x_32; lean_object* x_33; uint8_t x_34; uint8_t x_35; lean_object* x_36; +x_18 = lean_ctor_get(x_1, 1); +x_19 = lean_ctor_get(x_1, 0); +lean_dec(x_19); +x_20 = lean_array_get_size(x_18); +x_21 = l_Lean_Name_hash___override(x_16); +x_22 = 32; +x_23 = lean_uint64_shift_right(x_21, x_22); +x_24 = lean_uint64_xor(x_21, x_23); +x_25 = 16; +x_26 = lean_uint64_shift_right(x_24, x_25); +x_27 = lean_uint64_xor(x_24, x_26); +x_28 = lean_uint64_to_usize(x_27); +x_29 = lean_usize_of_nat(x_20); +lean_dec(x_20); +x_30 = 1; +x_31 = lean_usize_sub(x_29, x_30); +x_32 = lean_usize_land(x_28, x_31); +x_33 = lean_array_uget(x_18, x_32); +lean_dec(x_18); +x_34 = 0; +x_35 = l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1(x_16, x_34, x_33); +lean_dec(x_33); +lean_dec(x_16); +x_36 = lean_box(x_35); +lean_ctor_set(x_1, 1, x_7); +lean_ctor_set(x_1, 0, x_36); +return x_1; +} +else +{ +lean_object* x_37; lean_object* x_38; uint64_t x_39; uint64_t x_40; uint64_t x_41; uint64_t x_42; uint64_t x_43; uint64_t x_44; uint64_t x_45; size_t x_46; size_t x_47; size_t x_48; size_t x_49; size_t x_50; lean_object* x_51; uint8_t x_52; uint8_t x_53; lean_object* x_54; lean_object* x_55; +x_37 = lean_ctor_get(x_1, 1); +lean_inc(x_37); +lean_dec(x_1); +x_38 = lean_array_get_size(x_37); +x_39 = l_Lean_Name_hash___override(x_16); +x_40 = 32; +x_41 = lean_uint64_shift_right(x_39, x_40); +x_42 = lean_uint64_xor(x_39, x_41); +x_43 = 16; +x_44 = lean_uint64_shift_right(x_42, x_43); +x_45 = lean_uint64_xor(x_42, x_44); +x_46 = lean_uint64_to_usize(x_45); +x_47 = lean_usize_of_nat(x_38); +lean_dec(x_38); +x_48 = 1; +x_49 = lean_usize_sub(x_47, x_48); +x_50 = lean_usize_land(x_46, x_49); +x_51 = lean_array_uget(x_37, x_50); +lean_dec(x_37); +x_52 = 0; +x_53 = l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1(x_16, x_52, x_51); +lean_dec(x_51); +lean_dec(x_16); +x_54 = lean_box(x_53); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_54); +lean_ctor_set(x_55, 1, x_7); +return x_55; +} +} +} +else +{ +uint8_t x_56; lean_object* x_57; lean_object* x_58; +lean_dec(x_1); +x_56 = 0; +x_57 = lean_box(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_7); +return x_58; +} +} +else +{ +uint8_t x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_1); +x_59 = 0; +x_60 = lean_box(x_59); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_60); +lean_ctor_set(x_61, 1, x_7); +return x_61; +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(10u); +x_2 = lean_unsigned_to_nat(1u); +x_3 = l_Nat_nextPowerOfTwo_go(x_1, x_2, lean_box(0)); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1; +x_3 = lean_mk_array(x_2, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("structures preprocessor generated more than 1 goal", 50, 50); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3; +x_10 = lean_st_mk_ref(x_9, x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_11); +lean_inc(x_1); +x_13 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext(x_1, x_11, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = lean_st_ref_get(x_11, x_14); +lean_dec(x_11); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1___boxed), 7, 1); +lean_closure_set(x_18, 0, x_16); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_19 = l_Lean_MVarId_casesRec(x_1, x_18, x_4, x_5, x_6, x_7, x_17); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5; +x_23 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2(x_22, x_2, x_3, x_4, x_5, x_6, x_7, x_21); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_23; +} +else +{ +lean_object* x_24; +x_24 = lean_ctor_get(x_20, 1); +lean_inc(x_24); +if (lean_obj_tag(x_24) == 0) +{ +uint8_t x_25; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_25 = !lean_is_exclusive(x_19); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_19, 0); +lean_dec(x_26); +x_27 = lean_ctor_get(x_20, 0); +lean_inc(x_27); +lean_dec(x_20); +x_28 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_19, 0, x_28); +return x_19; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_29 = lean_ctor_get(x_19, 1); +lean_inc(x_29); +lean_dec(x_19); +x_30 = lean_ctor_get(x_20, 0); +lean_inc(x_30); +lean_dec(x_20); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_30); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_29); +return x_32; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_24); +lean_dec(x_20); +x_33 = lean_ctor_get(x_19, 1); +lean_inc(x_33); +lean_dec(x_19); +x_34 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5; +x_35 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2(x_34, x_2, x_3, x_4, x_5, x_6, x_7, x_33); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_35; +} +} +} +else +{ +uint8_t x_36; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_36 = !lean_is_exclusive(x_19); +if (x_36 == 0) +{ +return x_19; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_19, 0); +x_38 = lean_ctor_get(x_19, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_19); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +uint8_t x_40; +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_13); +if (x_40 == 0) +{ +return x_13; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_13, 0); +x_42 = lean_ctor_get(x_13, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_13); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("structures", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___boxed), 8, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2; +x_2 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4; +return x_1; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_4 = lean_unbox(x_2); +lean_dec(x_2); +x_5 = l_Std_DHashMap_Internal_AssocList_getD___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__1(x_1, x_4, x_3); +lean_dec(x_3); +lean_dec(x_1); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_throwError___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Basic(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Cases(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Structures(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_Basic(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Cases(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__4); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__5); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__6); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__7); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__8); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__9); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__10); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__11); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__12); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__13); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__14); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__15); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_typeInteresting___closed__16); +l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1 = _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1(); +lean_mark_persistent(l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__1); +l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2 = _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2(); +lean_mark_persistent(l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__2); +l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3 = _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3(); +lean_mark_persistent(l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__3); +l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4 = _init_l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4(); +lean_mark_persistent(l_Lean_getConstInfo___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__2___closed__4); +l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1 = _init_l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__1); +l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2 = _init_l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2(); +lean_mark_persistent(l_Lean_getConstInfoInduct___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__1___closed__2); +l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1 = _init_l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1(); +lean_mark_persistent(l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__1); +l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2 = _init_l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2(); +lean_mark_persistent(l_Lean_getConstInfoCtor___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___spec__5___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_constInteresting___lambda__2___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___spec__4___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass_checkContext___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__4); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___elambda__1___closed__5); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__1); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__2); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__3); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4 = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass___closed__4); +l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass = _init_l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass(); +lean_mark_persistent(l_Lean_Elab_Tactic_BVDecide_Frontend_Normalize_structuresPass); +return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Elab/Tactic/Grind.c b/stage0/stdlib/Lean/Elab/Tactic/Grind.c index ae9924d15b..c18cd1ee58 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Grind.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Grind.c @@ -18,7 +18,6 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_elabGrind lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_mkGrindParams___lambda__2___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Elab_Tactic_evalGrind__1(lean_object*); -lean_object* l_Lean_Meta_Grind_goalsToMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Grind_0__Lean_Elab_Tactic_elabFallback___elambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Grind_0__Lean_Elab_Tactic_elabFallback___closed__4; @@ -178,6 +177,7 @@ static lean_object* l_Lean_Elab_Tactic_elabGrindPattern___closed__1; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabGrindConfig___lambda__3(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Tactic_Grind_0__Lean_Elab_Tactic_elabFallback_unsafe__1___spec__3(lean_object*); lean_object* l_Lean_Elab_realizeGlobalConstNoOverloadWithInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Meta_Grind_Result_hasFailures(lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabGrindParams(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Elab_Tactic_Config_0__Lean_Elab_Tactic_mkConfigItemViews(lean_object*); static lean_object* l_Lean_preprocessSyntaxAndResolve___at_Lean_Elab_Tactic_elabGrindPattern___spec__7___closed__3; @@ -262,6 +262,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Tactic_Grind uint8_t l_Lean_Syntax_isNone(lean_object*); LEAN_EXPORT lean_object* l_Lean_ofExcept___at___private_Lean_Elab_Tactic_Grind_0__Lean_Elab_Tactic_elabFallback_unsafe__1___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_Result_toMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalUnsafe____x40_Lean_Elab_Tactic_Grind___hyg_5____boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Term_elabTermAndSynthesize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getCasesTypes___rarg(lean_object*, lean_object*); @@ -812,25 +813,26 @@ return x_18; static lean_object* _init_l_Lean_Elab_Tactic_elabGrindConfig___lambda__3___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; x_1 = lean_unsigned_to_nat(8u); x_2 = lean_unsigned_to_nat(5u); x_3 = lean_unsigned_to_nat(1000u); x_4 = 1; -x_5 = lean_unsigned_to_nat(1u); -x_6 = lean_alloc_ctor(0, 6, 5); -lean_ctor_set(x_6, 0, x_1); -lean_ctor_set(x_6, 1, x_2); -lean_ctor_set(x_6, 2, x_2); -lean_ctor_set(x_6, 3, x_3); -lean_ctor_set(x_6, 4, x_5); -lean_ctor_set(x_6, 5, x_3); -lean_ctor_set_uint8(x_6, sizeof(void*)*6, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*6 + 1, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*6 + 2, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*6 + 3, x_4); -lean_ctor_set_uint8(x_6, sizeof(void*)*6 + 4, x_4); -return x_6; +x_5 = 0; +x_6 = lean_unsigned_to_nat(1u); +x_7 = lean_alloc_ctor(0, 6, 5); +lean_ctor_set(x_7, 0, x_1); +lean_ctor_set(x_7, 1, x_2); +lean_ctor_set(x_7, 2, x_2); +lean_ctor_set(x_7, 3, x_3); +lean_ctor_set(x_7, 4, x_6); +lean_ctor_set(x_7, 5, x_3); +lean_ctor_set_uint8(x_7, sizeof(void*)*6, x_4); +lean_ctor_set_uint8(x_7, sizeof(void*)*6 + 1, x_4); +lean_ctor_set_uint8(x_7, sizeof(void*)*6 + 2, x_4); +lean_ctor_set_uint8(x_7, sizeof(void*)*6 + 3, x_5); +lean_ctor_set_uint8(x_7, sizeof(void*)*6 + 4, x_4); +return x_7; } } LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_elabGrindConfig___lambda__3(uint8_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { @@ -6066,7 +6068,6 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -lean_inc(x_2); x_12 = l_Lean_Elab_Tactic_mkGrindParams(x_2, x_3, x_4, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_12) == 0) { @@ -6090,79 +6091,78 @@ if (x_16 == 0) lean_object* x_17; lean_object* x_18; uint8_t x_19; x_17 = lean_ctor_get(x_15, 0); x_18 = lean_ctor_get(x_15, 1); -x_19 = l_List_isEmpty___rarg(x_17); +x_19 = l_Lean_Meta_Grind_Result_hasFailures(x_17); if (x_19 == 0) { lean_object* x_20; -lean_free_object(x_15); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -x_20 = l_Lean_Meta_Grind_goalsToMessageData(x_17, x_2, x_7, x_8, x_9, x_10, x_18); -if (lean_obj_tag(x_20) == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_dec(x_20); -x_23 = l_Lean_Elab_Tactic_grind___closed__2; -x_24 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_21); -x_25 = l_Lean_Elab_Tactic_elabGrindConfig___lambda__1___closed__6; -x_26 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -x_27 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_26, x_7, x_8, x_9, x_10, x_22); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -return x_27; -} -else -{ -uint8_t x_28; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -x_28 = !lean_is_exclusive(x_20); -if (x_28 == 0) -{ -return x_20; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_20, 0); -x_30 = lean_ctor_get(x_20, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_20); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -} -else -{ -lean_object* x_32; lean_dec(x_17); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_2); -x_32 = lean_box(0); -lean_ctor_set(x_15, 0, x_32); +x_20 = lean_box(0); +lean_ctor_set(x_15, 0, x_20); return x_15; } +else +{ +lean_object* x_21; +lean_free_object(x_15); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_21 = l_Lean_Meta_Grind_Result_toMessageData(x_17, x_7, x_8, x_9, x_10, x_18); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_Elab_Tactic_grind___closed__2; +x_25 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_22); +x_26 = l_Lean_Elab_Tactic_elabGrindConfig___lambda__1___closed__6; +x_27 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_26); +x_28 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_27, x_7, x_8, x_9, x_10, x_23); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_28; +} +else +{ +uint8_t x_29; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_29 = !lean_is_exclusive(x_21); +if (x_29 == 0) +{ +return x_21; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_21, 0); +x_31 = lean_ctor_get(x_21, 1); +lean_inc(x_31); +lean_inc(x_30); +lean_dec(x_21); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; +} +} +} } else { @@ -6172,84 +6172,83 @@ x_34 = lean_ctor_get(x_15, 1); lean_inc(x_34); lean_inc(x_33); lean_dec(x_15); -x_35 = l_List_isEmpty___rarg(x_33); +x_35 = l_Lean_Meta_Grind_Result_hasFailures(x_33); if (x_35 == 0) { -lean_object* x_36; -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -x_36 = l_Lean_Meta_Grind_goalsToMessageData(x_33, x_2, x_7, x_8, x_9, x_10, x_34); -if (lean_obj_tag(x_36) == 0) -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); -lean_dec(x_36); -x_39 = l_Lean_Elab_Tactic_grind___closed__2; -x_40 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_37); -x_41 = l_Lean_Elab_Tactic_elabGrindConfig___lambda__1___closed__6; -x_42 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -x_43 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_42, x_7, x_8, x_9, x_10, x_38); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -return x_43; -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -x_44 = lean_ctor_get(x_36, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_36, 1); -lean_inc(x_45); -if (lean_is_exclusive(x_36)) { - lean_ctor_release(x_36, 0); - lean_ctor_release(x_36, 1); - x_46 = x_36; -} else { - lean_dec_ref(x_36); - x_46 = lean_box(0); -} -if (lean_is_scalar(x_46)) { - x_47 = lean_alloc_ctor(1, 2, 0); -} else { - x_47 = x_46; -} -lean_ctor_set(x_47, 0, x_44); -lean_ctor_set(x_47, 1, x_45); -return x_47; -} -} -else -{ -lean_object* x_48; lean_object* x_49; +lean_object* x_36; lean_object* x_37; lean_dec(x_33); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_2); -x_48 = lean_box(0); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_34); +x_36 = lean_box(0); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_34); +return x_37; +} +else +{ +lean_object* x_38; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_38 = l_Lean_Meta_Grind_Result_toMessageData(x_33, x_7, x_8, x_9, x_10, x_34); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Elab_Tactic_grind___closed__2; +x_42 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_39); +x_43 = l_Lean_Elab_Tactic_elabGrindConfig___lambda__1___closed__6; +x_44 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +x_45 = l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(x_44, x_7, x_8, x_9, x_10, x_40); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_46 = lean_ctor_get(x_38, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_38, 1); +lean_inc(x_47); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_48 = x_38; +} else { + lean_dec_ref(x_38); + x_48 = lean_box(0); +} +if (lean_is_scalar(x_48)) { + x_49 = lean_alloc_ctor(1, 2, 0); +} else { + x_49 = x_48; +} +lean_ctor_set(x_49, 0, x_46); +lean_ctor_set(x_49, 1, x_47); return x_49; } } } +} else { uint8_t x_50; @@ -6257,7 +6256,6 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_2); x_50 = !lean_is_exclusive(x_15); if (x_50 == 0) { @@ -6287,7 +6285,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_2); lean_dec(x_1); x_54 = !lean_is_exclusive(x_12); if (x_54 == 0) diff --git a/stage0/stdlib/Lean/Elab/Tactic/Induction.c b/stage0/stdlib/Lean/Elab/Tactic/Induction.c index 08c872df44..61888c8a66 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Induction.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Induction.c @@ -253,6 +253,7 @@ lean_object* l_Lean_Elab_Term_withoutHeedElabAsElimImp___rarg(lean_object*, lean LEAN_EXPORT uint8_t l___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_ElimApp_isWildcard(lean_object*); lean_object* lean_io_promise_resolve(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_ElimApp_evalAlts_applyAltStx___lambda__6___closed__3; +lean_object* l_Array_range___lambda__1___boxed(lean_object*); size_t lean_usize_of_nat(lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_ElimApp_checkAltNames___spec__4___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_evalInduction_checkTargets___spec__1___at_Lean_Elab_Tactic_evalInduction_checkTargets___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -312,6 +313,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_evalInduct static lean_object* l_Lean_Elab_Tactic_getInductiveValFromMajor___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_generalizeVars___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_getAltRHS___boxed(lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_ElimApp_setMotiveArg___closed__1; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_ElimApp_saveAltVarsInfo___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -449,6 +451,7 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarImpl(lean_o lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_evalInduction_checkTargets___spec__1___at_Lean_Elab_Tactic_evalInduction_checkTargets___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Syntax_isIdent(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_evalInduction___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_ElimApp_evalAlts_applyPreTac___spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Elab_addConstInfo___at_Lean_Elab_Tactic_ElimApp_evalAlts_applyAltStx___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -624,7 +627,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_ElimApp_evalAlts___lambda__1___boxed LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_checkAltsOfOptInductionAlts___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_ElimApp_evalAlts___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Term_withoutTacticIncrementality___at_Lean_Elab_Tactic_ElimApp_evalAlts_applyPreTac___spec__1___closed__4; -lean_object* l_List_iotaTR(lean_object*); static lean_object* l___regBuiltin_Lean_Elab_Tactic_evalInduction_declRange__1___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncremental___spec__8___lambda__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Induction___hyg_8704____closed__1; @@ -721,6 +723,7 @@ static lean_object* l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2__ uint8_t lean_nat_dec_le(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_getInductiveValFromMajor___lambda__2___closed__14; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_initFn____x40_Lean_Elab_Tactic_Induction___hyg_8704_(lean_object*); +static lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1; uint8_t lean_usize_dec_lt(size_t, size_t); uint8_t l_Array_contains___at___private_Lean_Meta_FunInfo_0__Lean_Meta_collectDeps_visit___spec__2(lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Induction_0__Lean_Elab_Tactic_withAltsOfOptInductionAlts___rarg___lambda__1___closed__2; @@ -17066,12 +17069,20 @@ goto _start; } } } +static lean_object* _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_range___lambda__1___boxed), 1, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; size_t x_21; lean_object* x_22; -x_13 = l_List_iotaTR(x_2); -x_14 = lean_array_mk(x_13); +x_13 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1; +x_14 = l_Array_ofFn___rarg(x_2, x_13); x_15 = lean_array_size(x_14); x_16 = 0; x_17 = l_Array_mapMUnsafe_map___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__4(x_15, x_16, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); @@ -17564,6 +17575,7 @@ lean_closure_set(x_22, 9, x_9); lean_closure_set(x_22, 10, x_10); x_23 = l_Lean_Elab_Tactic_instInhabitedTacticParsedSnapshot; x_24 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3(x_23, x_21, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +lean_dec(x_21); return x_24; } } @@ -17754,6 +17766,15 @@ lean_dec(x_2); return x_19; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_2); +return x_13; +} +} LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__1___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; @@ -33585,6 +33606,8 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncrem lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncremental___spec__8___lambda__2___closed__3); l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncremental___spec__8___lambda__2___boxed__const__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncremental___spec__8___lambda__2___boxed__const__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithIncremental___spec__8___lambda__2___boxed__const__1); +l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1 = _init_l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1(); +lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromises___at_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___spec__3___closed__1); l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2___closed__1 = _init_l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2___closed__1); l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2___closed__2 = _init_l_Lean_Elab_Tactic_ElimApp_evalAlts_goWithInfo___lambda__2___closed__2(); diff --git a/stage0/stdlib/Lean/Elab/Tactic/Monotonicity.c b/stage0/stdlib/Lean/Elab/Tactic/Monotonicity.c index ce303a4fca..6b56d63704 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/Monotonicity.c +++ b/stage0/stdlib/Lean/Elab/Tactic/Monotonicity.c @@ -16,14 +16,13 @@ extern "C" { lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_bindingName_x21(lean_object*); static lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__1___closed__2; -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1; +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__15___closed__6; static size_t l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__3___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__3___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Meta_Monotonicity_solveMono___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__1; -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2; static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Monotonicity_headBetaUnderLambda___spec__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_headBetaUnderLambda(lean_object*); @@ -34,7 +33,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkAppOptM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5; lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); size_t lean_usize_shift_right(size_t, size_t); @@ -46,18 +44,18 @@ static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMono___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432_(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__1; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__9___closed__4; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__3; lean_object* l_Lean_ConstantInfo_type(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Monotonicity_solveMonoStep___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__2; uint8_t lean_usize_dec_le(size_t, size_t); lean_object* l_Lean_indentD(lean_object*); LEAN_EXPORT lean_object* l___private_Init_Data_Array_BinSearch_0__Array_binInsertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_projExpr_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__2; @@ -65,7 +63,7 @@ static lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Monotonici size_t lean_uint64_to_usize(uint64_t); uint64_t lean_uint64_lor(uint64_t, uint64_t); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__17; -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___rarg___closed__5; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__7; @@ -108,15 +106,12 @@ lean_object* l_Lean_Elab_Tactic_getMainGoal(lean_object*, lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Monotonicity_headBetaUnderLambda___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__10(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__12; -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__6___closed__1; -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -127,7 +122,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__3(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__8___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Monotonicity_solveMonoStep___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___rarg___closed__2; @@ -137,29 +131,31 @@ LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Meta_Monot lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Exception_toMessageData(lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___rarg___closed__6; +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4; lean_object* l_Lean_Expr_appArg_x21(lean_object*); -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1; static lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__9___closed__1; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isBVar(lean_object*); +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__7; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__6___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isLambda(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__18; lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Meta_Split_applyMatchSplitter___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_ptr_addr(lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__9___closed__3; +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaBoundedTelescope___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____spec__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_findMonoThms(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static uint64_t l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__12; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__6(lean_object*, size_t, size_t, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6; static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__8___closed__1; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_checked_assign(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -170,7 +166,6 @@ LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_Monotonicity_initFn__ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__8; -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__11; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__8; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___closed__1; @@ -184,23 +179,23 @@ static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Mono lean_object* l_Lean_registerSimpleScopedEnvExtension___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_evalMonotonicity___boxed(lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4; static uint64_t l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__15; static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__9___closed__1; static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_applyConst___lambda__1___closed__4; static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__5___closed__2; +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1; lean_object* lean_nat_div(lean_object*, lean_object*); lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallMetaTelescopeReducingAux(lean_object*, uint8_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__5___closed__16; +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__10; -LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433_(lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__14; @@ -213,7 +208,6 @@ static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Mono lean_object* l_Lean_MessageData_andList(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK(lean_object*); lean_object* l_Lean_Meta_Match_MatcherInfo_getFirstDiscrPos(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__3; lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); lean_object* l_outOfBounds___rarg(lean_object*); @@ -250,7 +244,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__9___bo static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__15___closed__8; static lean_object* l___regBuiltin_Lean_Meta_Monotonicity_evalMonotonicity__1___closed__2; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_headBetaUnderLambda___lambda__1___boxed(lean_object*, lean_object*); lean_object* l_panic___at_Lean_Expr_appFn_x21___spec__1(lean_object*); @@ -266,6 +260,7 @@ static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Mono LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isMatcherAppCore_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__1(uint64_t, uint64_t, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Monotonicity_evalMonotonicity__1(lean_object*); @@ -280,7 +275,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_evalMonotonicity___rarg(lean_o LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3; +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__10___closed__2; lean_object* l_Lean_Meta_DiscrTree_mkPath(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__5; @@ -302,7 +299,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__11___b LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249_(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__10; static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__2___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____lambda__1(lean_object*, lean_object*); @@ -318,10 +315,12 @@ static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__15___closed static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__8; static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2; extern lean_object* l_Lean_Meta_DiscrTree_instInhabitedKey; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__5; +static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5; lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); lean_object* l_Lean_Meta_mapErrorImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); @@ -366,6 +365,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__10___b static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__8; LEAN_EXPORT lean_object* l_Lean_Meta_DiscrTree_insertCore___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7; lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__15___closed__3; static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Monotonicity_headBetaUnderLambda___spec__1___closed__2; @@ -388,7 +388,6 @@ lean_object* l_Lean_MVarId_apply(lean_object*, lean_object*, lean_object*, lean_ lean_object* l_Lean_registerBuiltinAttribute(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__5(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___rarg___closed__3; -static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1; lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_sub(size_t, size_t); @@ -409,6 +408,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic size_t lean_array_size(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__5___closed__3; lean_object* l_Lean_throwError___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -437,7 +437,6 @@ lean_object* l_Lean_Expr_headBeta(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMono(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2; uint8_t l_Lean_Expr_isMData(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__5___closed__1; static lean_object* l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__5; @@ -450,13 +449,14 @@ lean_object* l_Lean_Meta_intro1Core(lean_object*, uint8_t, lean_object*, lean_ob LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__9___closed__6; lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5; static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_defaultFailK___rarg___closed__1; uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__6; lean_object* l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(lean_object*); static lean_object* l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_applyConst___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_whnfUntil(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__2; uint8_t l_Lean_Exception_isRuntime(lean_object*); @@ -477,17 +477,16 @@ lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Tactic_replaceMainGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_expr_instantiate1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__7(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Meta_DiscrTree_Key_hash(lean_object*); LEAN_EXPORT lean_object* l_Array_binInsertM___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_insertIdx_loop___rarg(lean_object*, lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8; static lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__1; lean_object* l_Lean_Meta_etaExpand(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_isEmpty___rarg(lean_object*); static lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__12___closed__4; @@ -4659,38 +4658,48 @@ static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___c _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("monotone_pprod_snd", 18, 18); +x_1 = lean_mk_string_unchecked("PProd", 5, 5); return x_1; } } static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__2() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; -x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__3; -x_3 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__1; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotone_snd", 12, 12); +return x_1; } } static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__3() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("monotone_pprod_fst", 18, 18); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; +x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__3; +x_3 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__1; +x_4 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotone_fst", 12, 12); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__3; -x_3 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__3; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; +x_3 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__1; +x_4 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; } } LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { @@ -4745,7 +4754,7 @@ x_34 = lean_array_mk(x_33); if (x_16 == 0) { lean_object* x_35; lean_object* x_36; -x_35 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__2; +x_35 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__3; x_36 = l_Lean_Meta_mkAppOptM(x_35, x_34, x_9, x_10, x_11, x_12, x_13); if (lean_obj_tag(x_36) == 0) { @@ -4802,7 +4811,7 @@ return x_47; else { lean_object* x_48; lean_object* x_49; -x_48 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4; +x_48 = l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5; x_49 = l_Lean_Meta_mkAppOptM(x_48, x_34, x_9, x_10, x_11, x_12, x_13); if (lean_obj_tag(x_49) == 0) { @@ -9749,86 +9758,15 @@ return x_56; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { -_start: -{ -lean_object* x_14; uint8_t x_15; lean_object* x_16; -x_14 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__19___boxed), 10, 4); -lean_closure_set(x_14, 0, x_1); -lean_closure_set(x_14, 1, x_2); -lean_closure_set(x_14, 2, x_3); -lean_closure_set(x_14, 3, x_4); -x_15 = 0; -x_16 = l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___spec__1___rarg(x_5, x_6, x_7, x_14, x_15, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_16) == 0) -{ -uint8_t x_17; -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_18 = lean_ctor_get(x_16, 0); -x_19 = l_Lean_Expr_mvarId_x21(x_18); -lean_dec(x_18); -x_20 = lean_box(0); -x_21 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -lean_ctor_set(x_16, 0, x_21); -return x_16; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_22 = lean_ctor_get(x_16, 0); -x_23 = lean_ctor_get(x_16, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_16); -x_24 = l_Lean_Expr_mvarId_x21(x_22); -lean_dec(x_22); -x_25 = lean_box(0); -x_26 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_26, 0, x_24); -lean_ctor_set(x_26, 1, x_25); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); -return x_27; -} -} -else -{ -uint8_t x_28; -x_28 = !lean_is_exclusive(x_16); -if (x_28 == 0) -{ -return x_16; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_16, 0); -x_30 = lean_ctor_get(x_16, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_16); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { if (lean_obj_tag(x_3) == 8) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_69; lean_dec(x_9); lean_dec(x_8); +lean_dec(x_7); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); @@ -9841,144 +9779,292 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_3, 3); lean_inc(x_20); lean_dec(x_3); -x_21 = l_Lean_Expr_hasLooseBVars(x_18); -if (x_21 == 0) +x_69 = l_Lean_Expr_hasLooseBVars(x_18); +if (x_69 == 0) { -uint8_t x_22; -x_22 = l_Lean_Expr_hasLooseBVars(x_19); -if (x_22 == 0) +uint8_t x_70; +x_70 = l_Lean_Expr_hasLooseBVars(x_19); +if (x_70 == 0) { -lean_object* x_23; lean_object* x_24; -lean_dec(x_7); -x_23 = lean_box(0); -x_24 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_4, x_20, x_10, x_6, x_17, x_18, x_19, x_23, x_12, x_13, x_14, x_15, x_16); -return x_24; +lean_object* x_71; uint8_t x_72; lean_object* x_73; +x_71 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__19___boxed), 10, 4); +lean_closure_set(x_71, 0, x_4); +lean_closure_set(x_71, 1, x_20); +lean_closure_set(x_71, 2, x_10); +lean_closure_set(x_71, 3, x_6); +x_72 = 0; +x_73 = l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___spec__1___rarg(x_17, x_18, x_19, x_71, x_72, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_73) == 0) +{ +uint8_t x_74; +x_74 = !lean_is_exclusive(x_73); +if (x_74 == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_75 = lean_ctor_get(x_73, 0); +x_76 = l_Lean_Expr_mvarId_x21(x_75); +lean_dec(x_75); +x_77 = lean_box(0); +x_78 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_78, 0, x_76); +lean_ctor_set(x_78, 1, x_77); +lean_ctor_set(x_73, 0, x_78); +return x_73; } else { -lean_object* x_25; lean_object* x_26; -x_25 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__9___closed__1; -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_4); -x_26 = lean_apply_8(x_7, lean_box(0), x_4, x_25, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_26) == 0) -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_26, 0); -lean_inc(x_27); -x_28 = lean_ctor_get(x_26, 1); -lean_inc(x_28); -lean_dec(x_26); -x_29 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_4, x_20, x_10, x_6, x_17, x_18, x_19, x_27, x_12, x_13, x_14, x_15, x_28); -lean_dec(x_27); -return x_29; +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_79 = lean_ctor_get(x_73, 0); +x_80 = lean_ctor_get(x_73, 1); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_73); +x_81 = l_Lean_Expr_mvarId_x21(x_79); +lean_dec(x_79); +x_82 = lean_box(0); +x_83 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_83, 0, x_81); +lean_ctor_set(x_83, 1, x_82); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_83); +lean_ctor_set(x_84, 1, x_80); +return x_84; +} } else { -uint8_t x_30; -lean_dec(x_20); -lean_dec(x_19); +uint8_t x_85; +x_85 = !lean_is_exclusive(x_73); +if (x_85 == 0) +{ +return x_73; +} +else +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; +x_86 = lean_ctor_get(x_73, 0); +x_87 = lean_ctor_get(x_73, 1); +lean_inc(x_87); +lean_inc(x_86); +lean_dec(x_73); +x_88 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_88, 0, x_86); +lean_ctor_set(x_88, 1, x_87); +return x_88; +} +} +} +else +{ +lean_object* x_89; lean_dec(x_18); lean_dec(x_17); +x_89 = lean_box(0); +x_21 = x_89; +goto block_68; +} +} +else +{ +lean_object* x_90; +lean_dec(x_18); +lean_dec(x_17); +x_90 = lean_box(0); +x_21 = x_90; +goto block_68; +} +block_68: +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_dec(x_21); +x_22 = l_Lean_Expr_bindingDomain_x21(x_4); +x_23 = lean_expr_instantiate1(x_20, x_19); +lean_dec(x_19); +lean_dec(x_20); +x_24 = l_Lean_Expr_appFn_x21(x_10); +lean_dec(x_10); +if (lean_obj_tag(x_4) == 6) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; lean_object* x_55; size_t x_56; size_t x_57; uint8_t x_58; +x_51 = lean_ctor_get(x_4, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_4, 1); +lean_inc(x_52); +x_53 = lean_ctor_get(x_4, 2); +lean_inc(x_53); +x_54 = lean_ctor_get_uint8(x_4, sizeof(void*)*3 + 8); +lean_dec(x_4); +lean_inc(x_53); +lean_inc(x_52); +lean_inc(x_51); +x_55 = l_Lean_Expr_lam___override(x_51, x_52, x_53, x_54); +x_56 = lean_ptr_addr(x_52); +lean_dec(x_52); +x_57 = lean_ptr_addr(x_22); +x_58 = lean_usize_dec_eq(x_56, x_57); +if (x_58 == 0) +{ +lean_object* x_59; +lean_dec(x_55); +lean_dec(x_53); +x_59 = l_Lean_Expr_lam___override(x_51, x_22, x_23, x_54); +x_25 = x_59; +goto block_50; +} +else +{ +size_t x_60; size_t x_61; uint8_t x_62; +x_60 = lean_ptr_addr(x_53); +lean_dec(x_53); +x_61 = lean_ptr_addr(x_23); +x_62 = lean_usize_dec_eq(x_60, x_61); +if (x_62 == 0) +{ +lean_object* x_63; +lean_dec(x_55); +x_63 = l_Lean_Expr_lam___override(x_51, x_22, x_23, x_54); +x_25 = x_63; +goto block_50; +} +else +{ +uint8_t x_64; +x_64 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_54, x_54); +if (x_64 == 0) +{ +lean_object* x_65; +lean_dec(x_55); +x_65 = l_Lean_Expr_lam___override(x_51, x_22, x_23, x_54); +x_25 = x_65; +goto block_50; +} +else +{ +lean_dec(x_51); +lean_dec(x_23); +lean_dec(x_22); +x_25 = x_55; +goto block_50; +} +} +} +} +else +{ +lean_object* x_66; lean_object* x_67; +lean_dec(x_23); +lean_dec(x_22); +lean_dec(x_4); +x_66 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__15___closed__8; +x_67 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_66); +x_25 = x_67; +goto block_50; +} +block_50: +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; +x_26 = l_Lean_Expr_app___override(x_24, x_25); +x_27 = lean_box(0); +lean_inc(x_12); +x_28 = l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(x_26, x_27, x_12, x_13, x_14, x_15, x_16); +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_28, 0); +x_31 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +x_32 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_6, x_30, x_12, x_13, x_14, x_15, x_31); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_4); -x_30 = !lean_is_exclusive(x_26); -if (x_30 == 0) +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) { -return x_26; +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_32, 0); +lean_dec(x_34); +x_35 = l_Lean_Expr_mvarId_x21(x_30); +lean_dec(x_30); +x_36 = lean_box(0); +lean_ctor_set_tag(x_28, 1); +lean_ctor_set(x_28, 1, x_36); +lean_ctor_set(x_28, 0, x_35); +lean_ctor_set(x_32, 0, x_28); +return x_32; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_26, 0); -x_32 = lean_ctor_get(x_26, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_26); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -} -} -else -{ -lean_object* x_34; lean_object* x_35; -x_34 = l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertAux___at_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____spec__9___closed__1; -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_4); -x_35 = lean_apply_8(x_7, lean_box(0), x_4, x_34, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_35) == 0) -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_ctor_get(x_35, 1); +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_37 = lean_ctor_get(x_32, 1); lean_inc(x_37); -lean_dec(x_35); -x_38 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_4, x_20, x_10, x_6, x_17, x_18, x_19, x_36, x_12, x_13, x_14, x_15, x_37); -lean_dec(x_36); -return x_38; +lean_dec(x_32); +x_38 = l_Lean_Expr_mvarId_x21(x_30); +lean_dec(x_30); +x_39 = lean_box(0); +lean_ctor_set_tag(x_28, 1); +lean_ctor_set(x_28, 1, x_39); +lean_ctor_set(x_28, 0, x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_28); +lean_ctor_set(x_40, 1, x_37); +return x_40; +} } else { -uint8_t x_39; -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_17); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_41 = lean_ctor_get(x_28, 0); +x_42 = lean_ctor_get(x_28, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_28); +lean_inc(x_41); +x_43 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_6, x_41, x_12, x_13, x_14, x_15, x_42); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_4); -x_39 = !lean_is_exclusive(x_35); -if (x_39 == 0) -{ -return x_35; +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +if (lean_is_exclusive(x_43)) { + lean_ctor_release(x_43, 0); + lean_ctor_release(x_43, 1); + x_45 = x_43; +} else { + lean_dec_ref(x_43); + x_45 = lean_box(0); } -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_40 = lean_ctor_get(x_35, 0); -x_41 = lean_ctor_get(x_35, 1); -lean_inc(x_41); -lean_inc(x_40); -lean_dec(x_35); -x_42 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -return x_42; +x_46 = l_Lean_Expr_mvarId_x21(x_41); +lean_dec(x_41); +x_47 = lean_box(0); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +if (lean_is_scalar(x_45)) { + x_49 = lean_alloc_ctor(0, 2, 0); +} else { + x_49 = x_45; +} +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_44); +return x_49; } } } } else { -lean_object* x_43; lean_object* x_44; +lean_object* x_91; lean_object* x_92; lean_dec(x_10); -x_43 = lean_box(0); -x_44 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_43, x_12, x_13, x_14, x_15, x_16); -return x_44; +x_91 = lean_box(0); +x_92 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_91, x_12, x_13, x_14, x_15, x_16); +return x_92; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { uint8_t x_17; @@ -9987,7 +10073,7 @@ if (x_17 == 0) { lean_object* x_18; lean_object* x_19; x_18 = lean_box(0); -x_19 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18, x_12, x_13, x_14, x_15, x_16); +x_19 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18, x_12, x_13, x_14, x_15, x_16); return x_19; } else @@ -10176,7 +10262,7 @@ return x_47; } } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1() { _start: { lean_object* x_1; @@ -10184,18 +10270,18 @@ x_1 = lean_mk_string_unchecked("monotone_const", 14, 14); return x_1; } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____lambda__4___closed__3; -x_3 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1; +x_3 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; lean_object* x_16; uint8_t x_17; @@ -10214,7 +10300,7 @@ lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_18 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2; +x_18 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2; x_19 = l___private_Lean_Elab_Tactic_Monotonicity_0__Lean_Meta_Monotonicity_applyConst(x_4, x_18, x_10, x_11, x_12, x_13, x_14); if (lean_obj_tag(x_19) == 0) { @@ -10265,12 +10351,12 @@ else { lean_object* x_28; lean_object* x_29; x_28 = lean_box(0); -x_29 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(x_1, x_2, x_16, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_28, x_10, x_11, x_12, x_13, x_14); +x_29 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21(x_1, x_2, x_16, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_28, x_10, x_11, x_12, x_13, x_14); return x_29; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; @@ -10298,7 +10384,7 @@ lean_inc(x_21); x_22 = lean_ctor_get(x_20, 1); lean_inc(x_22); lean_dec(x_20); -x_23 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(x_5, x_6, x_1, x_2, x_3, x_7, x_8, x_4, x_21, x_10, x_11, x_12, x_13, x_22); +x_23 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(x_5, x_6, x_1, x_2, x_3, x_7, x_8, x_4, x_21, x_10, x_11, x_12, x_13, x_22); return x_23; } else @@ -10339,12 +10425,12 @@ return x_27; else { lean_object* x_28; -x_28 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(x_5, x_6, x_1, x_2, x_3, x_7, x_8, x_4, x_18, x_10, x_11, x_12, x_13, x_17); +x_28 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(x_5, x_6, x_1, x_2, x_3, x_7, x_8, x_4, x_18, x_10, x_11, x_12, x_13, x_17); return x_28; } } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1() { _start: { lean_object* x_1; @@ -10352,22 +10438,22 @@ x_1 = lean_mk_string_unchecked("Unexpected goal:", 16, 16); return x_1; } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1; +x_1 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_8 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_8, 0, x_1); -x_9 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2; +x_9 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2; x_10 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_8); @@ -10379,7 +10465,7 @@ x_13 = l_Lean_throwError___at_Lean_Meta_Split_applyMatchSplitter___spec__1(x_12, return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; @@ -10400,7 +10486,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_16 = lean_box(0); -x_17 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_16, x_6, x_7, x_8, x_9, x_13); +x_17 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_16, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10422,7 +10508,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_21 = lean_box(0); -x_22 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_21, x_6, x_7, x_8, x_9, x_13); +x_22 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_21, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10445,7 +10531,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_26 = lean_box(0); -x_27 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_26, x_6, x_7, x_8, x_9, x_13); +x_27 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_26, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10469,7 +10555,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_31 = lean_box(0); -x_32 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_31, x_6, x_7, x_8, x_9, x_13); +x_32 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_31, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10494,7 +10580,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_36 = lean_box(0); -x_37 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_36, x_6, x_7, x_8, x_9, x_13); +x_37 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_36, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10521,7 +10607,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_42 = lean_box(0); -x_43 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_3, x_42, x_6, x_7, x_8, x_9, x_13); +x_43 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_3, x_42, x_6, x_7, x_8, x_9, x_13); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -10531,7 +10617,7 @@ return x_43; else { lean_object* x_44; -x_44 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_2, x_3, x_4, x_1, x_38, x_33, x_28, x_23, x_18, x_6, x_7, x_8, x_9, x_13); +x_44 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23(x_2, x_3, x_4, x_1, x_38, x_33, x_28, x_23, x_18, x_6, x_7, x_8, x_9, x_13); return x_44; } } @@ -10541,7 +10627,7 @@ return x_44; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; @@ -10560,7 +10646,7 @@ if (x_13 == 0) { lean_object* x_14; lean_object* x_15; x_14 = lean_box(0); -x_15 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_11, x_2, x_1, x_3, x_14, x_5, x_6, x_7, x_8, x_12); +x_15 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_11, x_2, x_1, x_3, x_14, x_5, x_6, x_7, x_8, x_12); return x_15; } else @@ -10694,7 +10780,7 @@ return x_41; } } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1() { _start: { lean_object* x_1; @@ -10702,16 +10788,16 @@ x_1 = lean_mk_string_unchecked("monotonicity at\n", 16, 16); return x_1; } } -static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2() { +static lean_object* _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1; +x_1 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; uint8_t x_11; @@ -10728,7 +10814,7 @@ x_12 = lean_ctor_get(x_9, 1); lean_inc(x_12); lean_dec(x_9); x_13 = lean_box(0); -x_14 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(x_2, x_1, x_3, x_13, x_4, x_5, x_6, x_7, x_12); +x_14 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_2, x_1, x_3, x_13, x_4, x_5, x_6, x_7, x_12); return x_14; } else @@ -10744,7 +10830,7 @@ lean_dec(x_17); lean_inc(x_2); x_18 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_18, 0, x_2); -x_19 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2; +x_19 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2; lean_ctor_set_tag(x_9, 7); lean_ctor_set(x_9, 1, x_18); lean_ctor_set(x_9, 0, x_19); @@ -10759,7 +10845,7 @@ lean_inc(x_23); x_24 = lean_ctor_get(x_22, 1); lean_inc(x_24); lean_dec(x_22); -x_25 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(x_2, x_1, x_3, x_23, x_4, x_5, x_6, x_7, x_24); +x_25 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_2, x_1, x_3, x_23, x_4, x_5, x_6, x_7, x_24); lean_dec(x_23); return x_25; } @@ -10772,7 +10858,7 @@ lean_dec(x_9); lean_inc(x_2); x_27 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_27, 0, x_2); -x_28 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2; +x_28 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2; x_29 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); @@ -10787,7 +10873,7 @@ lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); lean_dec(x_32); -x_35 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(x_2, x_1, x_3, x_33, x_4, x_5, x_6, x_7, x_34); +x_35 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_2, x_1, x_3, x_33, x_4, x_5, x_6, x_7, x_34); lean_dec(x_33); return x_35; } @@ -10819,7 +10905,7 @@ _start: lean_object* x_8; lean_object* x_9; lean_object* x_10; x_8 = l_Lean_Meta_Monotonicity_solveMonoStep___closed__2; lean_inc(x_2); -x_9 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28), 8, 3); +x_9 = lean_alloc_closure((void*)(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27), 8, 3); lean_closure_set(x_9, 0, x_8); lean_closure_set(x_9, 1, x_2); lean_closure_set(x_9, 2, x_1); @@ -11086,13 +11172,13 @@ lean_dec(x_2); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { -lean_object* x_14; -x_14 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -lean_dec(x_8); -return x_14; +lean_object* x_17; +x_17 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__20(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_11); +return x_17; } } LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__21___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { @@ -11104,20 +11190,11 @@ lean_dec(x_11); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { -_start: -{ -lean_object* x_17; -x_17 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -lean_dec(x_11); -return x_17; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); @@ -11126,20 +11203,20 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_5); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Meta_Monotonicity_solveMonoStep___lambda__26(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_4); return x_10; } @@ -11525,7 +11602,7 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -11535,83 +11612,83 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__9; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__11; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_166____closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6; +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6; x_2 = l_Lean_Meta_Monotonicity_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_249____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8() { +static lean_object* _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7; -x_2 = lean_unsigned_to_nat(5433u); +x_1 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7; +x_2 = lean_unsigned_to_nat(5432u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Meta_Monotonicity_solveMonoStep___closed__2; x_3 = 0; -x_4 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8; +x_4 = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -11840,6 +11917,8 @@ l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__3 = _init_l_Lean_Me lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__3); l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4 = _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4(); lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__4); +l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5 = _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoCall___lambda__3___closed__5); l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__1); l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoCall___lambda__4___closed__2(); @@ -11946,18 +12025,18 @@ l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__1 = _init_l_Lean_M lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__1); l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__2(); lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__18___closed__2); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__1); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__23___closed__2); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__1); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__25___closed__2); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__1); -l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2(); -lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__28___closed__2); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__1); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__22___closed__2); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__1); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__24___closed__2); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__1); +l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2(); +lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___lambda__27___closed__2); l_Lean_Meta_Monotonicity_solveMonoStep___closed__1 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___closed__1(); lean_mark_persistent(l_Lean_Meta_Monotonicity_solveMonoStep___closed__1); l_Lean_Meta_Monotonicity_solveMonoStep___closed__2 = _init_l_Lean_Meta_Monotonicity_solveMonoStep___closed__2(); @@ -11979,23 +12058,23 @@ lean_mark_persistent(l___regBuiltin_Lean_Meta_Monotonicity_evalMonotonicity__1__ if (builtin) {res = l___regBuiltin_Lean_Meta_Monotonicity_evalMonotonicity__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__1); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__2); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__3); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__4); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__5); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__6); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__7); -l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8(); -lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433____closed__8); -if (builtin) {res = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5433_(lean_io_mk_world()); +}l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__1); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__2); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__3); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__4); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__5); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__6); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__7); +l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8 = _init_l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8(); +lean_mark_persistent(l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432____closed__8); +if (builtin) {res = l_initFn____x40_Lean_Elab_Tactic_Monotonicity___hyg_5432_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Elab/Tactic/RCases.c b/stage0/stdlib/Lean/Elab/Tactic/RCases.c index f53150380f..e4d6a8d52b 100644 --- a/stage0/stdlib/Lean/Elab/Tactic/RCases.c +++ b/stage0/stdlib/Lean/Elab/Tactic/RCases.c @@ -19,7 +19,6 @@ lean_object* l_Lean_Meta_getElimInfo(lean_object*, lean_object*, lean_object*, l static lean_object* l___regBuiltin_Lean_Elab_Tactic_RCases_evalRCases_declRange__1___closed__1; lean_object* l_Lean_Meta_FVarSubst_apply(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_RCases_initFn____x40_Lean_Elab_Tactic_RCases___hyg_6____closed__4; -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_RCases_termList_u03a3____x40_Lean_Elab_Tactic_RCases___hyg_268____closed__7; static lean_object* l_Lean_Elab_Tactic_RCases_termList_u03a0____x40_Lean_Elab_Tactic_RCases___hyg_539____closed__1; lean_object* l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -265,6 +264,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_Elab_Tactic_RC static lean_object* l_Lean_Elab_Tactic_RCases_instCoeIdentTSyntaxConsSyntaxNodeKindMkStr1Nil__lean___closed__1; lean_object* l_Array_unzip___rarg(lean_object*); lean_object* l_Lean_instantiateMVars___at___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___spec__7(lean_object*, lean_object*); +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Elab_Tactic_RCases_tryClearMany_x27___spec__50(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Elab_Tactic_RCases_tryClearMany_x27___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -426,6 +426,7 @@ static lean_object* l_Lean_Elab_Tactic_RCases_RCasesPatt_parse___closed__8; extern lean_object* l_Lean_instInhabitedFVarId; lean_object* l_Lean_mkConstWithLevelParams___at_Lean_Meta_mkSimpCongrTheorem___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_rcasesContinue(lean_object*); +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg(lean_object*, lean_object*); static lean_object* l_List_repr___at___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____spec__1___closed__9; lean_object* l_Lean_MessageData_ofExpr(lean_object*); lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -631,7 +632,6 @@ LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_RCasesPatt_tuple_x27(lean_obj LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_rcasesCore___rarg___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_tryClearMany_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_rcasesCore___rarg___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg(lean_object*, lean_object*); lean_object* l_Lean_MVarId_replaceLocalDeclDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Tactic_RCases_rcasesCore___rarg___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Elab_Tactic_RCases_obtainNone(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2114,7 +2114,7 @@ x_4 = lean_ctor_get(x_1, 0); x_5 = lean_ctor_get(x_1, 1); x_6 = lean_unsigned_to_nat(1024u); x_7 = lean_nat_dec_le(x_6, x_2); -x_8 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_4, x_6); +x_8 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_4, x_6); x_9 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__3; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_8); @@ -2166,7 +2166,7 @@ lean_inc(x_24); lean_dec(x_1); x_26 = lean_unsigned_to_nat(1024u); x_27 = lean_nat_dec_le(x_26, x_2); -x_28 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_24, x_26); +x_28 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_24, x_26); x_29 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__3; x_30 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_30, 0, x_29); @@ -2220,7 +2220,7 @@ x_46 = lean_ctor_get(x_1, 0); x_47 = lean_ctor_get(x_1, 1); x_48 = lean_unsigned_to_nat(1024u); x_49 = lean_nat_dec_le(x_48, x_2); -x_50 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_46, x_48); +x_50 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_46, x_48); x_51 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__8; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_50); @@ -2272,7 +2272,7 @@ lean_inc(x_66); lean_dec(x_1); x_68 = lean_unsigned_to_nat(1024u); x_69 = lean_nat_dec_le(x_68, x_2); -x_70 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_66, x_68); +x_70 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_66, x_68); x_71 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__8; x_72 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_72, 0, x_71); @@ -2323,7 +2323,7 @@ lean_inc(x_87); lean_dec(x_1); x_88 = lean_unsigned_to_nat(1024u); x_89 = lean_nat_dec_le(x_88, x_2); -x_90 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_87, x_88); +x_90 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_87, x_88); x_91 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__11; x_92 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_92, 0, x_91); @@ -2368,7 +2368,7 @@ x_104 = lean_ctor_get(x_1, 0); x_105 = lean_ctor_get(x_1, 1); x_106 = lean_unsigned_to_nat(1024u); x_107 = lean_nat_dec_le(x_106, x_2); -x_108 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_104, x_106); +x_108 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_104, x_106); x_109 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__14; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_108); @@ -2420,7 +2420,7 @@ lean_inc(x_124); lean_dec(x_1); x_126 = lean_unsigned_to_nat(1024u); x_127 = lean_nat_dec_le(x_126, x_2); -x_128 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_124, x_126); +x_128 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_124, x_126); x_129 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__14; x_130 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_130, 0, x_129); @@ -2475,7 +2475,7 @@ lean_inc(x_147); lean_dec(x_1); x_148 = lean_unsigned_to_nat(1024u); x_149 = lean_nat_dec_le(x_148, x_2); -x_150 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_145, x_148); +x_150 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_145, x_148); x_151 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__17; x_152 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_152, 0, x_151); @@ -2491,7 +2491,7 @@ lean_ctor_set(x_156, 1, x_155); x_157 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_157, 0, x_156); lean_ctor_set(x_157, 1, x_153); -x_158 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2410____rarg(x_147, x_148); +x_158 = l___private_Init_Meta_0__Lean_Syntax_reprTSyntax____x40_Init_Meta___hyg_2418____rarg(x_147, x_148); x_159 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_159, 0, x_157); lean_ctor_set(x_159, 1, x_158); @@ -2535,7 +2535,7 @@ x_171 = lean_ctor_get(x_1, 0); x_172 = lean_ctor_get(x_1, 1); x_173 = lean_unsigned_to_nat(1024u); x_174 = lean_nat_dec_le(x_173, x_2); -x_175 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_171, x_173); +x_175 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_171, x_173); x_176 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__20; lean_ctor_set(x_1, 1, x_175); lean_ctor_set(x_1, 0, x_176); @@ -2586,7 +2586,7 @@ lean_inc(x_191); lean_dec(x_1); x_193 = lean_unsigned_to_nat(1024u); x_194 = lean_nat_dec_le(x_193, x_2); -x_195 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_191, x_193); +x_195 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_191, x_193); x_196 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__20; x_197 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_197, 0, x_196); @@ -2640,7 +2640,7 @@ x_213 = lean_ctor_get(x_1, 0); x_214 = lean_ctor_get(x_1, 1); x_215 = lean_unsigned_to_nat(1024u); x_216 = lean_nat_dec_le(x_215, x_2); -x_217 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_213, x_215); +x_217 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_213, x_215); x_218 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__23; lean_ctor_set_tag(x_1, 5); lean_ctor_set(x_1, 1, x_217); @@ -2692,7 +2692,7 @@ lean_inc(x_233); lean_dec(x_1); x_235 = lean_unsigned_to_nat(1024u); x_236 = lean_nat_dec_le(x_235, x_2); -x_237 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_233, x_235); +x_237 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_233, x_235); x_238 = l___private_Lean_Elab_Tactic_RCases_0__Lean_Elab_Tactic_RCases_reprRCasesPatt____x40_Lean_Elab_Tactic_RCases___hyg_953____closed__23; x_239 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_239, 0, x_238); diff --git a/stage0/stdlib/Lean/Elab/Term.c b/stage0/stdlib/Lean/Elab/Term.c index 98df128eda..d7628fe556 100644 --- a/stage0/stdlib/Lean/Elab/Term.c +++ b/stage0/stdlib/Lean/Elab/Term.c @@ -2307,12 +2307,13 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = lean_box(0); x_2 = lean_box(0); x_3 = lean_unsigned_to_nat(0u); -x_4 = lean_alloc_ctor(0, 5, 0); +x_4 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_4, 0, x_2); lean_ctor_set(x_4, 1, x_1); lean_ctor_set(x_4, 2, x_1); lean_ctor_set(x_4, 3, x_1); -lean_ctor_set(x_4, 4, x_3); +lean_ctor_set(x_4, 4, x_1); +lean_ctor_set(x_4, 5, x_3); return x_4; } } diff --git a/stage0/stdlib/Lean/Environment.c b/stage0/stdlib/Lean/Environment.c index 1bad92bde3..da7c24dbdb 100644 --- a/stage0/stdlib/Lean/Environment.c +++ b/stage0/stdlib/Lean/Environment.c @@ -8900,7 +8900,7 @@ x_71 = l_Lean_instToStringImport___closed__2; x_72 = lean_string_append(x_70, x_71); x_73 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_74 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__11; -x_75 = lean_unsigned_to_nat(688u); +x_75 = lean_unsigned_to_nat(691u); x_76 = lean_unsigned_to_nat(11u); x_77 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_73, x_74, x_75, x_76, x_72); lean_dec(x_72); @@ -10078,7 +10078,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_2 = l_Lean_EnvExtensionInterfaceUnsafe_setState___rarg___closed__1; -x_3 = lean_unsigned_to_nat(813u); +x_3 = lean_unsigned_to_nat(816u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Environment_0__Lean_EnvExtensionInterfaceUnsafe_invalidExtMsg; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -10148,7 +10148,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_2 = l_Lean_EnvExtensionInterfaceUnsafe_modifyState___rarg___closed__1; -x_3 = lean_unsigned_to_nat(823u); +x_3 = lean_unsigned_to_nat(826u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Environment_0__Lean_EnvExtensionInterfaceUnsafe_invalidExtMsg; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -10214,7 +10214,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_2 = l_Lean_EnvExtensionInterfaceUnsafe_getState___rarg___closed__1; -x_3 = lean_unsigned_to_nat(830u); +x_3 = lean_unsigned_to_nat(833u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Environment_0__Lean_EnvExtensionInterfaceUnsafe_invalidExtMsg; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -13188,7 +13188,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_2 = l_Lean_TagDeclarationExtension_tag___closed__4; -x_3 = lean_unsigned_to_nat(1111u); +x_3 = lean_unsigned_to_nat(1114u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_TagDeclarationExtension_tag___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -13615,7 +13615,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Environment_AddConstAsyncResult_commitFailure___closed__10; x_2 = l_Lean_MapDeclarationExtension_insert___rarg___closed__3; -x_3 = lean_unsigned_to_nat(1142u); +x_3 = lean_unsigned_to_nat(1145u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_MapDeclarationExtension_insert___rarg___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); diff --git a/stage0/stdlib/Lean/Language/Basic.c b/stage0/stdlib/Lean/Language/Basic.c index 94c11f016c..e451f9b8be 100644 --- a/stage0/stdlib/Lean/Language/Basic.c +++ b/stage0/stdlib/Lean/Language/Basic.c @@ -34,6 +34,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg___bo static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__26; LEAN_EXPORT lean_object* l_Lean_Language_mkIncrementalProcessor___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Snapshot_Diagnostics_ofMessageLog(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_initFn____x40_Lean_Language_Basic___hyg_1278____closed__1; LEAN_EXPORT lean_object* l_Lean_Language_DynamicSnapshot_toTyped_x3f___rarg(lean_object*, lean_object*); static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__30; @@ -87,6 +88,7 @@ static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__20; lean_object* l_IO_Promise_resolve___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); lean_object* l_IO_Promise_new___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Array_range___lambda__1___boxed(lean_object*); size_t lean_usize_of_nat(lean_object*); static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__36; static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__34; @@ -114,6 +116,7 @@ static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__21; LEAN_EXPORT lean_object* l_Lean_Language_instInhabitedSnapshotTree; LEAN_EXPORT lean_object* l_Lean_Language_reportMessages(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_instToSnapshotTreeOption___rarg(lean_object*, lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTree_forM___rarg___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_map___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_strict_or(uint8_t, uint8_t); @@ -234,8 +237,8 @@ lean_object* lean_io_bind_task(lean_object*, lean_object*, lean_object*, uint8_t LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises(lean_object*, lean_object*); static lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___lambda__3___closed__1; static lean_object* l___auto____x40_Lean_Language_Basic___hyg_62____closed__31; -lean_object* l_List_iotaTR(lean_object*); static lean_object* l_Lean_Language_instInhabitedSnapshot___closed__2; +static lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_SnapshotTask_bind(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1___closed__1; static lean_object* l_Lean_Language_withAlwaysResolvedPromise___rarg___closed__1; @@ -1721,6 +1724,14 @@ x_22 = lean_apply_4(x_20, lean_box(0), lean_box(0), x_21, x_19); return x_22; } } +static lean_object* _init_l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Array_range___lambda__1___boxed), 1, 0); +return x_1; +} +} static lean_object* _init_l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed__const__1() { _start: { @@ -1736,8 +1747,8 @@ _start: lean_object* x_7; lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_7 = lean_ctor_get(x_1, 1); lean_inc(x_7); -x_8 = l_List_iotaTR(x_5); -x_9 = lean_array_mk(x_8); +x_8 = l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1; +x_9 = l_Array_ofFn___rarg(x_5, x_8); x_10 = lean_array_size(x_9); x_11 = 0; lean_inc(x_2); @@ -1761,7 +1772,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises(lean_object* _start: { lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Lean_Language_withAlwaysResolvedPromises___rarg), 6, 0); +x_3 = lean_alloc_closure((void*)(l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed), 6, 0); return x_3; } } @@ -1841,6 +1852,15 @@ x_10 = l_Lean_Language_withAlwaysResolvedPromises___rarg___lambda__2(x_1, x_2, x return x_10; } } +LEAN_EXPORT lean_object* l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Language_withAlwaysResolvedPromises___rarg(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +return x_7; +} +} static lean_object* _init_l_Lean_Language_instInhabitedSnapshotTree___closed__1() { _start: { @@ -6023,6 +6043,8 @@ l_Lean_Language_withAlwaysResolvedPromise___rarg___closed__1 = _init_l_Lean_Lang lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromise___rarg___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Language_withAlwaysResolvedPromises___spec__2___rarg___lambda__1___closed__1); +l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1 = _init_l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1(); +lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromises___rarg___closed__1); l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed__const__1 = _init_l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed__const__1(); lean_mark_persistent(l_Lean_Language_withAlwaysResolvedPromises___rarg___boxed__const__1); l_Lean_Language_instInhabitedSnapshotTree___closed__1 = _init_l_Lean_Language_instInhabitedSnapshotTree___closed__1(); diff --git a/stage0/stdlib/Lean/Language/Lean.c b/stage0/stdlib/Lean/Language/Lean.c index b1737a134e..a998d1dca0 100644 --- a/stage0/stdlib/Lean/Language/Lean.c +++ b/stage0/stdlib/Lean/Language/Lean.c @@ -17,7 +17,6 @@ static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__ LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_processHeader___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_profileit(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_getMaxHeartbeats(lean_object*); static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__6; @@ -26,7 +25,6 @@ static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__ lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__3___closed__3; static lean_object* l_List_forIn_x27_loop___at_Lean_Language_Lean_reparseOptions___spec__1___lambda__1___closed__11; -static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Language_Lean_process_parseCmd___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; static lean_object* l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_process_doElab___spec__1___closed__4; @@ -42,6 +40,7 @@ lean_object* lean_get_set_stdout(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__12___closed__3; lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2(lean_object*, lean_object*); static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__14; static lean_object* l_List_forIn_x27_loop___at_Lean_Language_Lean_reparseOptions___spec__1___lambda__1___closed__8; lean_object* l_Lean_Elab_Command_elabCommandTopLevel(lean_object*, lean_object*, lean_object*, lean_object*); @@ -68,6 +67,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__11(uint static lean_object* l_List_forIn_x27_loop___at_Lean_Language_Lean_reparseOptions___spec__1___closed__1; lean_object* l_Lean_Language_DynamicSnapshot_ofTyped___at_Lean_Language_instInhabitedDynamicSnapshot___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__1(lean_object*, lean_object*); +static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3; static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__11; lean_object* l_Lean_Elab_Command_mkState(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_LeanProcessingM_run(lean_object*); @@ -88,6 +88,7 @@ static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__ LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__6; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__3(lean_object*); +LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_reparseOptions(lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -132,6 +133,7 @@ extern lean_object* l_Lean_Elab_instInhabitedInfoTree; uint8_t l_Lean_Parser_isTerminalCommand(lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Language_Lean_reparseOptions___spec__1___lambda__1___closed__2; lean_object* l_IO_CancelToken_new(lean_object*); +static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1; lean_object* lean_task_pure(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__4___closed__6; @@ -154,10 +156,10 @@ lean_object* l_List_toPArray_x27___rarg(lean_object*); lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__15(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Language_Lean_process_parseCmd___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Language_Lean_instMonadLiftLeanProcessingMLeanProcessingTIO(lean_object*); static lean_object* l_Lean_Language_Lean_process_doElab___closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Language_Lean_process_parseCmd___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); +static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2; static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__12___closed__13; static lean_object* l_Lean_Language_Lean_initFn____x40_Lean_Language_Lean___hyg_402____closed__4; lean_object* l_Lean_MessageData_ofFormat(lean_object*); @@ -170,7 +172,6 @@ lean_object* l_outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_instMonadLiftProcessingTLeanProcessingT(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_Lean_HeaderParsedSnapshot_processedResult(lean_object*); -extern lean_object* l_Lean_Elab_async; static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__16; lean_object* l_String_firstDiffPos(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -196,7 +197,6 @@ lean_object* l_panic___at_String_fromUTF8_x21___spec__1(lean_object*); static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__6___closed__2; static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__2; lean_object* l_Lean_Environment_setMainModule(lean_object*, lean_object*); -lean_object* l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(lean_object*, lean_object*, uint8_t); lean_object* lean_thunk_get_own(lean_object*); static lean_object* l_Lean_Language_Lean_process_doElab___closed__4; lean_object* l_Lean_Language_diagnosticsOfHeaderError(lean_object*, lean_object*, lean_object*); @@ -208,9 +208,7 @@ LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___lambda__3(lean_ob lean_object* l_IO_FS_Stream_ofBuffer(lean_object*); static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__12; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Language_Lean_waitForFinalCmdState_x3f_goCmd(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1___boxed(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_MessageLog_empty; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); @@ -237,7 +235,6 @@ static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHea static lean_object* l_Lean_Language_Lean_initFn____x40_Lean_Language_Lean___hyg_402____closed__3; static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__4___closed__4; static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__9; -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3(lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_doElab___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -278,7 +275,6 @@ LEAN_EXPORT lean_object* l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_pro static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__5___closed__1; static lean_object* l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Language_SnapshotTask_get_x3f___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_waitForFinalCmdState_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Language_Lean_process_parseCmd___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -295,11 +291,11 @@ LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__2___box static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__7___closed__12; lean_object* lean_io_bind_task(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); lean_object* lean_get_set_stdin(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getRange_x3f(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__5(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; LEAN_EXPORT lean_object* l_Lean_Language_Lean_isBeforeEditPos___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); @@ -307,7 +303,6 @@ static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___clo lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_firstFrontendMacroScope; -LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2(lean_object*, lean_object*); static lean_object* l_IO_FS_withIsolatedStreams___at_Lean_Language_Lean_process_doElab___spec__1___closed__2; extern lean_object* l_Lean_Core_stderrAsMessages; extern lean_object* l_Lean_Elab_Command_instInhabitedScope; @@ -356,7 +351,6 @@ static lean_object* l_Lean_Language_Lean_process_processHeader___lambda__4___clo LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Language_Lean_process_parseCmd___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_parseCmd___lambda__6___closed__1; -uint8_t l_Lean_KVMap_contains(lean_object*, lean_object*); lean_object* l_Lean_Parser_parseCommand(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_parseHeader___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Language_Lean_process_doElab___lambda__4___closed__1; @@ -12034,28 +12028,7 @@ x_9 = l_Lean_Language_Lean_process_parseCmd(x_1, x_2, x_3, x_4, x_8, x_6, x_7); return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(lean_object* x_1, lean_object* x_2, uint8_t x_3) { -_start: -{ -lean_object* x_4; uint8_t x_5; -x_4 = lean_ctor_get(x_2, 0); -lean_inc(x_4); -x_5 = l_Lean_KVMap_contains(x_1, x_4); -lean_dec(x_4); -if (x_5 == 0) -{ -lean_object* x_6; -x_6 = l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(x_1, x_2, x_3); -return x_6; -} -else -{ -lean_dec(x_2); -return x_1; -} -} -} -static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1() { +static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1() { _start: { lean_object* x_1; @@ -12063,17 +12036,17 @@ x_1 = lean_mk_string_unchecked("import", 6, 6); return x_1; } } -static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2() { +static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1; +x_2 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3() { +static lean_object* _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3() { _start: { lean_object* x_1; lean_object* x_2; @@ -12082,7 +12055,7 @@ x_2 = l_Array_toPArray_x27___rarg(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_1) == 0) @@ -12100,13 +12073,13 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_5 = lean_ctor_get(x_1, 0); x_6 = lean_ctor_get(x_1, 1); -x_7 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2; +x_7 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2; x_8 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_8, 0, x_7); lean_ctor_set(x_8, 1, x_5); x_9 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_9, 0, x_8); -x_10 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3; +x_10 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3; x_11 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_11, 0, x_9); lean_ctor_set(x_11, 1, x_10); @@ -12128,13 +12101,13 @@ x_14 = lean_ctor_get(x_1, 1); lean_inc(x_14); lean_inc(x_13); lean_dec(x_1); -x_15 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2; +x_15 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2; x_16 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_13); x_17 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_17, 0, x_16); -x_18 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3; +x_18 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3; x_19 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); @@ -12148,7 +12121,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; @@ -12191,11 +12164,11 @@ return x_12; } } } -LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3___rarg), 4, 0); +x_3 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2___rarg), 4, 0); return x_3; } } @@ -12224,14 +12197,6 @@ return x_6; static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1() { _start: { -lean_object* x_1; -x_1 = l_Lean_Elab_async; -return x_1; -} -} -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_unsigned_to_nat(0u); x_2 = l_Lean_Language_Lean_process_doElab___closed__5; @@ -12248,7 +12213,7 @@ lean_ctor_set(x_3, 8, x_2); return x_3; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__3() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2() { _start: { lean_object* x_1; @@ -12256,21 +12221,21 @@ x_1 = lean_mk_string_unchecked("_import", 7, 7); return x_1; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__4() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__3; +x_2 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__5() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__4; +x_1 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__3; x_2 = lean_unsigned_to_nat(1u); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -12278,7 +12243,7 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__5() { _start: { lean_object* x_1; @@ -12286,17 +12251,17 @@ x_1 = lean_mk_string_unchecked("header", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__7() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6; +x_2 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__7() { _start: { lean_object* x_1; @@ -12304,23 +12269,23 @@ x_1 = lean_mk_string_unchecked("processHeader", 13, 13); return x_1; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__3; x_2 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__5; x_3 = l_Lean_Language_Lean_process_doElab___lambda__4___closed__1; -x_4 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8; +x_4 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__7; x_5 = l_Lean_Name_mkStr5(x_1, x_2, x_1, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10() { +static lean_object* _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_1 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8; x_2 = 1; x_3 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__14; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); @@ -12334,517 +12299,516 @@ lean_object* x_13; x_13 = l_Lean_Language_Lean_reparseOptions(x_1, x_12); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); lean_dec(x_13); -x_16 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1; -x_17 = 1; -x_18 = l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(x_14, x_16, x_17); -lean_inc(x_18); +lean_inc(x_14); lean_inc(x_3); lean_inc(x_2); -x_19 = l_Lean_Elab_Command_mkState(x_2, x_3, x_18); -x_20 = !lean_is_exclusive(x_19); -if (x_20 == 0) +x_16 = l_Lean_Elab_Command_mkState(x_2, x_3, x_14); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; uint8_t x_54; -x_21 = lean_ctor_get(x_19, 7); -lean_dec(x_21); -x_22 = lean_ctor_get(x_19, 6); -lean_dec(x_22); -x_23 = lean_ctor_get(x_19, 4); -lean_dec(x_23); -x_24 = lean_ctor_get(x_19, 3); -lean_dec(x_24); -x_25 = lean_ctor_get(x_19, 1); -lean_dec(x_25); -x_26 = lean_ctor_get(x_19, 0); -lean_dec(x_26); -x_27 = l_Lean_Language_Lean_process_parseCmd___lambda__5___closed__1; -x_28 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_18, x_27); +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_18 = lean_ctor_get(x_16, 7); lean_dec(x_18); -x_29 = lean_ctor_get(x_4, 2); -x_30 = lean_box(0); -x_31 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2; -x_32 = lean_box(0); -x_33 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__5; -lean_inc(x_29); -lean_inc(x_2); -x_34 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_34, 0, x_2); -lean_ctor_set(x_34, 1, x_29); -lean_ctor_set(x_34, 2, x_31); -lean_ctor_set(x_34, 3, x_30); -lean_ctor_set(x_34, 4, x_32); -lean_ctor_set(x_34, 5, x_30); -lean_ctor_set(x_34, 6, x_33); -x_35 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_35, 0, x_34); -x_36 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__7; -lean_inc(x_5); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_5); -x_38 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_38, 0, x_37); -x_39 = lean_unsigned_to_nat(1u); -x_40 = l_Lean_Syntax_getArg(x_5, x_39); -lean_dec(x_5); -x_41 = l_Lean_Syntax_getArgs(x_40); -lean_dec(x_40); -x_42 = lean_array_to_list(x_41); -x_43 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2(x_42, x_30); -x_44 = l_List_toPArray_x27___rarg(x_43); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_38); -lean_ctor_set(x_45, 1, x_44); -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_35); -lean_ctor_set(x_46, 1, x_45); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_30); -x_48 = lean_array_mk(x_47); -x_49 = l_Array_toPArray_x27___rarg(x_48); -lean_dec(x_48); -x_50 = l_Lean_Language_Lean_process_doElab___closed__5; -lean_inc(x_49); -x_51 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_49); -lean_ctor_set_uint8(x_51, sizeof(void*)*2, x_17); -x_52 = l_Lean_Language_Lean_process_doElab___lambda__4___closed__5; -lean_ctor_set(x_19, 7, x_9); -lean_ctor_set(x_19, 6, x_51); -lean_ctor_set(x_19, 4, x_28); -lean_ctor_set(x_19, 3, x_52); -lean_ctor_set(x_19, 1, x_3); -lean_ctor_set(x_19, 0, x_2); -x_53 = lean_io_promise_new(x_15); -x_54 = !lean_is_exclusive(x_53); -if (x_54 == 0) -{ -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; -x_55 = lean_ctor_get(x_53, 0); -x_56 = lean_ctor_get(x_53, 1); -x_57 = lean_box(0); -lean_inc(x_55); -lean_inc(x_19); -x_58 = l_Lean_Language_Lean_process_parseCmd(x_57, x_6, x_19, x_55, x_17, x_7, x_56); -x_59 = !lean_is_exclusive(x_58); -if (x_59 == 0) -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_60 = lean_ctor_get(x_58, 0); -lean_dec(x_60); -x_61 = lean_ctor_get(x_49, 2); -lean_inc(x_61); -x_62 = lean_unsigned_to_nat(0u); -x_63 = lean_nat_dec_lt(x_62, x_61); -lean_dec(x_61); -x_64 = lean_io_promise_result(x_55); -lean_ctor_set(x_53, 1, x_64); -lean_ctor_set(x_53, 0, x_57); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_19); -lean_ctor_set(x_65, 1, x_53); -x_66 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_66, 0, x_65); -if (x_63 == 0) -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; lean_object* x_74; -lean_dec(x_49); -x_67 = l_Lean_Elab_instInhabitedInfoTree; -x_68 = l_outOfBounds___rarg(x_67); -x_69 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_69, 0, x_68); -x_70 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_71 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_72 = 0; -x_73 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_73, 0, x_70); -lean_ctor_set(x_73, 1, x_8); -lean_ctor_set(x_73, 2, x_69); -lean_ctor_set(x_73, 3, x_71); -lean_ctor_set_uint8(x_73, sizeof(void*)*4, x_72); -x_74 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_74, 0, x_73); -lean_ctor_set(x_74, 1, x_66); -lean_ctor_set(x_58, 0, x_74); -return x_58; -} -else -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; lean_object* x_81; lean_object* x_82; -x_75 = l_Lean_Elab_instInhabitedInfoTree; -x_76 = l_Lean_PersistentArray_get_x21___rarg(x_75, x_49, x_62); -x_77 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_77, 0, x_76); -x_78 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_79 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_80 = 0; -x_81 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_81, 0, x_78); -lean_ctor_set(x_81, 1, x_8); -lean_ctor_set(x_81, 2, x_77); -lean_ctor_set(x_81, 3, x_79); -lean_ctor_set_uint8(x_81, sizeof(void*)*4, x_80); -x_82 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_82, 0, x_81); -lean_ctor_set(x_82, 1, x_66); -lean_ctor_set(x_58, 0, x_82); -return x_58; -} -} -else -{ -lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_83 = lean_ctor_get(x_58, 1); -lean_inc(x_83); -lean_dec(x_58); -x_84 = lean_ctor_get(x_49, 2); -lean_inc(x_84); -x_85 = lean_unsigned_to_nat(0u); -x_86 = lean_nat_dec_lt(x_85, x_84); -lean_dec(x_84); -x_87 = lean_io_promise_result(x_55); -lean_ctor_set(x_53, 1, x_87); -lean_ctor_set(x_53, 0, x_57); -x_88 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_88, 0, x_19); -lean_ctor_set(x_88, 1, x_53); -x_89 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_89, 0, x_88); -if (x_86 == 0) -{ -lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; uint8_t x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -lean_dec(x_49); -x_90 = l_Lean_Elab_instInhabitedInfoTree; -x_91 = l_outOfBounds___rarg(x_90); -x_92 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_92, 0, x_91); -x_93 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_94 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_95 = 0; -x_96 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_96, 0, x_93); -lean_ctor_set(x_96, 1, x_8); -lean_ctor_set(x_96, 2, x_92); -lean_ctor_set(x_96, 3, x_94); -lean_ctor_set_uint8(x_96, sizeof(void*)*4, x_95); -x_97 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_97, 0, x_96); -lean_ctor_set(x_97, 1, x_89); -x_98 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_98, 0, x_97); -lean_ctor_set(x_98, 1, x_83); -return x_98; -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; uint8_t x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; -x_99 = l_Lean_Elab_instInhabitedInfoTree; -x_100 = l_Lean_PersistentArray_get_x21___rarg(x_99, x_49, x_85); -x_101 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_101, 0, x_100); -x_102 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_103 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_104 = 0; -x_105 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_105, 0, x_102); -lean_ctor_set(x_105, 1, x_8); -lean_ctor_set(x_105, 2, x_101); -lean_ctor_set(x_105, 3, x_103); -lean_ctor_set_uint8(x_105, sizeof(void*)*4, x_104); -x_106 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_106, 0, x_105); -lean_ctor_set(x_106, 1, x_89); -x_107 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_107, 0, x_106); -lean_ctor_set(x_107, 1, x_83); -return x_107; -} -} -} -else -{ -lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; uint8_t x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_108 = lean_ctor_get(x_53, 0); -x_109 = lean_ctor_get(x_53, 1); -lean_inc(x_109); -lean_inc(x_108); -lean_dec(x_53); -x_110 = lean_box(0); -lean_inc(x_108); -lean_inc(x_19); -x_111 = l_Lean_Language_Lean_process_parseCmd(x_110, x_6, x_19, x_108, x_17, x_7, x_109); -x_112 = lean_ctor_get(x_111, 1); -lean_inc(x_112); -if (lean_is_exclusive(x_111)) { - lean_ctor_release(x_111, 0); - lean_ctor_release(x_111, 1); - x_113 = x_111; -} else { - lean_dec_ref(x_111); - x_113 = lean_box(0); -} -x_114 = lean_ctor_get(x_49, 2); -lean_inc(x_114); -x_115 = lean_unsigned_to_nat(0u); -x_116 = lean_nat_dec_lt(x_115, x_114); -lean_dec(x_114); -x_117 = lean_io_promise_result(x_108); -x_118 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_118, 0, x_110); -lean_ctor_set(x_118, 1, x_117); -x_119 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_119, 0, x_19); -lean_ctor_set(x_119, 1, x_118); -x_120 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_120, 0, x_119); -if (x_116 == 0) -{ -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; uint8_t x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; -lean_dec(x_49); -x_121 = l_Lean_Elab_instInhabitedInfoTree; -x_122 = l_outOfBounds___rarg(x_121); -x_123 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_123, 0, x_122); -x_124 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_125 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_126 = 0; -x_127 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_127, 0, x_124); -lean_ctor_set(x_127, 1, x_8); -lean_ctor_set(x_127, 2, x_123); -lean_ctor_set(x_127, 3, x_125); -lean_ctor_set_uint8(x_127, sizeof(void*)*4, x_126); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_120); -if (lean_is_scalar(x_113)) { - x_129 = lean_alloc_ctor(0, 2, 0); -} else { - x_129 = x_113; -} -lean_ctor_set(x_129, 0, x_128); -lean_ctor_set(x_129, 1, x_112); -return x_129; -} -else -{ -lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; uint8_t x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; -x_130 = l_Lean_Elab_instInhabitedInfoTree; -x_131 = l_Lean_PersistentArray_get_x21___rarg(x_130, x_49, x_115); -x_132 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_132, 0, x_131); -x_133 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_134 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_135 = 0; -x_136 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_136, 0, x_133); -lean_ctor_set(x_136, 1, x_8); -lean_ctor_set(x_136, 2, x_132); -lean_ctor_set(x_136, 3, x_134); -lean_ctor_set_uint8(x_136, sizeof(void*)*4, x_135); -x_137 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_137, 0, x_136); -lean_ctor_set(x_137, 1, x_120); -if (lean_is_scalar(x_113)) { - x_138 = lean_alloc_ctor(0, 2, 0); -} else { - x_138 = x_113; -} -lean_ctor_set(x_138, 0, x_137); -lean_ctor_set(x_138, 1, x_112); -return x_138; -} -} -} -else -{ -lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; uint8_t x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_139 = lean_ctor_get(x_19, 2); -x_140 = lean_ctor_get(x_19, 5); -x_141 = lean_ctor_get(x_19, 8); -lean_inc(x_141); -lean_inc(x_140); -lean_inc(x_139); +x_19 = lean_ctor_get(x_16, 6); lean_dec(x_19); -x_142 = l_Lean_Language_Lean_process_parseCmd___lambda__5___closed__1; -x_143 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_18, x_142); -lean_dec(x_18); -x_144 = lean_ctor_get(x_4, 2); -x_145 = lean_box(0); -x_146 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2; -x_147 = lean_box(0); -x_148 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__5; -lean_inc(x_144); +x_20 = lean_ctor_get(x_16, 4); +lean_dec(x_20); +x_21 = lean_ctor_get(x_16, 3); +lean_dec(x_21); +x_22 = lean_ctor_get(x_16, 1); +lean_dec(x_22); +x_23 = lean_ctor_get(x_16, 0); +lean_dec(x_23); +x_24 = l_Lean_Language_Lean_process_parseCmd___lambda__5___closed__1; +x_25 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_14, x_24); +lean_dec(x_14); +x_26 = lean_ctor_get(x_4, 2); +x_27 = lean_box(0); +x_28 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1; +x_29 = lean_box(0); +x_30 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__4; +lean_inc(x_26); lean_inc(x_2); -x_149 = lean_alloc_ctor(0, 7, 0); -lean_ctor_set(x_149, 0, x_2); -lean_ctor_set(x_149, 1, x_144); -lean_ctor_set(x_149, 2, x_146); -lean_ctor_set(x_149, 3, x_145); -lean_ctor_set(x_149, 4, x_147); -lean_ctor_set(x_149, 5, x_145); -lean_ctor_set(x_149, 6, x_148); -x_150 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_150, 0, x_149); -x_151 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__7; +x_31 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_31, 0, x_2); +lean_ctor_set(x_31, 1, x_26); +lean_ctor_set(x_31, 2, x_28); +lean_ctor_set(x_31, 3, x_27); +lean_ctor_set(x_31, 4, x_29); +lean_ctor_set(x_31, 5, x_27); +lean_ctor_set(x_31, 6, x_30); +x_32 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_32, 0, x_31); +x_33 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6; lean_inc(x_5); -x_152 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_152, 0, x_151); -lean_ctor_set(x_152, 1, x_5); -x_153 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_153, 0, x_152); -x_154 = lean_unsigned_to_nat(1u); -x_155 = l_Lean_Syntax_getArg(x_5, x_154); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_5); +x_35 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_35, 0, x_34); +x_36 = lean_unsigned_to_nat(1u); +x_37 = l_Lean_Syntax_getArg(x_5, x_36); lean_dec(x_5); -x_156 = l_Lean_Syntax_getArgs(x_155); -lean_dec(x_155); -x_157 = lean_array_to_list(x_156); -x_158 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2(x_157, x_145); -x_159 = l_List_toPArray_x27___rarg(x_158); +x_38 = l_Lean_Syntax_getArgs(x_37); +lean_dec(x_37); +x_39 = lean_array_to_list(x_38); +x_40 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1(x_39, x_27); +x_41 = l_List_toPArray_x27___rarg(x_40); +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_35); +lean_ctor_set(x_42, 1, x_41); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_32); +lean_ctor_set(x_43, 1, x_42); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_43); +lean_ctor_set(x_44, 1, x_27); +x_45 = lean_array_mk(x_44); +x_46 = l_Array_toPArray_x27___rarg(x_45); +lean_dec(x_45); +x_47 = 1; +x_48 = l_Lean_Language_Lean_process_doElab___closed__5; +lean_inc(x_46); +x_49 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_46); +lean_ctor_set_uint8(x_49, sizeof(void*)*2, x_47); +x_50 = l_Lean_Language_Lean_process_doElab___lambda__4___closed__5; +lean_ctor_set(x_16, 7, x_9); +lean_ctor_set(x_16, 6, x_49); +lean_ctor_set(x_16, 4, x_25); +lean_ctor_set(x_16, 3, x_50); +lean_ctor_set(x_16, 1, x_3); +lean_ctor_set(x_16, 0, x_2); +x_51 = lean_io_promise_new(x_15); +x_52 = !lean_is_exclusive(x_51); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_53 = lean_ctor_get(x_51, 0); +x_54 = lean_ctor_get(x_51, 1); +x_55 = lean_box(0); +lean_inc(x_53); +lean_inc(x_16); +x_56 = l_Lean_Language_Lean_process_parseCmd(x_55, x_6, x_16, x_53, x_47, x_7, x_54); +x_57 = !lean_is_exclusive(x_56); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; uint8_t x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_58 = lean_ctor_get(x_56, 0); +lean_dec(x_58); +x_59 = lean_ctor_get(x_46, 2); +lean_inc(x_59); +x_60 = lean_unsigned_to_nat(0u); +x_61 = lean_nat_dec_lt(x_60, x_59); +lean_dec(x_59); +x_62 = lean_io_promise_result(x_53); +lean_ctor_set(x_51, 1, x_62); +lean_ctor_set(x_51, 0, x_55); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_16); +lean_ctor_set(x_63, 1, x_51); +x_64 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_64, 0, x_63); +if (x_61 == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; uint8_t x_70; lean_object* x_71; lean_object* x_72; +lean_dec(x_46); +x_65 = l_Lean_Elab_instInhabitedInfoTree; +x_66 = l_outOfBounds___rarg(x_65); +x_67 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_67, 0, x_66); +x_68 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_69 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_70 = 0; +x_71 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_71, 0, x_68); +lean_ctor_set(x_71, 1, x_8); +lean_ctor_set(x_71, 2, x_67); +lean_ctor_set(x_71, 3, x_69); +lean_ctor_set_uint8(x_71, sizeof(void*)*4, x_70); +x_72 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_72, 0, x_71); +lean_ctor_set(x_72, 1, x_64); +lean_ctor_set(x_56, 0, x_72); +return x_56; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; uint8_t x_78; lean_object* x_79; lean_object* x_80; +x_73 = l_Lean_Elab_instInhabitedInfoTree; +x_74 = l_Lean_PersistentArray_get_x21___rarg(x_73, x_46, x_60); +x_75 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_75, 0, x_74); +x_76 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_77 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_78 = 0; +x_79 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_79, 0, x_76); +lean_ctor_set(x_79, 1, x_8); +lean_ctor_set(x_79, 2, x_75); +lean_ctor_set(x_79, 3, x_77); +lean_ctor_set_uint8(x_79, sizeof(void*)*4, x_78); +x_80 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_64); +lean_ctor_set(x_56, 0, x_80); +return x_56; +} +} +else +{ +lean_object* x_81; lean_object* x_82; lean_object* x_83; uint8_t x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_81 = lean_ctor_get(x_56, 1); +lean_inc(x_81); +lean_dec(x_56); +x_82 = lean_ctor_get(x_46, 2); +lean_inc(x_82); +x_83 = lean_unsigned_to_nat(0u); +x_84 = lean_nat_dec_lt(x_83, x_82); +lean_dec(x_82); +x_85 = lean_io_promise_result(x_53); +lean_ctor_set(x_51, 1, x_85); +lean_ctor_set(x_51, 0, x_55); +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_16); +lean_ctor_set(x_86, 1, x_51); +x_87 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_87, 0, x_86); +if (x_84 == 0) +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; uint8_t x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_dec(x_46); +x_88 = l_Lean_Elab_instInhabitedInfoTree; +x_89 = l_outOfBounds___rarg(x_88); +x_90 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_90, 0, x_89); +x_91 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_92 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_93 = 0; +x_94 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_94, 0, x_91); +lean_ctor_set(x_94, 1, x_8); +lean_ctor_set(x_94, 2, x_90); +lean_ctor_set(x_94, 3, x_92); +lean_ctor_set_uint8(x_94, sizeof(void*)*4, x_93); +x_95 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_95, 0, x_94); +lean_ctor_set(x_95, 1, x_87); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_95); +lean_ctor_set(x_96, 1, x_81); +return x_96; +} +else +{ +lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; uint8_t x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_97 = l_Lean_Elab_instInhabitedInfoTree; +x_98 = l_Lean_PersistentArray_get_x21___rarg(x_97, x_46, x_83); +x_99 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_99, 0, x_98); +x_100 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_101 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_102 = 0; +x_103 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_103, 0, x_100); +lean_ctor_set(x_103, 1, x_8); +lean_ctor_set(x_103, 2, x_99); +lean_ctor_set(x_103, 3, x_101); +lean_ctor_set_uint8(x_103, sizeof(void*)*4, x_102); +x_104 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_104, 0, x_103); +lean_ctor_set(x_104, 1, x_87); +x_105 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_105, 0, x_104); +lean_ctor_set(x_105, 1, x_81); +return x_105; +} +} +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; uint8_t x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; +x_106 = lean_ctor_get(x_51, 0); +x_107 = lean_ctor_get(x_51, 1); +lean_inc(x_107); +lean_inc(x_106); +lean_dec(x_51); +x_108 = lean_box(0); +lean_inc(x_106); +lean_inc(x_16); +x_109 = l_Lean_Language_Lean_process_parseCmd(x_108, x_6, x_16, x_106, x_47, x_7, x_107); +x_110 = lean_ctor_get(x_109, 1); +lean_inc(x_110); +if (lean_is_exclusive(x_109)) { + lean_ctor_release(x_109, 0); + lean_ctor_release(x_109, 1); + x_111 = x_109; +} else { + lean_dec_ref(x_109); + x_111 = lean_box(0); +} +x_112 = lean_ctor_get(x_46, 2); +lean_inc(x_112); +x_113 = lean_unsigned_to_nat(0u); +x_114 = lean_nat_dec_lt(x_113, x_112); +lean_dec(x_112); +x_115 = lean_io_promise_result(x_106); +x_116 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_116, 0, x_108); +lean_ctor_set(x_116, 1, x_115); +x_117 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_117, 0, x_16); +lean_ctor_set(x_117, 1, x_116); +x_118 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_118, 0, x_117); +if (x_114 == 0) +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; uint8_t x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; +lean_dec(x_46); +x_119 = l_Lean_Elab_instInhabitedInfoTree; +x_120 = l_outOfBounds___rarg(x_119); +x_121 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_121, 0, x_120); +x_122 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_123 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_124 = 0; +x_125 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_125, 0, x_122); +lean_ctor_set(x_125, 1, x_8); +lean_ctor_set(x_125, 2, x_121); +lean_ctor_set(x_125, 3, x_123); +lean_ctor_set_uint8(x_125, sizeof(void*)*4, x_124); +x_126 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_126, 0, x_125); +lean_ctor_set(x_126, 1, x_118); +if (lean_is_scalar(x_111)) { + x_127 = lean_alloc_ctor(0, 2, 0); +} else { + x_127 = x_111; +} +lean_ctor_set(x_127, 0, x_126); +lean_ctor_set(x_127, 1, x_110); +return x_127; +} +else +{ +lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; uint8_t x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +x_128 = l_Lean_Elab_instInhabitedInfoTree; +x_129 = l_Lean_PersistentArray_get_x21___rarg(x_128, x_46, x_113); +x_130 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_130, 0, x_129); +x_131 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_132 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_133 = 0; +x_134 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_134, 0, x_131); +lean_ctor_set(x_134, 1, x_8); +lean_ctor_set(x_134, 2, x_130); +lean_ctor_set(x_134, 3, x_132); +lean_ctor_set_uint8(x_134, sizeof(void*)*4, x_133); +x_135 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_135, 0, x_134); +lean_ctor_set(x_135, 1, x_118); +if (lean_is_scalar(x_111)) { + x_136 = lean_alloc_ctor(0, 2, 0); +} else { + x_136 = x_111; +} +lean_ctor_set(x_136, 0, x_135); +lean_ctor_set(x_136, 1, x_110); +return x_136; +} +} +} +else +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; uint8_t x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; uint8_t x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; +x_137 = lean_ctor_get(x_16, 2); +x_138 = lean_ctor_get(x_16, 5); +x_139 = lean_ctor_get(x_16, 8); +lean_inc(x_139); +lean_inc(x_138); +lean_inc(x_137); +lean_dec(x_16); +x_140 = l_Lean_Language_Lean_process_parseCmd___lambda__5___closed__1; +x_141 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_14, x_140); +lean_dec(x_14); +x_142 = lean_ctor_get(x_4, 2); +x_143 = lean_box(0); +x_144 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1; +x_145 = lean_box(0); +x_146 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__4; +lean_inc(x_142); +lean_inc(x_2); +x_147 = lean_alloc_ctor(0, 7, 0); +lean_ctor_set(x_147, 0, x_2); +lean_ctor_set(x_147, 1, x_142); +lean_ctor_set(x_147, 2, x_144); +lean_ctor_set(x_147, 3, x_143); +lean_ctor_set(x_147, 4, x_145); +lean_ctor_set(x_147, 5, x_143); +lean_ctor_set(x_147, 6, x_146); +x_148 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_148, 0, x_147); +x_149 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__6; +lean_inc(x_5); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_5); +x_151 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_151, 0, x_150); +x_152 = lean_unsigned_to_nat(1u); +x_153 = l_Lean_Syntax_getArg(x_5, x_152); +lean_dec(x_5); +x_154 = l_Lean_Syntax_getArgs(x_153); +lean_dec(x_153); +x_155 = lean_array_to_list(x_154); +x_156 = l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1(x_155, x_143); +x_157 = l_List_toPArray_x27___rarg(x_156); +x_158 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_158, 0, x_151); +lean_ctor_set(x_158, 1, x_157); +x_159 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_159, 0, x_148); +lean_ctor_set(x_159, 1, x_158); x_160 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_160, 0, x_153); -lean_ctor_set(x_160, 1, x_159); -x_161 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_161, 0, x_150); -lean_ctor_set(x_161, 1, x_160); -x_162 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_162, 0, x_161); -lean_ctor_set(x_162, 1, x_145); -x_163 = lean_array_mk(x_162); -x_164 = l_Array_toPArray_x27___rarg(x_163); -lean_dec(x_163); -x_165 = l_Lean_Language_Lean_process_doElab___closed__5; -lean_inc(x_164); -x_166 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_166, 0, x_165); -lean_ctor_set(x_166, 1, x_164); -lean_ctor_set_uint8(x_166, sizeof(void*)*2, x_17); -x_167 = l_Lean_Language_Lean_process_doElab___lambda__4___closed__5; -x_168 = lean_alloc_ctor(0, 9, 0); -lean_ctor_set(x_168, 0, x_2); -lean_ctor_set(x_168, 1, x_3); -lean_ctor_set(x_168, 2, x_139); -lean_ctor_set(x_168, 3, x_167); -lean_ctor_set(x_168, 4, x_143); -lean_ctor_set(x_168, 5, x_140); -lean_ctor_set(x_168, 6, x_166); -lean_ctor_set(x_168, 7, x_9); -lean_ctor_set(x_168, 8, x_141); -x_169 = lean_io_promise_new(x_15); -x_170 = lean_ctor_get(x_169, 0); +lean_ctor_set(x_160, 0, x_159); +lean_ctor_set(x_160, 1, x_143); +x_161 = lean_array_mk(x_160); +x_162 = l_Array_toPArray_x27___rarg(x_161); +lean_dec(x_161); +x_163 = 1; +x_164 = l_Lean_Language_Lean_process_doElab___closed__5; +lean_inc(x_162); +x_165 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_165, 0, x_164); +lean_ctor_set(x_165, 1, x_162); +lean_ctor_set_uint8(x_165, sizeof(void*)*2, x_163); +x_166 = l_Lean_Language_Lean_process_doElab___lambda__4___closed__5; +x_167 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_167, 0, x_2); +lean_ctor_set(x_167, 1, x_3); +lean_ctor_set(x_167, 2, x_137); +lean_ctor_set(x_167, 3, x_166); +lean_ctor_set(x_167, 4, x_141); +lean_ctor_set(x_167, 5, x_138); +lean_ctor_set(x_167, 6, x_165); +lean_ctor_set(x_167, 7, x_9); +lean_ctor_set(x_167, 8, x_139); +x_168 = lean_io_promise_new(x_15); +x_169 = lean_ctor_get(x_168, 0); +lean_inc(x_169); +x_170 = lean_ctor_get(x_168, 1); lean_inc(x_170); -x_171 = lean_ctor_get(x_169, 1); -lean_inc(x_171); -if (lean_is_exclusive(x_169)) { - lean_ctor_release(x_169, 0); - lean_ctor_release(x_169, 1); - x_172 = x_169; +if (lean_is_exclusive(x_168)) { + lean_ctor_release(x_168, 0); + lean_ctor_release(x_168, 1); + x_171 = x_168; } else { - lean_dec_ref(x_169); - x_172 = lean_box(0); + lean_dec_ref(x_168); + x_171 = lean_box(0); } -x_173 = lean_box(0); -lean_inc(x_170); -lean_inc(x_168); -x_174 = l_Lean_Language_Lean_process_parseCmd(x_173, x_6, x_168, x_170, x_17, x_7, x_171); -x_175 = lean_ctor_get(x_174, 1); -lean_inc(x_175); -if (lean_is_exclusive(x_174)) { - lean_ctor_release(x_174, 0); - lean_ctor_release(x_174, 1); - x_176 = x_174; +x_172 = lean_box(0); +lean_inc(x_169); +lean_inc(x_167); +x_173 = l_Lean_Language_Lean_process_parseCmd(x_172, x_6, x_167, x_169, x_163, x_7, x_170); +x_174 = lean_ctor_get(x_173, 1); +lean_inc(x_174); +if (lean_is_exclusive(x_173)) { + lean_ctor_release(x_173, 0); + lean_ctor_release(x_173, 1); + x_175 = x_173; } else { - lean_dec_ref(x_174); - x_176 = lean_box(0); + lean_dec_ref(x_173); + x_175 = lean_box(0); } -x_177 = lean_ctor_get(x_164, 2); -lean_inc(x_177); -x_178 = lean_unsigned_to_nat(0u); -x_179 = lean_nat_dec_lt(x_178, x_177); -lean_dec(x_177); -x_180 = lean_io_promise_result(x_170); -if (lean_is_scalar(x_172)) { - x_181 = lean_alloc_ctor(0, 2, 0); +x_176 = lean_ctor_get(x_162, 2); +lean_inc(x_176); +x_177 = lean_unsigned_to_nat(0u); +x_178 = lean_nat_dec_lt(x_177, x_176); +lean_dec(x_176); +x_179 = lean_io_promise_result(x_169); +if (lean_is_scalar(x_171)) { + x_180 = lean_alloc_ctor(0, 2, 0); } else { - x_181 = x_172; + x_180 = x_171; } -lean_ctor_set(x_181, 0, x_173); +lean_ctor_set(x_180, 0, x_172); +lean_ctor_set(x_180, 1, x_179); +x_181 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_181, 0, x_167); lean_ctor_set(x_181, 1, x_180); -x_182 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_182, 0, x_168); -lean_ctor_set(x_182, 1, x_181); -x_183 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_183, 0, x_182); -if (x_179 == 0) +x_182 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_182, 0, x_181); +if (x_178 == 0) { -lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; uint8_t x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; -lean_dec(x_164); -x_184 = l_Lean_Elab_instInhabitedInfoTree; -x_185 = l_outOfBounds___rarg(x_184); -x_186 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_186, 0, x_185); -x_187 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_188 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_189 = 0; -x_190 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_190, 0, x_187); -lean_ctor_set(x_190, 1, x_8); -lean_ctor_set(x_190, 2, x_186); -lean_ctor_set(x_190, 3, x_188); -lean_ctor_set_uint8(x_190, sizeof(void*)*4, x_189); -x_191 = lean_alloc_ctor(0, 2, 0); +lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; uint8_t x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; +lean_dec(x_162); +x_183 = l_Lean_Elab_instInhabitedInfoTree; +x_184 = l_outOfBounds___rarg(x_183); +x_185 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_185, 0, x_184); +x_186 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_187 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_188 = 0; +x_189 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_189, 0, x_186); +lean_ctor_set(x_189, 1, x_8); +lean_ctor_set(x_189, 2, x_185); +lean_ctor_set(x_189, 3, x_187); +lean_ctor_set_uint8(x_189, sizeof(void*)*4, x_188); +x_190 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_190, 0, x_189); +lean_ctor_set(x_190, 1, x_182); +if (lean_is_scalar(x_175)) { + x_191 = lean_alloc_ctor(0, 2, 0); +} else { + x_191 = x_175; +} lean_ctor_set(x_191, 0, x_190); -lean_ctor_set(x_191, 1, x_183); -if (lean_is_scalar(x_176)) { - x_192 = lean_alloc_ctor(0, 2, 0); -} else { - x_192 = x_176; -} -lean_ctor_set(x_192, 0, x_191); -lean_ctor_set(x_192, 1, x_175); -return x_192; +lean_ctor_set(x_191, 1, x_174); +return x_191; } else { -lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; uint8_t x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; -x_193 = l_Lean_Elab_instInhabitedInfoTree; -x_194 = l_Lean_PersistentArray_get_x21___rarg(x_193, x_164, x_178); -x_195 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_195, 0, x_194); -x_196 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; -x_197 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; -x_198 = 0; -x_199 = lean_alloc_ctor(0, 4, 1); -lean_ctor_set(x_199, 0, x_196); -lean_ctor_set(x_199, 1, x_8); -lean_ctor_set(x_199, 2, x_195); -lean_ctor_set(x_199, 3, x_197); -lean_ctor_set_uint8(x_199, sizeof(void*)*4, x_198); -x_200 = lean_alloc_ctor(0, 2, 0); +lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; uint8_t x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; +x_192 = l_Lean_Elab_instInhabitedInfoTree; +x_193 = l_Lean_PersistentArray_get_x21___rarg(x_192, x_162, x_177); +x_194 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_194, 0, x_193); +x_195 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; +x_196 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; +x_197 = 0; +x_198 = lean_alloc_ctor(0, 4, 1); +lean_ctor_set(x_198, 0, x_195); +lean_ctor_set(x_198, 1, x_8); +lean_ctor_set(x_198, 2, x_194); +lean_ctor_set(x_198, 3, x_196); +lean_ctor_set_uint8(x_198, sizeof(void*)*4, x_197); +x_199 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_199, 0, x_198); +lean_ctor_set(x_199, 1, x_182); +if (lean_is_scalar(x_175)) { + x_200 = lean_alloc_ctor(0, 2, 0); +} else { + x_200 = x_175; +} lean_ctor_set(x_200, 0, x_199); -lean_ctor_set(x_200, 1, x_183); -if (lean_is_scalar(x_176)) { - x_201 = lean_alloc_ctor(0, 2, 0); -} else { - x_201 = x_176; -} -lean_ctor_set(x_201, 0, x_200); -lean_ctor_set(x_201, 1, x_175); -return x_201; +lean_ctor_set(x_200, 1, x_174); +return x_200; } } } else { -uint8_t x_202; +uint8_t x_201; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -12852,23 +12816,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_202 = !lean_is_exclusive(x_13); -if (x_202 == 0) +x_201 = !lean_is_exclusive(x_13); +if (x_201 == 0) { return x_13; } else { -lean_object* x_203; lean_object* x_204; lean_object* x_205; -x_203 = lean_ctor_get(x_13, 0); -x_204 = lean_ctor_get(x_13, 1); -lean_inc(x_204); +lean_object* x_202; lean_object* x_203; lean_object* x_204; +x_202 = lean_ctor_get(x_13, 0); +x_203 = lean_ctor_get(x_13, 1); lean_inc(x_203); +lean_inc(x_202); lean_dec(x_13); -x_205 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_205, 0, x_203); -lean_ctor_set(x_205, 1, x_204); -return x_205; +x_204 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_204, 0, x_202); +lean_ctor_set(x_204, 1, x_203); +return x_204; } } } @@ -13085,7 +13049,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_38 = lean_box(0); -x_39 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; +x_39 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; x_40 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; x_41 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_41, 0, x_39); @@ -13129,7 +13093,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_47 = lean_box(0); -x_48 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; +x_48 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; x_49 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; x_50 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_50, 0, x_48); @@ -13193,7 +13157,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_63 = lean_box(0); -x_64 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10; +x_64 = l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9; x_65 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg___closed__19; x_66 = lean_alloc_ctor(0, 4, 1); lean_ctor_set(x_66, 0, x_64); @@ -13308,7 +13272,7 @@ lean_closure_set(x_13, 0, x_2); lean_closure_set(x_13, 1, x_6); lean_closure_set(x_13, 2, x_3); lean_closure_set(x_13, 3, x_4); -x_14 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3___rarg), 4, 2); +x_14 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2___rarg), 4, 2); lean_closure_set(x_14, 0, x_12); lean_closure_set(x_14, 1, x_13); x_15 = l_Lean_Language_Lean_process_processHeader___closed__1; @@ -13320,16 +13284,6 @@ x_17 = l_Lean_Language_SnapshotTask_ofIO___rarg(x_11, x_16, x_5); return x_17; } } -LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -uint8_t x_4; lean_object* x_5; -x_4 = lean_unbox(x_3); -lean_dec(x_3); -x_5 = l_Lean_Option_setIfNotSet___at_Lean_Language_Lean_process_processHeader___spec__1(x_1, x_2, x_4); -return x_5; -} -} LEAN_EXPORT lean_object* l_Lean_Language_Lean_process_processHeader___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { @@ -14408,7 +14362,7 @@ lean_closure_set(x_10, 0, x_2); lean_closure_set(x_10, 1, x_3); lean_closure_set(x_10, 2, x_1); lean_closure_set(x_10, 3, x_4); -x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__3___rarg), 4, 2); +x_11 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Language_Lean_process_processHeader___spec__2___rarg), 4, 2); lean_closure_set(x_11, 0, x_9); lean_closure_set(x_11, 1, x_10); x_12 = l___private_Lean_Language_Lean_0__Lean_Language_Lean_withHeaderExceptions___rarg(x_8, x_11, x_6, x_7); @@ -16468,12 +16422,12 @@ l_Lean_Language_Lean_process_parseCmd___lambda__14___closed__1 = _init_l_Lean_La lean_mark_persistent(l_Lean_Language_Lean_process_parseCmd___lambda__14___closed__1); l_Lean_Language_Lean_process_parseCmd___lambda__16___closed__1 = _init_l_Lean_Language_Lean_process_parseCmd___lambda__16___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_parseCmd___lambda__16___closed__1); -l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1(); -lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__1); -l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2(); -lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__2); -l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3(); -lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__2___closed__3); +l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1(); +lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__1); +l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2(); +lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__2); +l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3 = _init_l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3(); +lean_mark_persistent(l_List_mapTR_loop___at_Lean_Language_Lean_process_processHeader___spec__1___closed__3); l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1 = _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_processHeader___lambda__3___closed__1); l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2 = _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__2(); @@ -16492,8 +16446,6 @@ l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8 = _init_l_Lea lean_mark_persistent(l_Lean_Language_Lean_process_processHeader___lambda__3___closed__8); l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9 = _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9(); lean_mark_persistent(l_Lean_Language_Lean_process_processHeader___lambda__3___closed__9); -l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10 = _init_l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10(); -lean_mark_persistent(l_Lean_Language_Lean_process_processHeader___lambda__3___closed__10); l_Lean_Language_Lean_process_processHeader___lambda__4___closed__1 = _init_l_Lean_Language_Lean_process_processHeader___lambda__4___closed__1(); lean_mark_persistent(l_Lean_Language_Lean_process_processHeader___lambda__4___closed__1); l_Lean_Language_Lean_process_processHeader___lambda__4___closed__2 = _init_l_Lean_Language_Lean_process_processHeader___lambda__4___closed__2(); diff --git a/stage0/stdlib/Lean/Message.c b/stage0/stdlib/Lean/Message.c index bc9077af0d..37000f052d 100644 --- a/stage0/stdlib/Lean/Message.c +++ b/stage0/stdlib/Lean/Message.c @@ -31,103 +31,107 @@ lean_object* lean_format_pretty(lean_object*, lean_object*, lean_object*, lean_o LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__2(lean_object*, lean_object*); static lean_object* l_Lean_SerialMessage_toString___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_paren(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__53; +static lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4; +lean_object* l_Array_take___rarg(lean_object*, lean_object*); extern lean_object* l_Std_instInhabitedFormat; static lean_object* l_Lean_mkErrorStringWithPos___closed__4; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__30; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32; LEAN_EXPORT lean_object* l_Lean_MessageData_kind(lean_object*); uint32_t lean_string_utf8_get(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21; static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__1; lean_object* lean_elab_environment_of_kernel_env(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3; lean_object* lean_mk_empty_array_with_capacity(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17; +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___boxed(lean_object*, lean_object*); size_t lean_usize_shift_right(size_t, size_t); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___lambda__1(lean_object*, lean_object*); static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__5; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__52; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28; static lean_object* l_List_mapTR_loop___at_Lean_MessageData_orList___spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_SerialMessage_toMessage(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__3; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__39; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__41; lean_object* l_Lean_Json_mkObj(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_MessageLog_errorsToWarnings___spec__2(lean_object*); lean_object* l_Lean_PersistentArray_toArray___rarg(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); static lean_object* l_Lean_SerialMessage_toString___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_MessageLog_toList___boxed(lean_object*); static lean_object* l_Lean_MessageData_orList___closed__5; LEAN_EXPORT lean_object* l_Lean_MessageData_toString(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24; LEAN_EXPORT lean_object* l_Lean_indentD(lean_object*); static lean_object* l_Lean_termM_x21_____closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg(lean_object*, lean_object*); +static lean_object* l_Lean_MessageData_formatAux___lambda__2___closed__3; lean_object* l_Lean_Syntax_formatStxAux(lean_object*, uint8_t, lean_object*, lean_object*); static lean_object* l_Lean_MessageData_lazy___elambda__1___closed__1; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__32; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_MessageLog_errorsToInfos___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofSyntax___elambda__2(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17; +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12; static lean_object* l_Lean_MessageData_formatAux___closed__1; +static lean_object* l_Lean_MessageData_formatAux___lambda__2___closed__4; lean_object* l_Lean_Name_toString(lean_object*, uint8_t, lean_object*); static size_t l_Lean_instInhabitedMessageLog___closed__3; static lean_object* l_Lean_MessageData_ofList___closed__4; static lean_object* l_Lean_MessageData_orList___closed__3; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__33; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8; LEAN_EXPORT lean_object* l_Lean_MessageData_ofList(lean_object*); static lean_object* l_Lean_MessageData_arrayExpr_toMessageData___closed__3; lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____closed__2; LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__12; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToWarnings___spec__4(size_t, size_t, lean_object*); lean_object* l_Lean_TSyntax_expandInterpolatedStr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_ofName___closed__1; static lean_object* l_Lean_instToMessageDataOption___rarg___closed__2; static lean_object* l_List_mapTR_loop___at_Lean_MessageData_orList___spec__1___closed__1; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1___boxed(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26; uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23; static lean_object* l_Lean_addMessageContextPartial___rarg___lambda__1___closed__1; -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__31; static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__2___closed__1; uint8_t l_Lean_Name_isAnonymous(lean_object*); static lean_object* l_Lean_MessageData_andList___closed__2; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14; LEAN_EXPORT lean_object* l_Lean_MessageLog_msgs(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofArray(lean_object*); static lean_object* l_Lean_MessageData_hasSyntheticSorry_visit___closed__3; +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapM___at_Lean_MessageLog_errorsToWarnings___spec__1(lean_object*); static lean_object* l_Lean_MessageData_hasSyntheticSorry_visit___closed__1; lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeFormat; static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__2; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__36; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataOption___rarg(lean_object*, lean_object*); static double l_Lean_MessageData_formatAux___closed__5; LEAN_EXPORT lean_object* l_String_splitAux___at_Lean_stringToMessageData___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__45; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__1(lean_object*); -static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6; static lean_object* l_Lean_MessageData_ofList___closed__7; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__34; LEAN_EXPORT lean_object* l_Lean_instFromJsonSerialMessage; LEAN_EXPORT lean_object* l_Lean_MessageData_hasTag___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeArrayExpr(lean_object*); static lean_object* l_Lean_MessageData_instCoeOptionExpr___closed__2; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_MessageData_hasTag___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_MessageData_hasTag___spec__1(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_MessageData_hasSyntheticSorry_visit___closed__2; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__8; @@ -140,29 +144,30 @@ static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__19; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__1___boxed(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__8; LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22; LEAN_EXPORT lean_object* l_Lean_mkErrorStringWithPos(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_MessageData_formatAux___closed__2; LEAN_EXPORT lean_object* l_Lean_instToMessageDataOption(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataSyntax; LEAN_EXPORT lean_object* l_Lean_instAddMessageContextOfMonadLift___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3; +LEAN_EXPORT lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438_(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20; static lean_object* l_Lean_termM_x21_____closed__12; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); static lean_object* l_Lean_instBEqMessageSeverity___closed__1; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_MessageLog_append___closed__1; static lean_object* l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__2; lean_object* l_List_flatMapTR_go___at___private_Lean_Server_Rpc_Basic_0__Lean_Lsp_toJsonRpcRef____x40_Lean_Server_Rpc_Basic___hyg_173____spec__1(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__13; LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeListExpr(lean_object*); static lean_object* l_Lean_MessageData_orList___closed__2; lean_object* l_Lean_instInhabitedPersistentArrayNode(lean_object*); -static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__6; +static lean_object* l_Lean_MessageData_formatAux___lambda__4___closed__3; lean_object* l_Lean_PersistentArray_toList___rarg(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; static lean_object* l_Lean_MessageData_formatAux___closed__3; static lean_object* l_Lean_MessageLog_empty___closed__1; lean_object* l_Lean_KVMap_insertCore(lean_object*, lean_object*, lean_object*); @@ -170,21 +175,20 @@ uint8_t lean_string_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Message_toJson(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_lazy___elambda__1___closed__3; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__40; +lean_object* l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_40____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeString; static lean_object* l_Lean_MessageData_nil___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_instAppend(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataTSyntax___rarg(lean_object*); static lean_object* l_Lean_MessageData_orList___closed__4; -static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__42; LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeSyntax; LEAN_EXPORT lean_object* l_Lean_instToMessageDataOfToFormat___rarg(lean_object*); lean_object* lean_string_utf8_byte_size(lean_object*); static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__1___closed__2; static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__2___closed__3; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; lean_object* l_Lean_Json_getBool_x3f(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_instCoeString___closed__3; LEAN_EXPORT lean_object* l_Lean_addMessageContextFull(lean_object*); LEAN_EXPORT lean_object* l_Lean_instInhabitedBaseMessage___rarg(lean_object*); @@ -195,18 +199,17 @@ LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeOptionExpr(lean_object*); static lean_object* l_Lean_instInhabitedMessageData___closed__1; lean_object* l_List_mapTR_loop___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__27; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19; static lean_object* l_Lean_MessageData_instCoeList___closed__1; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__50; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__6; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__4; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__29; lean_object* l_Lean_Json_getStr_x3f(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6; static lean_object* l_Lean_mkErrorStringWithPos___closed__3; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeString___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataArray___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__24; static lean_object* l_Lean_MessageData_orList___closed__1; LEAN_EXPORT uint8_t l_Lean_MessageData_ofConstName___elambda__1(lean_object*); @@ -221,7 +224,6 @@ LEAN_EXPORT lean_object* l_Lean_instToMessageDataExpr; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_MessageData_hasSyntheticSorry_visit___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_MessageData_ofList___closed__6; LEAN_EXPORT lean_object* l_Lean_MessageLog_errorsToInfos(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; lean_object* l_List_getLast_x21___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____closed__1; lean_object* l_Lean_Syntax_copyHeadTailInfoFrom(lean_object*, lean_object*); @@ -230,127 +232,131 @@ static lean_object* l_Lean_MessageData_formatAux___closed__8; lean_object* l_Lean_ppLevel(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_MessageData_formatAux___closed__4; LEAN_EXPORT lean_object* l_String_split___at_Lean_stringToMessageData___spec__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_MessageLog_hasErrors___spec__1___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5___boxed(lean_object*, lean_object*); lean_object* lean_string_utf8_next(lean_object*, lean_object*); +static lean_object* l_Lean_MessageData_formatAux___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeLevel; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__14; +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414_(lean_object*); static lean_object* l_Lean_MessageData_arrayExpr_toMessageData___closed__1; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33; static lean_object* l_Lean_instToMessageDataOption___rarg___closed__3; static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__3; +static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3; LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataArray(lean_object*); static lean_object* l_Lean_termM_x21_____closed__13; static lean_object* l_Lean_MessageData_orList___closed__6; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18; lean_object* l_Lean_ppExprWithInfos(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_instToJsonSerialMessage___closed__1; lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); static lean_object* l_Lean_SerialMessage_toString___lambda__3___closed__2; lean_object* lean_nat_to_int(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofSyntax(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10; LEAN_EXPORT lean_object* l_Lean_instToMessageDataFormat; LEAN_EXPORT lean_object* l_Lean_PersistentArray_foldlM___at_Lean_MessageLog_getInfoMessages___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instInhabitedMessageData; lean_object* l_Lean_Name_quickCmp___boxed(lean_object*, lean_object*); +lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21; static lean_object* l_Lean_MessageLog_instAppend___closed__1; LEAN_EXPORT lean_object* l_Lean_instToMessageDataSubarray___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_toList(lean_object*); lean_object* l_Lean_Json_getObjValD(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_ofList___closed__5; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__26; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19; +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3; static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__2___closed__2; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_MessageLog_getInfoMessages___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_formatAux___closed__6; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24; static lean_object* l_Lean_termM_x21_____closed__2; static lean_object* l_Lean_MessageData_instCoeLevel___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_andList(lean_object*); static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__2; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__11; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToInfos___spec__4(size_t, size_t, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27; LEAN_EXPORT lean_object* l_Lean_MessageData_ofExpr___elambda__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6; LEAN_EXPORT lean_object* l_Lean_instBEqMessageSeverity; +static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Message_kind(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070_(lean_object*); static lean_object* l_Lean_MessageData_ofConstName___elambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_instTypeNameMessageData; +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_pop(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__38; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29; LEAN_EXPORT lean_object* l_Lean_MessageSeverity_noConfusion___rarg(uint8_t, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToInfos___spec__3(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_instInhabitedMessageLog; LEAN_EXPORT lean_object* l_Lean_instToMessageDataString; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; lean_object* lean_array_to_list(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToInfos___spec__3___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20; static lean_object* l___private_Lean_Data_PersistentArray_0__Lean_PersistentArray_foldlFromMAux___at_Lean_MessageLog_getInfoMessages___spec__2___closed__1; static lean_object* l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__3; -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357_(lean_object*); LEAN_EXPORT uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__22; static lean_object* l_Lean_instToMessageDataOption___rarg___closed__4; static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__5; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(lean_object*, lean_object*); +static lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2; static lean_object* l_Lean_MessageData_ofList___closed__2; static lean_object* l_Lean_MessageData_instCoeSyntax___closed__1; LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageSeverity_noConfusion(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25; uint8_t lean_string_utf8_at_end(lean_object*, lean_object*); static lean_object* l_Lean_instToMessageDataMessageData___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_nil; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21; +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930_(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataOfToFormat(lean_object*); static lean_object* l_Lean_MessageData_instCoeOptionExpr___closed__1; -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221_(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_MessageLog_hasErrors___spec__3___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9; static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__3___closed__1; LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyMAux___at_Lean_MessageLog_hasErrors___spec__2(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14; LEAN_EXPORT lean_object* l_Lean_instFromJsonBaseMessage(lean_object*); lean_object* l_Lean_ppConstNameWithInfos(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__12; -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9; LEAN_EXPORT lean_object* l_Lean_MessageData_orList(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4; LEAN_EXPORT lean_object* l_Lean_MessageLog_getInfoMessages___boxed(lean_object*); LEAN_EXPORT uint8_t l_Lean_MessageData_ofSyntax___elambda__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofConstName___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_mapMAux___at_Lean_MessageLog_errorsToInfos___spec__2(lean_object*); lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15; LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___rarg___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__17; static lean_object* l_Lean_termM_x21_____closed__4; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__10; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofConstName___elambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1; +static lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__3(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToJsonSerialMessage; LEAN_EXPORT uint8_t l_Lean_MessageLog_hasUnreported(lean_object*); static lean_object* l_Lean_termM_x21_____closed__11; LEAN_EXPORT lean_object* l_Lean_MessageLog_empty; lean_object* lean_string_utf8_prev(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11; static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__1___closed__1; extern lean_object* l_instMonadBaseIO; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_MessageLog_hasErrors___spec__4(lean_object*, size_t, size_t); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_ofLevel___elambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_String_split___at_Lean_stringToMessageData___spec__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataProd___rarg(lean_object*, lean_object*, lean_object*); @@ -358,22 +364,23 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_foldlM___at_Lean_MessageLog_getI LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString(lean_object*, uint8_t); static lean_object* l_Lean_MessageData_instCoeName___closed__1; LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21; +static lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__9; LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__1(lean_object*, lean_object*); extern lean_object* l_Std_Format_defWidth; +static lean_object* l_Lean_MessageData_formatAux___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Data_PersistentArray_0__Lean_PersistentArray_foldlMAux___at_Lean_MessageLog_getInfoMessages___spec__3___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_arrayExpr_toMessageData(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__51; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8; LEAN_EXPORT lean_object* l_Lean_instFromJsonMessageSeverity; LEAN_EXPORT lean_object* l_Lean_MessageData_ofName___lambda__1___boxed(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__25; lean_object* lean_usize_to_nat(size_t); LEAN_EXPORT lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__44; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__23; LEAN_EXPORT lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); @@ -384,83 +391,80 @@ LEAN_EXPORT lean_object* l_Lean_MessageLog_errorsToWarnings(lean_object*); static lean_object* l_Lean_MessageData_lazy___elambda__1___closed__4; LEAN_EXPORT lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataLevel; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19; LEAN_EXPORT lean_object* l_Lean_MessageData_nestD(lean_object*); static lean_object* l_Lean_MessageData_ofConstName___closed__1; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33; +static lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5; LEAN_EXPORT lean_object* l_panic___at_Lean_MessageData_formatAux___spec__2(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_MessageLog_hasErrors___spec__3(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_MessageData_ofConstName___elambda__2(lean_object*, uint8_t, lean_object*, lean_object*); static lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____closed__3; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19; +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_MessageLog_hasErrors___spec__1(lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11; static lean_object* l_Lean_instToMessageDataOptionExpr___closed__3; static lean_object* l_Lean_instToMessageDataOptionExpr___closed__1; static lean_object* l_panic___at_Lean_MessageData_formatAux___spec__2___closed__1; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23; static lean_object* l_Lean_termM_x21_____closed__8; LEAN_EXPORT lean_object* l_Lean_instToMessageDataProd(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164_(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataMVarId(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17; lean_object* l___private_Lean_Data_Position_0__Lean_fromJsonPosition____x40_Lean_Data_Position___hyg_289_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2; +static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2; LEAN_EXPORT uint8_t l_Lean_MessageData_ofName___lambda__1(lean_object*); static lean_object* l_Lean_toMessageList___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_mkPPContext(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; static lean_object* l_Lean_MessageData_formatAux___closed__9; LEAN_EXPORT lean_object* l_Lean_MessageSeverity_noConfusion___rarg___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataList(lean_object*); -static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__4; lean_object* l_Lean_ppTerm(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instAddMessageContextOfMonadLift(lean_object*, lean_object*); lean_object* l_Lean_Json_parseTagged(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__1; static lean_object* l_Lean_instToMessageDataOption___rarg___closed__5; static lean_object* l_Lean_MessageData_arrayExpr_toMessageData___closed__4; -static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_MessageData_lazy___elambda__1(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28; static lean_object* l_Lean_MessageSeverity_noConfusion___rarg___closed__1; extern lean_object* l_Lean_NameSet_empty; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17; static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__4; -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737_(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22; static lean_object* l_Lean_MessageData_formatAux___closed__10; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_MessageLog_getInfoMessages___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; lean_object* lean_string_length(lean_object*); LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___rarg___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_MessageData_hasSyntheticSorry_visit___spec__1(lean_object*, lean_object*, size_t, size_t); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__28; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__3; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__2; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13; static lean_object* l_Lean_MessageData_arrayExpr_toMessageData___closed__2; +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877_(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__3(lean_object*, lean_object*, lean_object*); lean_object* lean_float_to_string(double); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_ofLevel(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9; static lean_object* l_Lean_MessageData_ofConstName___elambda__2___closed__3; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_getInfoMessages(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_forM___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Message_serialize(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Kernel_Exception_toMessageData(lean_object*, lean_object*); uint8_t lean_uint32_dec_eq(uint32_t, uint32_t); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__2___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5; lean_object* l_id___rarg___boxed(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__46; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__11; static lean_object* l_Lean_MessageData_ofLevel___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____boxed(lean_object*); @@ -468,22 +472,28 @@ LEAN_EXPORT lean_object* l_Lean_termM_x21__; LEAN_EXPORT lean_object* l_Lean_indentExpr(lean_object*); static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__6; LEAN_EXPORT lean_object* l_Lean_MessageData_sbracket(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12; LEAN_EXPORT lean_object* l_Lean_MessageData_hasSyntheticSorry_visit(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_andList___closed__3; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18; LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8; static lean_object* l_Lean_MessageLog_empty___closed__3; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5(lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__15; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13; LEAN_EXPORT uint8_t l_Lean_MessageData_ofExpr___elambda__1(lean_object*, lean_object*); lean_object* l_Std_Format_joinSep___at_Prod_repr___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_SerialMessage_toString___closed__1; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10; uint8_t lean_float_beq(double, double); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); lean_object* l_Lean_Level_format(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_instToJsonMessageSeverity; lean_object* l_String_toName(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Data_PersistentArray_0__Lean_PersistentArray_foldlMAux___at_Lean_MessageLog_getInfoMessages___spec__3(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_MessageLog_getInfoMessages___spec__5(lean_object*, size_t, size_t, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); +static lean_object* l_Lean_MessageData_formatAux___lambda__4___closed__1; lean_object* l_Except_orElseLazy___rarg(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_instCoeArrayExpr___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -491,19 +501,17 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux_ static lean_object* l_Lean_instInhabitedMessageLog___closed__2; LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__49; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31; +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; static lean_object* l_Lean_MessageLog_empty___closed__2; LEAN_EXPORT lean_object* l_Lean_MessageData_ofSyntax___elambda__1___boxed(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__47; static lean_object* l_Lean_termM_x21_____closed__9; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30; static lean_object* l_Lean_instFromJsonSerialMessage___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToInfos___spec__4___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12; +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_toMessageList(lean_object*); static lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125____closed__1; -static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18; static lean_object* l_Lean_instInhabitedMessageLog___closed__5; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_MessageLog_getInfoMessages___spec__4(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_MessageData_ofConstName___elambda__2___closed__2; @@ -514,17 +522,17 @@ LEAN_EXPORT lean_object* l___private_Lean_Data_PersistentArray_0__Lean_Persisten LEAN_EXPORT lean_object* l_Lean_MessageLog_instAppend; LEAN_EXPORT lean_object* l_Lean_mkErrorStringWithPos___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_termM_x21_____closed__5; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Message___hyg_164____lambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataMessageData; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30; LEAN_EXPORT lean_object* l_Lean_MessageSeverity_noConfusion___rarg___lambda__1(lean_object*); lean_object* l_List_reverse___rarg(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; static lean_object* l_Lean_MessageData_paren___closed__1; LEAN_EXPORT lean_object* l_Lean_instToMessageDataTSyntax(lean_object*); -static lean_object* l_Lean_MessageData_formatAux___lambda__1___closed__5; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__6; size_t lean_usize_sub(size_t, size_t); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2; lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_MessageData_ofList___closed__1; static lean_object* l_Lean_instInhabitedMessageLog___closed__4; @@ -537,13 +545,16 @@ LEAN_EXPORT lean_object* l_Lean_MessageLog_hasErrors___boxed(lean_object*); lean_object* l_Function_comp___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instImpl____x40_Lean_Message___hyg_606_; lean_object* l_Lean_PersistentArray_forM___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27; static lean_object* l_Lean_MessageData_format___closed__1; size_t lean_usize_add(size_t, size_t); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_stringToMessageData___spec__3___at_Lean_stringToMessageData___spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeMVarId(lean_object*); static lean_object* l_Lean_SerialMessage_toString___lambda__3___closed__1; static lean_object* l_Lean_instToMessageDataOption___rarg___closed__1; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15; static lean_object* l_Lean_termM_x21_____closed__10; lean_object* lean_array_uget(lean_object*, size_t); static lean_object* l_Lean_MessageData_ofList___closed__3; @@ -551,6 +562,7 @@ size_t lean_array_size(lean_object*); static lean_object* l_List_mapTR_loop___at_Lean_MessageData_orList___spec__1___closed__2; static lean_object* l_Lean_MessageData_instCoeArrayExpr___closed__3; LEAN_EXPORT lean_object* l_Lean_MessageLog_forM(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25; uint8_t l_Lean_PersistentArray_isEmpty___rarg(lean_object*); static lean_object* l_Lean_MessageData_ofList___closed__8; lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); @@ -559,10 +571,13 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_stringToMessageData___spec_ LEAN_EXPORT uint8_t l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_107_(uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Lean_MessageLog_msgs___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_SerialMessage_toString___lambda__1___boxed(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16; +LEAN_EXPORT lean_object* l_Lean_MessageData_maxTraceChildren; size_t lean_usize_shift_left(size_t, size_t); static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__1; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_MessageLog_hasErrors___spec__2___boxed(lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4; +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageSeverity_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__20; LEAN_EXPORT lean_object* l_Lean_instInhabitedBaseMessage(lean_object*); @@ -571,6 +586,7 @@ lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Lean_termM_x21_____closed__6; static lean_object* l_Lean_MessageData_ofSyntax___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_ofLevel___elambda__1___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_MessageData_ofLevel___elambda__1(lean_object*); static lean_object* l_Lean_termM_x21_____closed__3; @@ -578,19 +594,19 @@ LEAN_EXPORT lean_object* l_Lean_instToMessageDataName; static lean_object* l_Lean_instToJsonMessageSeverity___closed__1; lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__21; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3(lean_object*, lean_object*); static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__5; LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeExpr; +static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10; LEAN_EXPORT lean_object* l_Lean_instToMessageDataSubarray___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Message_toString___boxed(lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToMessageDataSubarray(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_toArray(lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToWarnings___spec__3___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; LEAN_EXPORT lean_object* l_Lean_MessageData_kind___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instToJsonBaseMessage(lean_object*); LEAN_EXPORT lean_object* l_Lean_addMessageContextPartial___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -599,17 +615,17 @@ static lean_object* l_Lean_MessageData_formatAux___closed__7; static lean_object* l_Lean_mkErrorStringWithPos___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeName; lean_object* lean_nat_add(lean_object*, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11; LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125_(uint8_t); LEAN_EXPORT lean_object* l_Lean_instToMessageDataList___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_instCoeArrayExpr___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_bracket(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5(lean_object*, lean_object*); static lean_object* l_Lean_MessageData_instCoeString___closed__1; LEAN_EXPORT lean_object* l_Lean_SerialMessage_instToString(lean_object*); static lean_object* l_Lean_termM_x21_____closed__14; -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2___boxed(lean_object*, lean_object*); lean_object* l_Lean_Json_pretty(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550_(lean_object*); LEAN_EXPORT lean_object* l_Lean_instFromJsonBaseMessage___rarg(lean_object*); static lean_object* l_Lean_instToMessageDataOptionExpr___closed__2; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__7; @@ -624,12 +640,13 @@ static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__48; lean_object* l_Lean_RBTree_union___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_markAllReported(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageLog_errorsToWarnings___spec__3(size_t, size_t, lean_object*); -static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); static lean_object* l_Lean_instInhabitedMessageLog___closed__1; LEAN_EXPORT lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22; LEAN_EXPORT lean_object* l_Lean_MessageData_ofConstName___elambda__1___boxed(lean_object*); static lean_object* l_Lean_MessageData_paren___closed__2; static lean_object* l_Lean_Kernel_Exception_toMessageData___closed__9; @@ -639,11 +656,11 @@ LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_MessageData_orList___spec__ LEAN_EXPORT lean_object* l_Lean_Message_kind___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_MessageLog_hasErrors___spec__4___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_MessageData_formatAux___lambda__2___closed__2; size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_MessageData_mkPPContext___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_Kernel_Exception_mkCtx(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MessageData_lazy___elambda__1___lambda__1(lean_object*, lean_object*); -static lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1; static lean_object* l_Lean_MessageData_instCoeString___closed__2; static lean_object* l_Lean___aux__Lean__Message______macroRules__Lean__termM_x21____1___closed__4; LEAN_EXPORT lean_object* l_Lean_stringToMessageData___boxed(lean_object*); @@ -652,6 +669,7 @@ lean_object* l___private_Init_Dynamic_0__Dynamic_get_x3fImpl___rarg(lean_object* static lean_object* l_Lean_MessageLog_empty___closed__4; LEAN_EXPORT lean_object* l_Lean_addMessageContextFull___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Message_toString(lean_object*, uint8_t, lean_object*); +static lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16; LEAN_EXPORT lean_object* l_Lean_instToMessageDataTSyntax___boxed(lean_object*); LEAN_EXPORT uint8_t l_Lean_MessageLog_hasErrors(lean_object*); static lean_object* _init_l_Lean_mkErrorStringWithPos___closed__1() { @@ -2834,6 +2852,68 @@ x_3 = l_Lean_MessageData_hasSyntheticSorry_visit(x_2, x_1); return x_3; } } +static lean_object* _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("maxTraceChildren", 16, 16); +return x_1; +} +} +static lean_object* _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Maximum number of trace node children to display", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = lean_unsigned_to_nat(50u); +x_2 = l_Lean_mkErrorStringWithPos___closed__1; +x_3 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3; +x_4 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_4, 0, x_1); +lean_ctor_set(x_4, 1, x_2); +lean_ctor_set(x_4, 2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__1; +x_2 = l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__2; +x_3 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2; +x_3 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4; +x_4 = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5; +x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_Profile___hyg_40____spec__1(x_2, x_3, x_4, x_1); +return x_5; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__1(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -2993,53 +3073,16 @@ return x_22; static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__1() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_mkErrorStringWithPos___closed__1; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(" ", 1, 1); -return x_1; -} -} -static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_MessageData_formatAux___lambda__1___closed__2; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(2u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__5() { -_start: -{ lean_object* x_1; x_1 = lean_mk_string_unchecked("\n", 1, 1); return x_1; } } -static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__6() { +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_MessageData_formatAux___lambda__1___closed__5; +x_1 = l_Lean_MessageData_formatAux___lambda__1___closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; @@ -3048,134 +3091,116 @@ return x_2; LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; -lean_inc(x_2); -lean_inc(x_1); -x_8 = l_Lean_MessageData_formatAux(x_1, x_2, x_3, x_7); -if (lean_obj_tag(x_8) == 0) +size_t x_8; size_t x_9; lean_object* x_10; +x_8 = lean_array_size(x_5); +x_9 = 0; +x_10 = l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__1(x_1, x_2, x_8, x_9, x_5, x_7); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); -x_11 = l_Lean_MessageData_formatAux___lambda__1___closed__1; -x_12 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_5); -x_13 = l_Lean_MessageData_formatAux___lambda__1___closed__3; -x_14 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_14, 0, x_12); +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_array_to_list(x_12); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_3); lean_ctor_set(x_14, 1, x_13); -x_15 = l_Lean_MessageData_formatAux___lambda__1___closed__4; -x_16 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_9); -x_17 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_17, 0, x_14); +x_15 = l_Lean_MessageData_formatAux___lambda__1___closed__2; +x_16 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_14, x_15); +x_17 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_17, 0, x_4); lean_ctor_set(x_17, 1, x_16); -x_18 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_11); -x_19 = lean_array_size(x_4); -x_20 = 0; -x_21 = l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__1(x_1, x_2, x_19, x_20, x_4, x_10); -if (lean_obj_tag(x_21) == 0) -{ -uint8_t x_22; -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_23 = lean_ctor_get(x_21, 0); -x_24 = lean_array_to_list(x_23); -x_25 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_25, 0, x_18); -lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_MessageData_formatAux___lambda__1___closed__6; -x_27 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_25, x_26); -x_28 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_28, 0, x_15); -lean_ctor_set(x_28, 1, x_27); -lean_ctor_set(x_21, 0, x_28); -return x_21; +lean_ctor_set(x_10, 0, x_17); +return x_10; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_29 = lean_ctor_get(x_21, 0); -x_30 = lean_ctor_get(x_21, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_21); -x_31 = lean_array_to_list(x_29); -x_32 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_32, 0, x_18); -lean_ctor_set(x_32, 1, x_31); -x_33 = l_Lean_MessageData_formatAux___lambda__1___closed__6; -x_34 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_32, x_33); -x_35 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_35, 0, x_15); -lean_ctor_set(x_35, 1, x_34); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_30); -return x_36; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_18 = lean_ctor_get(x_10, 0); +x_19 = lean_ctor_get(x_10, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_10); +x_20 = lean_array_to_list(x_18); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_3); +lean_ctor_set(x_21, 1, x_20); +x_22 = l_Lean_MessageData_formatAux___lambda__1___closed__2; +x_23 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_21, x_22); +x_24 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_24, 0, x_4); +lean_ctor_set(x_24, 1, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_19); +return x_25; } } else { -uint8_t x_37; -lean_dec(x_18); -x_37 = !lean_is_exclusive(x_21); -if (x_37 == 0) -{ -return x_21; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_21, 0); -x_39 = lean_ctor_get(x_21, 1); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_21); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; -} -} -} -else -{ -uint8_t x_41; -lean_dec(x_5); +uint8_t x_26; lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_41 = !lean_is_exclusive(x_8); -if (x_41 == 0) +lean_dec(x_3); +x_26 = !lean_is_exclusive(x_10); +if (x_26 == 0) { -return x_8; +return x_10; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_8, 0); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_8); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_10, 0); +x_28 = lean_ctor_get(x_10, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_10); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; } } } } +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_mkErrorStringWithPos___closed__1; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" ", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_MessageData_formatAux___lambda__2___closed__2; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(2u); +x_2 = lean_nat_to_int(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -3185,21 +3210,21 @@ lean_inc(x_1); x_8 = l_Lean_MessageData_formatAux(x_1, x_2, x_3, x_7); if (lean_obj_tag(x_8) == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; size_t x_19; size_t x_20; lean_object* x_21; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_9 = lean_ctor_get(x_8, 0); lean_inc(x_9); x_10 = lean_ctor_get(x_8, 1); lean_inc(x_10); lean_dec(x_8); -x_11 = l_Lean_MessageData_formatAux___lambda__1___closed__1; +x_11 = l_Lean_MessageData_formatAux___lambda__2___closed__1; x_12 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_5); -x_13 = l_Lean_MessageData_formatAux___lambda__1___closed__3; +x_13 = l_Lean_MessageData_formatAux___lambda__2___closed__3; x_14 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); -x_15 = l_Lean_MessageData_formatAux___lambda__1___closed__4; +x_15 = l_Lean_MessageData_formatAux___lambda__2___closed__4; x_16 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_9); @@ -3209,100 +3234,249 @@ lean_ctor_set(x_17, 1, x_16); x_18 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_11); -x_19 = lean_array_size(x_4); -x_20 = 0; -x_21 = l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__3(x_1, x_2, x_19, x_20, x_4, x_10); -if (lean_obj_tag(x_21) == 0) -{ -uint8_t x_22; -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_23 = lean_ctor_get(x_21, 0); -x_24 = lean_array_to_list(x_23); -x_25 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_25, 0, x_18); -lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_MessageData_formatAux___lambda__1___closed__6; -x_27 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_25, x_26); -x_28 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_28, 0, x_15); -lean_ctor_set(x_28, 1, x_27); -lean_ctor_set(x_21, 0, x_28); -return x_21; +x_19 = lean_box(0); +x_20 = l_Lean_MessageData_formatAux___lambda__1(x_1, x_2, x_18, x_15, x_4, x_19, x_10); +return x_20; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_29 = lean_ctor_get(x_21, 0); -x_30 = lean_ctor_get(x_21, 1); -lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_21); -x_31 = lean_array_to_list(x_29); -x_32 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_32, 0, x_18); -lean_ctor_set(x_32, 1, x_31); -x_33 = l_Lean_MessageData_formatAux___lambda__1___closed__6; -x_34 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_32, x_33); -x_35 = lean_alloc_ctor(4, 2, 0); -lean_ctor_set(x_35, 0, x_15); -lean_ctor_set(x_35, 1, x_34); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_30); -return x_36; -} -} -else -{ -uint8_t x_37; -lean_dec(x_18); -x_37 = !lean_is_exclusive(x_21); -if (x_37 == 0) -{ -return x_21; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_21, 0); -x_39 = lean_ctor_get(x_21, 1); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_21); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; -} -} -} -else -{ -uint8_t x_41; +uint8_t x_21; lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_41 = !lean_is_exclusive(x_8); -if (x_41 == 0) +x_21 = !lean_is_exclusive(x_8); +if (x_21 == 0) { return x_8; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_8, 0); -x_43 = lean_ctor_get(x_8, 1); -lean_inc(x_43); -lean_inc(x_42); +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_8, 0); +x_23 = lean_ctor_get(x_8, 1); +lean_inc(x_23); +lean_inc(x_22); lean_dec(x_8); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +size_t x_8; size_t x_9; lean_object* x_10; +x_8 = lean_array_size(x_5); +x_9 = 0; +x_10 = l_Array_mapMUnsafe_map___at_Lean_MessageData_formatAux___spec__3(x_1, x_2, x_8, x_9, x_5, x_7); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_array_to_list(x_12); +x_14 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_14, 0, x_3); +lean_ctor_set(x_14, 1, x_13); +x_15 = l_Lean_MessageData_formatAux___lambda__1___closed__2; +x_16 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_14, x_15); +x_17 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_17, 0, x_4); +lean_ctor_set(x_17, 1, x_16); +lean_ctor_set(x_10, 0, x_17); +return x_10; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_18 = lean_ctor_get(x_10, 0); +x_19 = lean_ctor_get(x_10, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_10); +x_20 = lean_array_to_list(x_18); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_3); +lean_ctor_set(x_21, 1, x_20); +x_22 = l_Lean_MessageData_formatAux___lambda__1___closed__2; +x_23 = l_Std_Format_joinSep___at_Prod_repr___spec__1(x_21, x_22); +x_24 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_24, 0, x_4); +lean_ctor_set(x_24, 1, x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_19); +return x_25; +} +} +else +{ +uint8_t x_26; +lean_dec(x_4); +lean_dec(x_3); +x_26 = !lean_is_exclusive(x_10); +if (x_26 == 0) +{ +return x_10; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_10, 0); +x_28 = lean_ctor_get(x_10, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_10); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_MessageData_maxTraceChildren; +return x_1; +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" more entries... (increase `maxTraceChildren` to see more)", 58, 58); +return x_1; +} +} +static lean_object* _init_l_Lean_MessageData_formatAux___lambda__4___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_MessageData_formatAux___lambda__4___closed__2; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_2); +lean_inc(x_1); +x_9 = l_Lean_MessageData_formatAux(x_1, x_2, x_3, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = l_Lean_MessageData_formatAux___lambda__2___closed__1; +x_13 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_6); +x_14 = l_Lean_MessageData_formatAux___lambda__2___closed__3; +x_15 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set(x_15, 1, x_14); +x_16 = l_Lean_MessageData_formatAux___lambda__2___closed__4; +x_17 = lean_alloc_ctor(4, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_10); +x_18 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_18, 0, x_15); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_12); +x_20 = lean_ctor_get(x_4, 3); +x_21 = l_Lean_MessageData_formatAux___lambda__4___closed__1; +x_22 = l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(x_20, x_21); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_nat_dec_lt(x_23, x_22); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_22); +x_25 = lean_box(0); +x_26 = l_Lean_MessageData_formatAux___lambda__3(x_1, x_2, x_19, x_16, x_5, x_25, x_11); +return x_26; +} +else +{ +lean_object* x_27; uint8_t x_28; +x_27 = lean_array_get_size(x_5); +x_28 = lean_nat_dec_lt(x_22, x_27); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_27); +lean_dec(x_22); +x_29 = lean_box(0); +x_30 = l_Lean_MessageData_formatAux___lambda__3(x_1, x_2, x_19, x_16, x_5, x_29, x_11); +return x_30; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_31 = l_Array_take___rarg(x_5, x_22); +x_32 = lean_nat_sub(x_27, x_22); +lean_dec(x_22); +lean_dec(x_27); +x_33 = l___private_Init_Data_Repr_0__Nat_reprFast(x_32); +x_34 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_34, 0, x_33); +x_35 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_35, 0, x_12); +lean_ctor_set(x_35, 1, x_34); +x_36 = l_Lean_MessageData_formatAux___lambda__4___closed__3; +x_37 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +x_38 = l_Lean_MessageData_ofFormat(x_37); +x_39 = lean_array_push(x_31, x_38); +x_40 = lean_box(0); +x_41 = l_Lean_MessageData_formatAux___lambda__3(x_1, x_2, x_19, x_16, x_39, x_40, x_11); +return x_41; +} +} +} +else +{ +uint8_t x_42; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_42 = !lean_is_exclusive(x_9); +if (x_42 == 0) +{ +return x_9; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_9, 0); +x_44 = lean_ctor_get(x_9, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_9); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; } } } @@ -3897,7 +4071,7 @@ x_116 = lean_float_beq(x_114, x_115); if (x_116 == 0) { lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; double x_121; double x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; -x_117 = l_Lean_MessageData_formatAux___lambda__1___closed__1; +x_117 = l_Lean_MessageData_formatAux___lambda__2___closed__1; x_118 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_118, 0, x_117); lean_ctor_set(x_118, 1, x_113); @@ -3918,7 +4092,7 @@ x_126 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_126, 0, x_125); lean_ctor_set(x_126, 1, x_112); x_127 = lean_box(0); -x_128 = l_Lean_MessageData_formatAux___lambda__1(x_1, x_2, x_103, x_104, x_126, x_127, x_4); +x_128 = l_Lean_MessageData_formatAux___lambda__2(x_1, x_2, x_103, x_104, x_126, x_127, x_4); return x_128; } else @@ -3926,7 +4100,7 @@ else lean_object* x_129; lean_object* x_130; lean_dec(x_102); x_129 = lean_box(0); -x_130 = l_Lean_MessageData_formatAux___lambda__1(x_1, x_2, x_103, x_104, x_113, x_129, x_4); +x_130 = l_Lean_MessageData_formatAux___lambda__2(x_1, x_2, x_103, x_104, x_113, x_129, x_4); return x_130; } } @@ -3965,7 +4139,7 @@ x_144 = l_Lean_mkErrorStringWithPos___closed__1; x_145 = lean_string_append(x_143, x_144); x_146 = l_Lean_MessageData_formatAux___closed__9; x_147 = l_Lean_MessageData_formatAux___closed__10; -x_148 = lean_unsigned_to_nat(244u); +x_148 = lean_unsigned_to_nat(258u); x_149 = lean_unsigned_to_nat(8u); x_150 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_146, x_147, x_148, x_149, x_145); lean_dec(x_145); @@ -4516,160 +4690,164 @@ return x_262; } case 9: { -lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; uint8_t x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; double x_275; double x_276; uint8_t x_277; -x_263 = lean_ctor_get(x_3, 0); +lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; uint8_t x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; double x_276; double x_277; uint8_t x_278; +x_263 = lean_ctor_get(x_2, 0); lean_inc(x_263); -x_264 = lean_ctor_get(x_3, 1); +x_264 = lean_ctor_get(x_3, 0); lean_inc(x_264); -x_265 = lean_ctor_get(x_3, 2); +x_265 = lean_ctor_get(x_3, 1); lean_inc(x_265); -lean_dec(x_3); -x_266 = lean_ctor_get(x_263, 0); +x_266 = lean_ctor_get(x_3, 2); lean_inc(x_266); -x_267 = 1; -x_268 = l_Lean_MessageData_ofName___closed__1; -x_269 = l_Lean_Name_toString(x_266, x_267, x_268); -x_270 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_270, 0, x_269); -x_271 = l_Lean_MessageData_formatAux___closed__2; -x_272 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_272, 0, x_271); -lean_ctor_set(x_272, 1, x_270); -x_273 = l_Lean_MessageData_formatAux___closed__4; -x_274 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_274, 0, x_272); -lean_ctor_set(x_274, 1, x_273); -x_275 = lean_ctor_get_float(x_263, sizeof(void*)*2); -x_276 = l_Lean_MessageData_formatAux___closed__5; -x_277 = lean_float_beq(x_275, x_276); -if (x_277 == 0) +lean_dec(x_3); +x_267 = lean_ctor_get(x_264, 0); +lean_inc(x_267); +x_268 = 1; +x_269 = l_Lean_MessageData_ofName___closed__1; +x_270 = l_Lean_Name_toString(x_267, x_268, x_269); +x_271 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_271, 0, x_270); +x_272 = l_Lean_MessageData_formatAux___closed__2; +x_273 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_273, 0, x_272); +lean_ctor_set(x_273, 1, x_271); +x_274 = l_Lean_MessageData_formatAux___closed__4; +x_275 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_275, 0, x_273); +lean_ctor_set(x_275, 1, x_274); +x_276 = lean_ctor_get_float(x_264, sizeof(void*)*2); +x_277 = l_Lean_MessageData_formatAux___closed__5; +x_278 = lean_float_beq(x_276, x_277); +if (x_278 == 0) { -lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; double x_282; double x_283; lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; -x_278 = l_Lean_MessageData_formatAux___lambda__1___closed__1; -x_279 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_279, 0, x_278); -lean_ctor_set(x_279, 1, x_274); -x_280 = l_Lean_MessageData_formatAux___closed__7; -x_281 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_281, 0, x_279); -lean_ctor_set(x_281, 1, x_280); -x_282 = lean_ctor_get_float(x_263, sizeof(void*)*2 + 8); -lean_dec(x_263); -x_283 = lean_float_sub(x_282, x_275); -x_284 = lean_float_to_string(x_283); -x_285 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_285, 0, x_284); -x_286 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_286, 0, x_281); -lean_ctor_set(x_286, 1, x_285); +lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; double x_283; double x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; +x_279 = l_Lean_MessageData_formatAux___lambda__2___closed__1; +x_280 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_280, 0, x_279); +lean_ctor_set(x_280, 1, x_275); +x_281 = l_Lean_MessageData_formatAux___closed__7; +x_282 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_282, 0, x_280); +lean_ctor_set(x_282, 1, x_281); +x_283 = lean_ctor_get_float(x_264, sizeof(void*)*2 + 8); +lean_dec(x_264); +x_284 = lean_float_sub(x_283, x_276); +x_285 = lean_float_to_string(x_284); +x_286 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_286, 0, x_285); x_287 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_287, 0, x_286); -lean_ctor_set(x_287, 1, x_273); -x_288 = lean_box(0); -x_289 = l_Lean_MessageData_formatAux___lambda__2(x_1, x_2, x_264, x_265, x_287, x_288, x_4); -return x_289; +lean_ctor_set(x_287, 0, x_282); +lean_ctor_set(x_287, 1, x_286); +x_288 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_288, 0, x_287); +lean_ctor_set(x_288, 1, x_274); +x_289 = lean_box(0); +x_290 = l_Lean_MessageData_formatAux___lambda__4(x_1, x_2, x_265, x_263, x_266, x_288, x_289, x_4); +lean_dec(x_263); +return x_290; } else { -lean_object* x_290; lean_object* x_291; +lean_object* x_291; lean_object* x_292; +lean_dec(x_264); +x_291 = lean_box(0); +x_292 = l_Lean_MessageData_formatAux___lambda__4(x_1, x_2, x_265, x_263, x_266, x_275, x_291, x_4); lean_dec(x_263); -x_290 = lean_box(0); -x_291 = l_Lean_MessageData_formatAux___lambda__2(x_1, x_2, x_264, x_265, x_274, x_290, x_4); -return x_291; +return x_292; } } case 10: { -lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; -x_292 = lean_ctor_get(x_2, 0); -lean_inc(x_292); -x_293 = lean_ctor_get(x_3, 0); +lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_293 = lean_ctor_get(x_2, 0); lean_inc(x_293); +x_294 = lean_ctor_get(x_3, 0); +lean_inc(x_294); lean_dec(x_3); -x_294 = l_Lean_MessageData_mkPPContext(x_1, x_292); -lean_dec(x_292); -x_295 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_295, 0, x_294); -x_296 = lean_apply_2(x_293, x_295, x_4); -if (lean_obj_tag(x_296) == 0) +x_295 = l_Lean_MessageData_mkPPContext(x_1, x_293); +lean_dec(x_293); +x_296 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_296, 0, x_295); +x_297 = lean_apply_2(x_294, x_296, x_4); +if (lean_obj_tag(x_297) == 0) { -lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; -x_297 = lean_ctor_get(x_296, 0); -lean_inc(x_297); -x_298 = lean_ctor_get(x_296, 1); +lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_298 = lean_ctor_get(x_297, 0); lean_inc(x_298); -lean_dec(x_296); -x_299 = l_Lean_instTypeNameMessageData; -x_300 = l___private_Init_Dynamic_0__Dynamic_get_x3fImpl___rarg(x_297, x_299); -if (lean_obj_tag(x_300) == 0) +x_299 = lean_ctor_get(x_297, 1); +lean_inc(x_299); +lean_dec(x_297); +x_300 = l_Lean_instTypeNameMessageData; +x_301 = l___private_Init_Dynamic_0__Dynamic_get_x3fImpl___rarg(x_298, x_300); +if (lean_obj_tag(x_301) == 0) { -lean_object* x_301; uint8_t x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; +lean_object* x_302; uint8_t x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_dec(x_2); lean_dec(x_1); -x_301 = lean_ctor_get(x_297, 0); -lean_inc(x_301); -lean_dec(x_297); -x_302 = 1; -x_303 = l_Lean_MessageData_ofName___closed__1; -x_304 = l_Lean_Name_toString(x_301, x_302, x_303); -x_305 = l_Lean_MessageData_formatAux___closed__8; -x_306 = lean_string_append(x_305, x_304); -lean_dec(x_304); -x_307 = l_Lean_mkErrorStringWithPos___closed__1; -x_308 = lean_string_append(x_306, x_307); -x_309 = l_Lean_MessageData_formatAux___closed__9; -x_310 = l_Lean_MessageData_formatAux___closed__10; -x_311 = lean_unsigned_to_nat(244u); -x_312 = lean_unsigned_to_nat(8u); -x_313 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_309, x_310, x_311, x_312, x_308); -lean_dec(x_308); -x_314 = l_panic___at_Lean_MessageData_formatAux___spec__2(x_313, x_298); -return x_314; +x_302 = lean_ctor_get(x_298, 0); +lean_inc(x_302); +lean_dec(x_298); +x_303 = 1; +x_304 = l_Lean_MessageData_ofName___closed__1; +x_305 = l_Lean_Name_toString(x_302, x_303, x_304); +x_306 = l_Lean_MessageData_formatAux___closed__8; +x_307 = lean_string_append(x_306, x_305); +lean_dec(x_305); +x_308 = l_Lean_mkErrorStringWithPos___closed__1; +x_309 = lean_string_append(x_307, x_308); +x_310 = l_Lean_MessageData_formatAux___closed__9; +x_311 = l_Lean_MessageData_formatAux___closed__10; +x_312 = lean_unsigned_to_nat(258u); +x_313 = lean_unsigned_to_nat(8u); +x_314 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_310, x_311, x_312, x_313, x_309); +lean_dec(x_309); +x_315 = l_panic___at_Lean_MessageData_formatAux___spec__2(x_314, x_299); +return x_315; } else { -lean_object* x_315; -lean_dec(x_297); -x_315 = lean_ctor_get(x_300, 0); -lean_inc(x_315); -lean_dec(x_300); -x_3 = x_315; -x_4 = x_298; +lean_object* x_316; +lean_dec(x_298); +x_316 = lean_ctor_get(x_301, 0); +lean_inc(x_316); +lean_dec(x_301); +x_3 = x_316; +x_4 = x_299; goto _start; } } else { -uint8_t x_317; +uint8_t x_318; lean_dec(x_2); lean_dec(x_1); -x_317 = !lean_is_exclusive(x_296); -if (x_317 == 0) +x_318 = !lean_is_exclusive(x_297); +if (x_318 == 0) { -return x_296; +return x_297; } else { -lean_object* x_318; lean_object* x_319; lean_object* x_320; -x_318 = lean_ctor_get(x_296, 0); -x_319 = lean_ctor_get(x_296, 1); +lean_object* x_319; lean_object* x_320; lean_object* x_321; +x_319 = lean_ctor_get(x_297, 0); +x_320 = lean_ctor_get(x_297, 1); +lean_inc(x_320); lean_inc(x_319); -lean_inc(x_318); -lean_dec(x_296); -x_320 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_320, 0, x_318); -lean_ctor_set(x_320, 1, x_319); -return x_320; +lean_dec(x_297); +x_321 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_321, 0, x_319); +lean_ctor_set(x_321, 1, x_320); +return x_321; } } } default: { -lean_object* x_321; -x_321 = lean_ctor_get(x_3, 1); -lean_inc(x_321); +lean_object* x_322; +x_322 = lean_ctor_get(x_3, 1); +lean_inc(x_322); lean_dec(x_3); -x_3 = x_321; +x_3 = x_322; goto _start; } } @@ -4718,6 +4896,25 @@ lean_dec(x_6); return x_8; } } +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_MessageData_formatAux___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_MessageData_formatAux___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_MessageData_formatAux___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_4); +return x_9; +} +} static lean_object* _init_l_Lean_MessageData_format___closed__1() { _start: { @@ -5930,7 +6127,7 @@ x_2 = lean_alloc_closure((void*)(l_Lean_instInhabitedBaseMessage___rarg), 1, 0); return x_2; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1() { _start: { lean_object* x_1; @@ -5938,7 +6135,7 @@ x_1 = lean_mk_string_unchecked("fileName", 8, 8); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2() { _start: { lean_object* x_1; @@ -5946,7 +6143,7 @@ x_1 = lean_mk_string_unchecked("pos", 3, 3); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3() { _start: { lean_object* x_1; @@ -5954,7 +6151,7 @@ x_1 = lean_mk_string_unchecked("keepFullRange", 13, 13); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4() { _start: { lean_object* x_1; @@ -5962,7 +6159,7 @@ x_1 = lean_mk_string_unchecked("severity", 8, 8); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5() { _start: { lean_object* x_1; @@ -5970,7 +6167,7 @@ x_1 = lean_mk_string_unchecked("caption", 7, 7); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6() { _start: { lean_object* x_1; @@ -5978,7 +6175,7 @@ x_1 = lean_mk_string_unchecked("data", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7() { _start: { lean_object* x_1; @@ -5986,11 +6183,11 @@ x_1 = lean_mk_string_unchecked("endPos", 6, 6); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_1 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_2 = lean_box(0); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -5998,19 +6195,19 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; @@ -6029,7 +6226,7 @@ lean_inc(x_9); lean_dec(x_2); x_10 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_10, 0, x_3); -x_11 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_11 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_10); @@ -6038,7 +6235,7 @@ x_14 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); x_15 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_4); -x_16 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_16 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; x_17 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); @@ -6047,7 +6244,7 @@ lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_13); x_19 = lean_alloc_ctor(1, 0, 1); lean_ctor_set_uint8(x_19, 0, x_6); -x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -6055,7 +6252,7 @@ x_22 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_22, 0, x_21); lean_ctor_set(x_22, 1, x_13); x_23 = l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125_(x_7); -x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_23); @@ -6064,7 +6261,7 @@ lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_13); x_27 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_27, 0, x_8); -x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; x_29 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); @@ -6072,7 +6269,7 @@ x_30 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_30, 0, x_29); lean_ctor_set(x_30, 1, x_13); x_31 = lean_apply_1(x_1, x_9); -x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_33 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -6094,7 +6291,7 @@ lean_ctor_set(x_38, 1, x_37); if (lean_obj_tag(x_5) == 0) { lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_39 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9; +x_39 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9; x_40 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_40, 0, x_39); lean_ctor_set(x_40, 1, x_38); @@ -6116,7 +6313,7 @@ x_46 = lean_ctor_get(x_5, 0); lean_inc(x_46); lean_dec(x_5); x_47 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_46); -x_48 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_48 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_49 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_49, 0, x_48); lean_ctor_set(x_49, 1, x_47); @@ -6139,11 +6336,11 @@ return x_56; } } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930_(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg), 2, 0); +x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg), 2, 0); return x_2; } } @@ -6151,7 +6348,7 @@ LEAN_EXPORT lean_object* l_Lean_instToJsonBaseMessage___rarg(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg), 2, 1); +x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -6164,7 +6361,7 @@ x_2 = lean_alloc_closure((void*)(l_Lean_instToJsonBaseMessage___rarg), 1, 0); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; @@ -6173,7 +6370,7 @@ x_4 = l_Lean_Json_getStr_x3f(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; @@ -6182,7 +6379,7 @@ x_4 = l___private_Lean_Data_Position_0__Lean_fromJsonPosition____x40_Lean_Data_P return x_4; } } -static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1() { +static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -6192,7 +6389,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; @@ -6201,7 +6398,7 @@ switch (lean_obj_tag(x_3)) { case 0: { lean_object* x_4; -x_4 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1; +x_4 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1; return x_4; } case 1: @@ -6362,7 +6559,7 @@ return x_31; } } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; @@ -6372,7 +6569,7 @@ lean_dec(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; @@ -6381,7 +6578,7 @@ x_4 = l___private_Lean_Message_0__Lean_fromJsonMessageSeverity____x40_Lean_Messa return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1() { _start: { lean_object* x_1; @@ -6389,28 +6586,28 @@ x_1 = lean_mk_string_unchecked("BaseMessage", 11, 11); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__1; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4() { _start: { lean_object* x_1; @@ -6418,310 +6615,310 @@ x_1 = lean_mk_string_unchecked(".", 1, 1); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32; +x_1 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; -x_3 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_3 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; lean_inc(x_2); -x_4 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_2, x_3); +x_4 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_2, x_3); if (lean_obj_tag(x_4) == 0) { uint8_t x_5; @@ -6732,7 +6929,7 @@ if (x_5 == 0) { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = lean_ctor_get(x_4, 0); -x_7 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9; +x_7 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9; x_8 = lean_string_append(x_7, x_6); lean_dec(x_6); lean_ctor_set(x_4, 0, x_8); @@ -6744,7 +6941,7 @@ lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_9 = lean_ctor_get(x_4, 0); lean_inc(x_9); lean_dec(x_4); -x_10 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9; +x_10 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9; x_11 = lean_string_append(x_10, x_9); lean_dec(x_9); x_12 = lean_alloc_ctor(0, 1, 0); @@ -6758,9 +6955,9 @@ lean_object* x_13; lean_object* x_14; lean_object* x_15; x_13 = lean_ctor_get(x_4, 0); lean_inc(x_13); lean_dec(x_4); -x_14 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_14 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; lean_inc(x_2); -x_15 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2(x_2, x_14); +x_15 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2(x_2, x_14); if (lean_obj_tag(x_15) == 0) { uint8_t x_16; @@ -6772,7 +6969,7 @@ if (x_16 == 0) { lean_object* x_17; lean_object* x_18; lean_object* x_19; x_17 = lean_ctor_get(x_15, 0); -x_18 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13; +x_18 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13; x_19 = lean_string_append(x_18, x_17); lean_dec(x_17); lean_ctor_set(x_15, 0, x_19); @@ -6784,7 +6981,7 @@ lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_20 = lean_ctor_get(x_15, 0); lean_inc(x_20); lean_dec(x_15); -x_21 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13; +x_21 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13; x_22 = lean_string_append(x_21, x_20); lean_dec(x_20); x_23 = lean_alloc_ctor(0, 1, 0); @@ -6798,9 +6995,9 @@ lean_object* x_24; lean_object* x_25; lean_object* x_26; x_24 = lean_ctor_get(x_15, 0); lean_inc(x_24); lean_dec(x_15); -x_25 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_25 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; lean_inc(x_2); -x_26 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3(x_2, x_25); +x_26 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3(x_2, x_25); if (lean_obj_tag(x_26) == 0) { uint8_t x_27; @@ -6813,7 +7010,7 @@ if (x_27 == 0) { lean_object* x_28; lean_object* x_29; lean_object* x_30; x_28 = lean_ctor_get(x_26, 0); -x_29 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17; +x_29 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17; x_30 = lean_string_append(x_29, x_28); lean_dec(x_28); lean_ctor_set(x_26, 0, x_30); @@ -6825,7 +7022,7 @@ lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; x_31 = lean_ctor_get(x_26, 0); lean_inc(x_31); lean_dec(x_26); -x_32 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17; +x_32 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17; x_33 = lean_string_append(x_32, x_31); lean_dec(x_31); x_34 = lean_alloc_ctor(0, 1, 0); @@ -6839,9 +7036,9 @@ lean_object* x_35; lean_object* x_36; lean_object* x_37; x_35 = lean_ctor_get(x_26, 0); lean_inc(x_35); lean_dec(x_26); -x_36 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_36 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; lean_inc(x_2); -x_37 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_2, x_36); +x_37 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_2, x_36); if (lean_obj_tag(x_37) == 0) { uint8_t x_38; @@ -6855,7 +7052,7 @@ if (x_38 == 0) { lean_object* x_39; lean_object* x_40; lean_object* x_41; x_39 = lean_ctor_get(x_37, 0); -x_40 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21; +x_40 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21; x_41 = lean_string_append(x_40, x_39); lean_dec(x_39); lean_ctor_set(x_37, 0, x_41); @@ -6867,7 +7064,7 @@ lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; x_42 = lean_ctor_get(x_37, 0); lean_inc(x_42); lean_dec(x_37); -x_43 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21; +x_43 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21; x_44 = lean_string_append(x_43, x_42); lean_dec(x_42); x_45 = lean_alloc_ctor(0, 1, 0); @@ -6881,9 +7078,9 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; x_46 = lean_ctor_get(x_37, 0); lean_inc(x_46); lean_dec(x_37); -x_47 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_47 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; lean_inc(x_2); -x_48 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5(x_2, x_47); +x_48 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5(x_2, x_47); if (lean_obj_tag(x_48) == 0) { uint8_t x_49; @@ -6898,7 +7095,7 @@ if (x_49 == 0) { lean_object* x_50; lean_object* x_51; lean_object* x_52; x_50 = lean_ctor_get(x_48, 0); -x_51 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25; +x_51 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25; x_52 = lean_string_append(x_51, x_50); lean_dec(x_50); lean_ctor_set(x_48, 0, x_52); @@ -6910,7 +7107,7 @@ lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; x_53 = lean_ctor_get(x_48, 0); lean_inc(x_53); lean_dec(x_48); -x_54 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25; +x_54 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25; x_55 = lean_string_append(x_54, x_53); lean_dec(x_53); x_56 = lean_alloc_ctor(0, 1, 0); @@ -6924,9 +7121,9 @@ lean_object* x_57; lean_object* x_58; lean_object* x_59; x_57 = lean_ctor_get(x_48, 0); lean_inc(x_57); lean_dec(x_48); -x_58 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_58 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; lean_inc(x_2); -x_59 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_2, x_58); +x_59 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_2, x_58); if (lean_obj_tag(x_59) == 0) { uint8_t x_60; @@ -6942,7 +7139,7 @@ if (x_60 == 0) { lean_object* x_61; lean_object* x_62; lean_object* x_63; x_61 = lean_ctor_get(x_59, 0); -x_62 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29; +x_62 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29; x_63 = lean_string_append(x_62, x_61); lean_dec(x_61); lean_ctor_set(x_59, 0, x_63); @@ -6954,7 +7151,7 @@ lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; x_64 = lean_ctor_get(x_59, 0); lean_inc(x_64); lean_dec(x_59); -x_65 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29; +x_65 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29; x_66 = lean_string_append(x_65, x_64); lean_dec(x_64); x_67 = lean_alloc_ctor(0, 1, 0); @@ -6968,7 +7165,7 @@ lean_object* x_68; lean_object* x_69; lean_object* x_70; x_68 = lean_ctor_get(x_59, 0); lean_inc(x_68); lean_dec(x_59); -x_69 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_69 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_70 = l_Lean_Json_getObjValAs_x3f(x_2, lean_box(0), x_1, x_69); if (lean_obj_tag(x_70) == 0) { @@ -6984,7 +7181,7 @@ if (x_71 == 0) { lean_object* x_72; lean_object* x_73; lean_object* x_74; x_72 = lean_ctor_get(x_70, 0); -x_73 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33; +x_73 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33; x_74 = lean_string_append(x_73, x_72); lean_dec(x_72); lean_ctor_set(x_70, 0, x_74); @@ -6996,7 +7193,7 @@ lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; x_75 = lean_ctor_get(x_70, 0); lean_inc(x_75); lean_dec(x_70); -x_76 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33; +x_76 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33; x_77 = lean_string_append(x_76, x_75); lean_dec(x_75); x_78 = lean_alloc_ctor(0, 1, 0); @@ -7058,55 +7255,55 @@ return x_88; } } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070_(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg), 2, 0); +x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg), 2, 0); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5(x_1, x_2); lean_dec(x_2); return x_3; } @@ -7115,7 +7312,7 @@ LEAN_EXPORT lean_object* l_Lean_instFromJsonBaseMessage___rarg(lean_object* x_1) _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg), 2, 1); +x_2 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg), 2, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -7128,7 +7325,7 @@ x_2 = lean_alloc_closure((void*)(l_Lean_instFromJsonBaseMessage___rarg), 1, 0); return x_2; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1() { +static lean_object* _init_l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1() { _start: { lean_object* x_1; @@ -7136,7 +7333,7 @@ x_1 = lean_mk_string_unchecked("kind", 4, 4); return x_1; } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; @@ -7157,7 +7354,7 @@ lean_inc(x_9); lean_dec(x_2); x_10 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_10, 0, x_3); -x_11 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_11 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_11); lean_ctor_set(x_12, 1, x_10); @@ -7166,7 +7363,7 @@ x_14 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_14, 0, x_12); lean_ctor_set(x_14, 1, x_13); x_15 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_4); -x_16 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_16 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; x_17 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); @@ -7175,7 +7372,7 @@ lean_ctor_set(x_18, 0, x_17); lean_ctor_set(x_18, 1, x_13); x_19 = lean_alloc_ctor(1, 0, 1); lean_ctor_set_uint8(x_19, 0, x_6); -x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -7183,7 +7380,7 @@ x_22 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_22, 0, x_21); lean_ctor_set(x_22, 1, x_13); x_23 = l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125_(x_7); -x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_23); @@ -7192,7 +7389,7 @@ lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_13); x_27 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_27, 0, x_8); -x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; x_29 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); @@ -7201,7 +7398,7 @@ lean_ctor_set(x_30, 0, x_29); lean_ctor_set(x_30, 1, x_13); x_31 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_31, 0, x_9); -x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_33 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -7216,7 +7413,7 @@ x_37 = l_Lean_MessageData_ofName___closed__1; x_38 = l_Lean_Name_toString(x_35, x_36, x_37); x_39 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_39, 0, x_38); -x_40 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; +x_40 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; x_41 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_41, 0, x_40); lean_ctor_set(x_41, 1, x_39); @@ -7241,7 +7438,7 @@ lean_ctor_set(x_47, 1, x_46); if (lean_obj_tag(x_5) == 0) { lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_48 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9; +x_48 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9; x_49 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_49, 0, x_48); lean_ctor_set(x_49, 1, x_47); @@ -7263,7 +7460,7 @@ x_55 = lean_ctor_get(x_5, 0); lean_inc(x_55); lean_dec(x_5); x_56 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_55); -x_57 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_57 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_58 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_58, 0, x_57); lean_ctor_set(x_58, 1, x_56); @@ -7290,7 +7487,7 @@ static lean_object* _init_l_Lean_instToJsonSerialMessage___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221_), 1, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414_), 1, 0); return x_1; } } @@ -7302,7 +7499,7 @@ x_1 = l_Lean_instToJsonSerialMessage___closed__1; return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; @@ -7311,7 +7508,7 @@ lean_ctor_set(x_3, 0, x_1); return x_3; } } -static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1() { +static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1() { _start: { lean_object* x_1; @@ -7319,7 +7516,7 @@ x_1 = lean_mk_string_unchecked("[anonymous]", 11, 11); return x_1; } } -static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2() { +static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2() { _start: { lean_object* x_1; @@ -7327,7 +7524,7 @@ x_1 = lean_mk_string_unchecked("expected a `Name`, got '", 24, 24); return x_1; } } -static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3() { +static lean_object* _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3() { _start: { lean_object* x_1; lean_object* x_2; @@ -7337,7 +7534,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; @@ -7372,7 +7569,7 @@ if (x_8 == 0) { lean_object* x_9; lean_object* x_10; uint8_t x_11; x_9 = lean_ctor_get(x_4, 0); -x_10 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1; +x_10 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1; x_11 = lean_string_dec_eq(x_9, x_10); if (x_11 == 0) { @@ -7391,7 +7588,7 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean lean_dec(x_12); x_14 = lean_unsigned_to_nat(80u); x_15 = l_Lean_Json_pretty(x_3, x_14); -x_16 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2; +x_16 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2; x_17 = lean_string_append(x_16, x_15); lean_dec(x_15); x_18 = l_List_mapTR_loop___at_Lean_MessageData_orList___spec__1___closed__1; @@ -7407,7 +7604,7 @@ lean_object* x_20; lean_free_object(x_4); lean_dec(x_9); lean_dec(x_3); -x_20 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3; +x_20 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3; return x_20; } } @@ -7417,7 +7614,7 @@ lean_object* x_21; lean_object* x_22; uint8_t x_23; x_21 = lean_ctor_get(x_4, 0); lean_inc(x_21); lean_dec(x_4); -x_22 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1; +x_22 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1; x_23 = lean_string_dec_eq(x_21, x_22); if (x_23 == 0) { @@ -7438,7 +7635,7 @@ lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean lean_dec(x_24); x_27 = lean_unsigned_to_nat(80u); x_28 = l_Lean_Json_pretty(x_3, x_27); -x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2; +x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2; x_30 = lean_string_append(x_29, x_28); lean_dec(x_28); x_31 = l_List_mapTR_loop___at_Lean_MessageData_orList___spec__1___closed__1; @@ -7453,14 +7650,14 @@ else lean_object* x_34; lean_dec(x_21); lean_dec(x_3); -x_34 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3; +x_34 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3; return x_34; } } } } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1() { _start: { lean_object* x_1; @@ -7468,225 +7665,225 @@ x_1 = lean_mk_string_unchecked("SerialMessage", 13, 13); return x_1; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_instImpl____x40_Lean_Message___hyg_606____closed__1; -x_2 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1; +x_2 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; +x_2 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20() { _start: { lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19; x_2 = 1; x_3 = l_Lean_MessageData_ofName___closed__1; x_4 = l_Lean_Name_toString(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4; -x_2 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4; +x_2 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22() { +static lean_object* _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21; +x_1 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21; x_2 = l_Lean_mkErrorStringWithPos___closed__3; x_3 = lean_string_append(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_2 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -7696,7 +7893,7 @@ if (x_4 == 0) { lean_object* x_5; lean_object* x_6; lean_object* x_7; x_5 = lean_ctor_get(x_3, 0); -x_6 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6; +x_6 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6; x_7 = lean_string_append(x_6, x_5); lean_dec(x_5); lean_ctor_set(x_3, 0, x_7); @@ -7708,7 +7905,7 @@ lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_8 = lean_ctor_get(x_3, 0); lean_inc(x_8); lean_dec(x_3); -x_9 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6; +x_9 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6; x_10 = lean_string_append(x_9, x_8); lean_dec(x_8); x_11 = lean_alloc_ctor(0, 1, 0); @@ -7722,9 +7919,9 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; x_12 = lean_ctor_get(x_3, 0); lean_inc(x_12); lean_dec(x_3); -x_13 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_13 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; lean_inc(x_1); -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__2(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__2(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; @@ -7735,7 +7932,7 @@ if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; x_16 = lean_ctor_get(x_14, 0); -x_17 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8; +x_17 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8; x_18 = lean_string_append(x_17, x_16); lean_dec(x_16); lean_ctor_set(x_14, 0, x_18); @@ -7747,7 +7944,7 @@ lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; x_19 = lean_ctor_get(x_14, 0); lean_inc(x_19); lean_dec(x_14); -x_20 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8; +x_20 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8; x_21 = lean_string_append(x_20, x_19); lean_dec(x_19); x_22 = lean_alloc_ctor(0, 1, 0); @@ -7761,9 +7958,9 @@ lean_object* x_23; lean_object* x_24; lean_object* x_25; x_23 = lean_ctor_get(x_14, 0); lean_inc(x_23); lean_dec(x_14); -x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; lean_inc(x_1); -x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3(x_1, x_24); +x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3(x_1, x_24); if (lean_obj_tag(x_25) == 0) { uint8_t x_26; @@ -7775,7 +7972,7 @@ if (x_26 == 0) { lean_object* x_27; lean_object* x_28; lean_object* x_29; x_27 = lean_ctor_get(x_25, 0); -x_28 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10; +x_28 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10; x_29 = lean_string_append(x_28, x_27); lean_dec(x_27); lean_ctor_set(x_25, 0, x_29); @@ -7787,7 +7984,7 @@ lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; x_30 = lean_ctor_get(x_25, 0); lean_inc(x_30); lean_dec(x_25); -x_31 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10; +x_31 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10; x_32 = lean_string_append(x_31, x_30); lean_dec(x_30); x_33 = lean_alloc_ctor(0, 1, 0); @@ -7801,9 +7998,9 @@ lean_object* x_34; lean_object* x_35; lean_object* x_36; x_34 = lean_ctor_get(x_25, 0); lean_inc(x_34); lean_dec(x_25); -x_35 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_35 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; lean_inc(x_1); -x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_35); +x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_35); if (lean_obj_tag(x_36) == 0) { uint8_t x_37; @@ -7816,7 +8013,7 @@ if (x_37 == 0) { lean_object* x_38; lean_object* x_39; lean_object* x_40; x_38 = lean_ctor_get(x_36, 0); -x_39 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12; +x_39 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12; x_40 = lean_string_append(x_39, x_38); lean_dec(x_38); lean_ctor_set(x_36, 0, x_40); @@ -7828,7 +8025,7 @@ lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; x_41 = lean_ctor_get(x_36, 0); lean_inc(x_41); lean_dec(x_36); -x_42 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12; +x_42 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12; x_43 = lean_string_append(x_42, x_41); lean_dec(x_41); x_44 = lean_alloc_ctor(0, 1, 0); @@ -7842,9 +8039,9 @@ lean_object* x_45; lean_object* x_46; lean_object* x_47; x_45 = lean_ctor_get(x_36, 0); lean_inc(x_45); lean_dec(x_36); -x_46 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_46 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; lean_inc(x_1); -x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__5(x_1, x_46); +x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__5(x_1, x_46); if (lean_obj_tag(x_47) == 0) { uint8_t x_48; @@ -7858,7 +8055,7 @@ if (x_48 == 0) { lean_object* x_49; lean_object* x_50; lean_object* x_51; x_49 = lean_ctor_get(x_47, 0); -x_50 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14; +x_50 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14; x_51 = lean_string_append(x_50, x_49); lean_dec(x_49); lean_ctor_set(x_47, 0, x_51); @@ -7870,7 +8067,7 @@ lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_52 = lean_ctor_get(x_47, 0); lean_inc(x_52); lean_dec(x_47); -x_53 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14; +x_53 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14; x_54 = lean_string_append(x_53, x_52); lean_dec(x_52); x_55 = lean_alloc_ctor(0, 1, 0); @@ -7884,9 +8081,9 @@ lean_object* x_56; lean_object* x_57; lean_object* x_58; x_56 = lean_ctor_get(x_47, 0); lean_inc(x_56); lean_dec(x_47); -x_57 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_57 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; lean_inc(x_1); -x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_57); +x_58 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_57); if (lean_obj_tag(x_58) == 0) { uint8_t x_59; @@ -7901,7 +8098,7 @@ if (x_59 == 0) { lean_object* x_60; lean_object* x_61; lean_object* x_62; x_60 = lean_ctor_get(x_58, 0); -x_61 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16; +x_61 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16; x_62 = lean_string_append(x_61, x_60); lean_dec(x_60); lean_ctor_set(x_58, 0, x_62); @@ -7913,7 +8110,7 @@ lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; x_63 = lean_ctor_get(x_58, 0); lean_inc(x_63); lean_dec(x_58); -x_64 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16; +x_64 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16; x_65 = lean_string_append(x_64, x_63); lean_dec(x_63); x_66 = lean_alloc_ctor(0, 1, 0); @@ -7927,9 +8124,9 @@ lean_object* x_67; lean_object* x_68; lean_object* x_69; x_67 = lean_ctor_get(x_58, 0); lean_inc(x_67); lean_dec(x_58); -x_68 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_68 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; lean_inc(x_1); -x_69 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_68); +x_69 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_68); if (lean_obj_tag(x_69) == 0) { uint8_t x_70; @@ -7945,7 +8142,7 @@ if (x_70 == 0) { lean_object* x_71; lean_object* x_72; lean_object* x_73; x_71 = lean_ctor_get(x_69, 0); -x_72 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18; +x_72 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18; x_73 = lean_string_append(x_72, x_71); lean_dec(x_71); lean_ctor_set(x_69, 0, x_73); @@ -7957,7 +8154,7 @@ lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; x_74 = lean_ctor_get(x_69, 0); lean_inc(x_74); lean_dec(x_69); -x_75 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18; +x_75 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18; x_76 = lean_string_append(x_75, x_74); lean_dec(x_74); x_77 = lean_alloc_ctor(0, 1, 0); @@ -7971,8 +8168,8 @@ lean_object* x_78; lean_object* x_79; lean_object* x_80; x_78 = lean_ctor_get(x_69, 0); lean_inc(x_78); lean_dec(x_69); -x_79 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; -x_80 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1(x_1, x_79); +x_79 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; +x_80 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1(x_1, x_79); if (lean_obj_tag(x_80) == 0) { uint8_t x_81; @@ -7988,7 +8185,7 @@ if (x_81 == 0) { lean_object* x_82; lean_object* x_83; lean_object* x_84; x_82 = lean_ctor_get(x_80, 0); -x_83 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22; +x_83 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22; x_84 = lean_string_append(x_83, x_82); lean_dec(x_82); lean_ctor_set(x_80, 0, x_84); @@ -8000,7 +8197,7 @@ lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; x_85 = lean_ctor_get(x_80, 0); lean_inc(x_85); lean_dec(x_80); -x_86 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22; +x_86 = l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22; x_87 = lean_string_append(x_86, x_85); lean_dec(x_85); x_88 = lean_alloc_ctor(0, 1, 0); @@ -8069,20 +8266,20 @@ return x_100; } } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___lambda__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___lambda__1(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1(x_1, x_2); lean_dec(x_2); return x_3; } @@ -8091,7 +8288,7 @@ static lean_object* _init_l_Lean_instFromJsonSerialMessage___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357_), 1, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550_), 1, 0); return x_1; } } @@ -8187,7 +8384,7 @@ x_10 = lean_uint32_dec_eq(x_8, x_9); if (x_10 == 0) { lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_11 = l_Lean_MessageData_formatAux___lambda__1___closed__5; +x_11 = l_Lean_MessageData_formatAux___lambda__1___closed__1; x_12 = lean_string_append(x_1, x_11); x_13 = lean_box(0); x_14 = lean_apply_2(x_3, x_12, x_13); @@ -8205,7 +8402,7 @@ else { lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_dec(x_4); -x_17 = l_Lean_MessageData_formatAux___lambda__1___closed__5; +x_17 = l_Lean_MessageData_formatAux___lambda__1___closed__1; x_18 = lean_string_append(x_1, x_17); x_19 = lean_box(0); x_20 = lean_apply_2(x_3, x_18, x_19); @@ -8787,7 +8984,7 @@ x_13 = l_Lean_MessageData_kind(x_9); lean_dec(x_9); x_14 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_14, 0, x_3); -x_15 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_15 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; x_16 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_16, 0, x_15); lean_ctor_set(x_16, 1, x_14); @@ -8796,7 +8993,7 @@ x_18 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); x_19 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_4); -x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_20 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_20); lean_ctor_set(x_21, 1, x_19); @@ -8805,7 +9002,7 @@ lean_ctor_set(x_22, 0, x_21); lean_ctor_set(x_22, 1, x_17); x_23 = lean_alloc_ctor(1, 0, 1); lean_ctor_set_uint8(x_23, 0, x_6); -x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_24 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_23); @@ -8813,7 +9010,7 @@ x_26 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_17); x_27 = l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125_(x_7); -x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_28 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; x_29 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_29, 0, x_28); lean_ctor_set(x_29, 1, x_27); @@ -8822,7 +9019,7 @@ lean_ctor_set(x_30, 0, x_29); lean_ctor_set(x_30, 1, x_17); x_31 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_31, 0, x_8); -x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_32 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; x_33 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -8831,7 +9028,7 @@ lean_ctor_set(x_34, 0, x_33); lean_ctor_set(x_34, 1, x_17); x_35 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_35, 0, x_12); -x_36 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_36 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_37 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_37, 0, x_36); lean_ctor_set(x_37, 1, x_35); @@ -8843,7 +9040,7 @@ x_40 = l_Lean_MessageData_ofName___closed__1; x_41 = l_Lean_Name_toString(x_13, x_39, x_40); x_42 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_42, 0, x_41); -x_43 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; +x_43 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; x_44 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_44, 0, x_43); lean_ctor_set(x_44, 1, x_42); @@ -8868,7 +9065,7 @@ lean_ctor_set(x_50, 1, x_49); if (lean_obj_tag(x_5) == 0) { lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_51 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9; +x_51 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9; x_52 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_52, 0, x_51); lean_ctor_set(x_52, 1, x_50); @@ -8891,7 +9088,7 @@ x_58 = lean_ctor_get(x_5, 0); lean_inc(x_58); lean_dec(x_5); x_59 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_58); -x_60 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_60 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_61 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_61, 0, x_60); lean_ctor_set(x_61, 1, x_59); @@ -8926,7 +9123,7 @@ x_71 = l_Lean_MessageData_kind(x_9); lean_dec(x_9); x_72 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_72, 0, x_3); -x_73 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1; +x_73 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1; x_74 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_74, 0, x_73); lean_ctor_set(x_74, 1, x_72); @@ -8935,7 +9132,7 @@ x_76 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_76, 0, x_74); lean_ctor_set(x_76, 1, x_75); x_77 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_4); -x_78 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2; +x_78 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2; x_79 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_79, 0, x_78); lean_ctor_set(x_79, 1, x_77); @@ -8944,7 +9141,7 @@ lean_ctor_set(x_80, 0, x_79); lean_ctor_set(x_80, 1, x_75); x_81 = lean_alloc_ctor(1, 0, 1); lean_ctor_set_uint8(x_81, 0, x_6); -x_82 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3; +x_82 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3; x_83 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_83, 0, x_82); lean_ctor_set(x_83, 1, x_81); @@ -8952,7 +9149,7 @@ x_84 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_84, 0, x_83); lean_ctor_set(x_84, 1, x_75); x_85 = l___private_Lean_Message_0__Lean_toJsonMessageSeverity____x40_Lean_Message___hyg_125_(x_7); -x_86 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4; +x_86 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4; x_87 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_87, 0, x_86); lean_ctor_set(x_87, 1, x_85); @@ -8961,7 +9158,7 @@ lean_ctor_set(x_88, 0, x_87); lean_ctor_set(x_88, 1, x_75); x_89 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_89, 0, x_8); -x_90 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5; +x_90 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5; x_91 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_91, 0, x_90); lean_ctor_set(x_91, 1, x_89); @@ -8970,7 +9167,7 @@ lean_ctor_set(x_92, 0, x_91); lean_ctor_set(x_92, 1, x_75); x_93 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_93, 0, x_69); -x_94 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6; +x_94 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6; x_95 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_95, 0, x_94); lean_ctor_set(x_95, 1, x_93); @@ -8982,7 +9179,7 @@ x_98 = l_Lean_MessageData_ofName___closed__1; x_99 = l_Lean_Name_toString(x_71, x_97, x_98); x_100 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_100, 0, x_99); -x_101 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1; +x_101 = l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1; x_102 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_102, 0, x_101); lean_ctor_set(x_102, 1, x_100); @@ -9007,7 +9204,7 @@ lean_ctor_set(x_108, 1, x_107); if (lean_obj_tag(x_5) == 0) { lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; -x_109 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9; +x_109 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9; x_110 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_110, 0, x_109); lean_ctor_set(x_110, 1, x_108); @@ -9032,7 +9229,7 @@ x_117 = lean_ctor_get(x_5, 0); lean_inc(x_117); lean_dec(x_5); x_118 = l___private_Lean_Data_Position_0__Lean_toJsonPosition____x40_Lean_Data_Position___hyg_237_(x_117); -x_119 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7; +x_119 = l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7; x_120 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_120, 0, x_119); lean_ctor_set(x_120, 1, x_118); @@ -12962,20 +13159,41 @@ l_Lean_MessageData_hasSyntheticSorry_visit___closed__2 = _init_l_Lean_MessageDat lean_mark_persistent(l_Lean_MessageData_hasSyntheticSorry_visit___closed__2); l_Lean_MessageData_hasSyntheticSorry_visit___closed__3 = _init_l_Lean_MessageData_hasSyntheticSorry_visit___closed__3(); lean_mark_persistent(l_Lean_MessageData_hasSyntheticSorry_visit___closed__3); +l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1 = _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1(); +lean_mark_persistent(l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__1); +l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2 = _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2(); +lean_mark_persistent(l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__2); +l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3 = _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3(); +lean_mark_persistent(l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__3); +l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4 = _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4(); +lean_mark_persistent(l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__4); +l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5 = _init_l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5(); +lean_mark_persistent(l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438____closed__5); +res = l_Lean_MessageData_initFn____x40_Lean_Message___hyg_1438_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +l_Lean_MessageData_maxTraceChildren = lean_io_result_get_value(res); +lean_mark_persistent(l_Lean_MessageData_maxTraceChildren); +lean_dec_ref(res); l_panic___at_Lean_MessageData_formatAux___spec__2___closed__1 = _init_l_panic___at_Lean_MessageData_formatAux___spec__2___closed__1(); lean_mark_persistent(l_panic___at_Lean_MessageData_formatAux___spec__2___closed__1); l_Lean_MessageData_formatAux___lambda__1___closed__1 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__1(); lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__1); l_Lean_MessageData_formatAux___lambda__1___closed__2 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__2(); lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__2); -l_Lean_MessageData_formatAux___lambda__1___closed__3 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__3(); -lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__3); -l_Lean_MessageData_formatAux___lambda__1___closed__4 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__4(); -lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__4); -l_Lean_MessageData_formatAux___lambda__1___closed__5 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__5(); -lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__5); -l_Lean_MessageData_formatAux___lambda__1___closed__6 = _init_l_Lean_MessageData_formatAux___lambda__1___closed__6(); -lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__1___closed__6); +l_Lean_MessageData_formatAux___lambda__2___closed__1 = _init_l_Lean_MessageData_formatAux___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__2___closed__1); +l_Lean_MessageData_formatAux___lambda__2___closed__2 = _init_l_Lean_MessageData_formatAux___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__2___closed__2); +l_Lean_MessageData_formatAux___lambda__2___closed__3 = _init_l_Lean_MessageData_formatAux___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__2___closed__3); +l_Lean_MessageData_formatAux___lambda__2___closed__4 = _init_l_Lean_MessageData_formatAux___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__2___closed__4); +l_Lean_MessageData_formatAux___lambda__4___closed__1 = _init_l_Lean_MessageData_formatAux___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__4___closed__1); +l_Lean_MessageData_formatAux___lambda__4___closed__2 = _init_l_Lean_MessageData_formatAux___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__4___closed__2); +l_Lean_MessageData_formatAux___lambda__4___closed__3 = _init_l_Lean_MessageData_formatAux___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_MessageData_formatAux___lambda__4___closed__3); l_Lean_MessageData_formatAux___closed__1 = _init_l_Lean_MessageData_formatAux___closed__1(); lean_mark_persistent(l_Lean_MessageData_formatAux___closed__1); l_Lean_MessageData_formatAux___closed__2 = _init_l_Lean_MessageData_formatAux___closed__2(); @@ -13093,148 +13311,148 @@ l_Lean_MessageData_instCoeList = _init_l_Lean_MessageData_instCoeList(); lean_mark_persistent(l_Lean_MessageData_instCoeList); l_Lean_instInhabitedBaseMessage___rarg___closed__1 = _init_l_Lean_instInhabitedBaseMessage___rarg___closed__1(); lean_mark_persistent(l_Lean_instInhabitedBaseMessage___rarg___closed__1); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__1); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__2); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__3); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__4); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__5); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__6); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__7); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__8); -l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2737____rarg___closed__9); -l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1(); -lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__3___closed__1); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__1); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__2); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__3); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__4); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__5); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__6); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__7); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__8); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__9); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__10); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__11); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__12); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__13); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__14); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__15); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__16); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__17); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__18); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__19); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__20); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__21); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__22); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__23); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__24); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__25); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__26); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__27); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__28); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__29); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__30); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__31); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__32); -l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____rarg___closed__33); -l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1 = _init_l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3221____closed__1); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__1); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__2); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__3); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__4); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__5); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__6); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__7); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__8); +l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9 = _init_l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonBaseMessage____x40_Lean_Message___hyg_2930____rarg___closed__9); +l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1(); +lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__3___closed__1); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__1); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__2); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__3); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__4); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__5); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__6); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__7); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__8); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__9); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__10); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__11); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__12); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__13); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__14); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__15); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__16); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__17); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__18); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__19); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__20); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__21); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__22); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__23); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__24); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__25); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__26); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__27); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__28); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__29); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__30); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__31); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__32); +l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33 = _init_l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____rarg___closed__33); +l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1 = _init_l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_toJsonSerialMessage____x40_Lean_Message___hyg_3414____closed__1); l_Lean_instToJsonSerialMessage___closed__1 = _init_l_Lean_instToJsonSerialMessage___closed__1(); lean_mark_persistent(l_Lean_instToJsonSerialMessage___closed__1); l_Lean_instToJsonSerialMessage = _init_l_Lean_instToJsonSerialMessage(); lean_mark_persistent(l_Lean_instToJsonSerialMessage); -l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1(); -lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__1); -l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2(); -lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__2); -l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3(); -lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____spec__1___closed__3); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__1); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__2); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__3); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__4); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__5); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__6); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__7); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__8); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__9); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__10); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__11); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__12); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__13); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__14); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__15); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__16); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__17); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__18); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__19); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__20); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__21); -l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22(); -lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3357____closed__22); +l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1(); +lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__1); +l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2(); +lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__2); +l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3 = _init_l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3(); +lean_mark_persistent(l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____spec__1___closed__3); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__1); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__2); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__3); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__4); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__5); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__6); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__7); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__8); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__9); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__10); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__11); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__12); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__13); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__14); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__15); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__16); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__17); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__18); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__19); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__20); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__21); +l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22 = _init_l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22(); +lean_mark_persistent(l___private_Lean_Message_0__Lean_fromJsonSerialMessage____x40_Lean_Message___hyg_3550____closed__22); l_Lean_instFromJsonSerialMessage___closed__1 = _init_l_Lean_instFromJsonSerialMessage___closed__1(); lean_mark_persistent(l_Lean_instFromJsonSerialMessage___closed__1); l_Lean_instFromJsonSerialMessage = _init_l_Lean_instFromJsonSerialMessage(); diff --git a/stage0/stdlib/Lean/Meta/ArgsPacker.c b/stage0/stdlib/Lean/Meta/ArgsPacker.c index c252705509..0597e1206e 100644 --- a/stage0/stdlib/Lean/Meta/ArgsPacker.c +++ b/stage0/stdlib/Lean/Meta/ArgsPacker.c @@ -26,6 +26,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacke static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryParam___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_curryProj___closed__2; +static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack___closed__2; lean_object* l_Lean_Meta_mkAppOptM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__2; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__2; @@ -38,27 +39,31 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Arg static lean_object* l_Lean_Meta_ArgsPacker_pack___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__2___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_pack_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__5; static lean_object* l_Lean_Meta_ArgsPacker_Mutual_pack_go___closed__1; +lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_curryProj___closed__1; static lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_pack___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Meta_congrArg_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3; uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go(lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurry___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); lean_object* l_Lean_Name_toString(lean_object*, uint8_t, lean_object*); lean_object* l_Lean_Level_succ___override(lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_pack___closed__7; lean_object* l_Lean_Expr_sort___override(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_pack___closed__5; static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurry___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -83,6 +88,7 @@ lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_pack___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_uncurryND___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack___closed__3; static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__9; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_unpack___boxed(lean_object*, lean_object*); @@ -98,7 +104,6 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_uncurr lean_object* l_Lean_mkApp4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryParam___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_ArgsPacker_onlyOneUnary(lean_object*); @@ -115,11 +120,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_arities(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryWithType___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1; uint8_t l_Lean_Expr_isLambda(lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__2___closed__2; lean_object* l_Lean_mkApp6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryND(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__10; size_t lean_usize_of_nat(lean_object*); @@ -128,16 +135,19 @@ static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Una lean_object* l_Array_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getRevArg_x21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_uncurry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go___rarg___closed__1; +static lean_object* l_Lean_Meta_ArgsPacker_curryProj___closed__3; lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_ArgsPacker_Unary_unpack___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -184,8 +194,10 @@ static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_u uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_onlyOneUnary___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurryType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryND___lambda__1___closed__1; extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Mutual_packType___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -206,12 +218,12 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1; uint8_t l_Lean_Expr_isArrow(lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_pack(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curry___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__3; static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__11; @@ -222,18 +234,21 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_pack(lean_object*, lean_o static lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__4; lean_object* l_Lean_Expr_appFn_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_packType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryParam___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__4___closed__3; +static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_numFuncs(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_uncurryND(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__2; -static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go___rarg___lambda__2___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_pack(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -261,11 +276,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacke static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__4___closed__4; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__4; +static lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_ArgsPacker_Mutual_unpack___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain___closed__1; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryND___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurryType___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -276,6 +293,7 @@ uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Id_instMonad; static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__1; @@ -286,17 +304,21 @@ lean_object* l_Lean_Meta_PProdN_mk(lean_object*, lean_object*, lean_object*, lea static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__6; static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__2; lean_object* l_Lean_mkArrow(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_uncurry___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryType___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_arities___spec__1(size_t, size_t, lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__2; +static lean_object* l_Lean_Meta_ArgsPacker_Unary_pack___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_uncurryType___spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_curryType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_pack___closed__1; static lean_object* l_Lean_Meta_ArgsPacker_curryParam___rarg___lambda__3___closed__1; @@ -307,12 +329,14 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_onlyOneUnary___boxed(lean_object LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_uncurryType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_Mutual_curryType___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_pack_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__1(size_t, size_t, lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedName; lean_object* lean_array_uget(lean_object*, size_t); +static lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1; size_t lean_array_size(lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Mutual_packType___spec__1___closed__1; static lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryWithType___lambda__1___closed__2; @@ -338,13 +362,13 @@ uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_ArgsPacker_Mutual_uncurry___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); +lean_object* l_Lean_Expr_lam___override(lean_object*, lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); lean_object* l_Lean_mkApp5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2; uint8_t l_Lean_Expr_isForall(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryND___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2; +static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2; static lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__5; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -357,13 +381,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryType(lean_object*, lean_obj lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Mutual_packType___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_panic___at_Lean_Meta_mkPProdFst___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_casesOn___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Array_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__1___boxed(lean_object**); static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__1() { _start: @@ -554,103 +578,159 @@ return x_50; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = l_Lean_instInhabitedExpr; -x_8 = l_Array_back_x21___rarg(x_7, x_1); +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = l_Lean_instInhabitedExpr; +x_9 = l_Array_back_x21___rarg(x_8, x_1); +lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -lean_inc(x_2); -x_9 = lean_infer_type(x_8, x_2, x_3, x_4, x_5, x_6); -if (lean_obj_tag(x_9) == 0) +x_10 = lean_infer_type(x_9, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_10) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; size_t x_16; size_t x_17; lean_object* x_18; +x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); -lean_dec(x_9); -x_12 = lean_array_pop(x_1); -x_13 = l_Array_reverse___rarg(x_12); -x_14 = lean_box(0); -x_15 = lean_array_size(x_13); -x_16 = 0; -x_17 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1(x_13, x_14, x_13, x_15, x_16, x_10, x_2, x_3, x_4, x_5, x_11); -lean_dec(x_13); -if (lean_obj_tag(x_17) == 0) +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_array_pop(x_1); +x_14 = l_Array_reverse___rarg(x_13); +x_15 = lean_box(0); +x_16 = lean_array_size(x_14); +x_17 = 0; +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1(x_14, x_15, x_14, x_16, x_17, x_11, x_3, x_4, x_5, x_6, x_12); +lean_dec(x_14); +if (lean_obj_tag(x_18) == 0) { -uint8_t x_18; -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) +uint8_t x_19; +x_19 = !lean_is_exclusive(x_18); +if (x_19 == 0) { -return x_17; +return x_18; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_17, 0); -x_20 = lean_ctor_get(x_17, 1); +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_18, 0); +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_17); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; +lean_dec(x_18); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; } } else { -uint8_t x_22; -x_22 = !lean_is_exclusive(x_17); -if (x_22 == 0) +uint8_t x_23; +x_23 = !lean_is_exclusive(x_18); +if (x_23 == 0) { -return x_17; +return x_18; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_17, 0); -x_24 = lean_ctor_get(x_17, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_18, 0); +x_25 = lean_ctor_get(x_18, 1); +lean_inc(x_25); lean_inc(x_24); -lean_inc(x_23); -lean_dec(x_17); -x_25 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -return x_25; +lean_dec(x_18); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } } else { -uint8_t x_26; +uint8_t x_27; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_10); +if (x_27 == 0) +{ +return x_10; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_10, 0); +x_29 = lean_ctor_get(x_10, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_10); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Unit", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +uint8_t x_7; +x_7 = l_Array_isEmpty___rarg(x_1); +if (x_7 == 0) +{ +lean_object* x_8; lean_object* x_9; +x_8 = lean_box(0); +x_9 = l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1(x_1, x_8, x_2, x_3, x_4, x_5, x_6); +return x_9; +} +else +{ +lean_object* x_10; lean_object* x_11; lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_26 = !lean_is_exclusive(x_9); -if (x_26 == 0) -{ -return x_9; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_9, 0); -x_28 = lean_ctor_get(x_9, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_9); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; -} +x_10 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__3; +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_6); +return x_11; } } } @@ -669,6 +749,15 @@ lean_dec(x_1); return x_14; } } +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Meta_ArgsPacker_Unary_packType___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_2); +return x_8; +} +} static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__1() { _start: { @@ -717,7 +806,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__5; -x_3 = lean_unsigned_to_nat(74u); +x_3 = lean_unsigned_to_nat(80u); x_4 = lean_unsigned_to_nat(6u); x_5 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -748,7 +837,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__5; -x_3 = lean_unsigned_to_nat(78u); +x_3 = lean_unsigned_to_nat(84u); x_4 = lean_unsigned_to_nat(6u); x_5 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__8; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -869,13 +958,52 @@ lean_dec(x_1); return x_4; } } +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unit", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__1; +x_2 = l_Lean_Meta_ArgsPacker_Unary_pack___closed__1; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_ArgsPacker_Unary_pack___closed__2; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_pack(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; -x_3 = lean_unsigned_to_nat(0u); -x_4 = l_Lean_Meta_ArgsPacker_Unary_pack_go(x_2, x_3, x_1); -return x_4; +uint8_t x_3; +x_3 = l_Array_isEmpty___rarg(x_2); +if (x_3 == 0) +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = l_Lean_Meta_ArgsPacker_Unary_pack_go(x_2, x_4, x_1); +return x_5; +} +else +{ +lean_object* x_6; +x_6 = l_Lean_Meta_ArgsPacker_Unary_pack___closed__3; +return x_6; +} } } LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_pack___boxed(lean_object* x_1, lean_object* x_2) { @@ -1016,7 +1144,7 @@ goto _start; } } } -static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1() { +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -1025,54 +1153,86 @@ x_2 = lean_array_mk(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_3 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; -x_4 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_4, 0, x_3); -lean_ctor_set(x_4, 1, x_2); -x_5 = l_Lean_Loop_forIn_loop___at_Lean_Meta_ArgsPacker_Unary_unpack___spec__1(x_1, x_4); -if (lean_obj_tag(x_5) == 0) +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; +x_5 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_5, 0, x_4); +lean_ctor_set(x_5, 1, x_1); +x_6 = l_Lean_Loop_forIn_loop___at_Lean_Meta_ArgsPacker_Unary_unpack___spec__1(x_2, x_5); +if (lean_obj_tag(x_6) == 0) { -lean_object* x_6; -x_6 = lean_box(0); +lean_object* x_7; +x_7 = lean_box(0); +return x_7; +} +else +{ +uint8_t x_8; +x_8 = !lean_is_exclusive(x_6); +if (x_8 == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_ctor_get(x_6, 0); +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_array_push(x_10, x_11); +lean_ctor_set(x_6, 0, x_12); return x_6; } else { -uint8_t x_7; -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_6, 0); +lean_inc(x_13); +lean_dec(x_6); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_array_push(x_14, x_15); +x_17 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_17, 0, x_16); +return x_17; +} +} +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1() { +_start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = lean_ctor_get(x_5, 0); -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); -x_11 = lean_array_push(x_9, x_10); -lean_ctor_set(x_5, 0, x_11); -return x_5; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; +x_2 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_unsigned_to_nat(0u); +x_4 = lean_nat_dec_eq(x_1, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; +x_5 = lean_box(0); +x_6 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1(x_2, x_1, x_5); +return x_6; } else { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_5, 0); -lean_inc(x_12); -lean_dec(x_5); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_array_push(x_13, x_14); -x_16 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_16, 0, x_15); -return x_16; -} +lean_object* x_7; +lean_dec(x_2); +x_7 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +return x_7; } } } @@ -1085,6 +1245,16 @@ lean_dec(x_1); return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +return x_4; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_unpack___boxed(lean_object* x_1, lean_object* x_2) { _start: { @@ -1134,30 +1304,90 @@ goto _start; } } } +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_4 = lean_unsigned_to_nat(1u); +x_5 = lean_nat_sub(x_1, x_4); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_5); +lean_ctor_set(x_7, 2, x_4); +x_8 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_8); +lean_ctor_set(x_9, 1, x_2); +x_10 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___spec__1(x_7, x_7, x_9, x_6, lean_box(0), lean_box(0)); +lean_dec(x_7); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_array_push(x_11, x_12); +return x_13; +} +} +static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Id_instMonad; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = lean_ctor_get(x_2, 1); +lean_inc(x_3); +lean_dec(x_2); +x_4 = lean_box(0); +x_5 = lean_apply_2(x_3, lean_box(0), x_4); +return x_5; +} +} +static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Id_instMonad; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = lean_ctor_get(x_2, 1); +lean_inc(x_3); +lean_dec(x_2); +x_4 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; +x_5 = lean_apply_2(x_3, lean_box(0), x_4); +return x_5; +} +} LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; -x_3 = lean_unsigned_to_nat(1u); -x_4 = lean_nat_sub(x_2, x_3); -x_5 = lean_unsigned_to_nat(0u); -x_6 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_6, 0, x_5); -lean_ctor_set(x_6, 1, x_4); -lean_ctor_set(x_6, 2, x_3); -x_7 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_7); -lean_ctor_set(x_8, 1, x_1); -x_9 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___spec__1(x_6, x_6, x_8, x_5, lean_box(0), lean_box(0)); -lean_dec(x_6); -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); -lean_inc(x_11); -lean_dec(x_9); -x_12 = lean_array_push(x_10, x_11); -return x_12; +lean_object* x_3; lean_object* x_4; uint8_t x_5; +lean_inc(x_2); +x_3 = lean_alloc_closure((void*)(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1___boxed), 3, 2); +lean_closure_set(x_3, 0, x_2); +lean_closure_set(x_3, 1, x_1); +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_nat_dec_eq(x_2, x_4); +lean_dec(x_2); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_6 = l_Id_instMonad; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +x_8 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1; +x_9 = lean_apply_4(x_7, lean_box(0), lean_box(0), x_8, x_3); +return x_9; +} +else +{ +lean_object* x_10; +lean_dec(x_3); +x_10 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2; +return x_10; +} } } LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { @@ -1170,13 +1400,14 @@ lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_3; -x_3 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems(x_1, x_2); -lean_dec(x_2); -return x_3; +lean_object* x_4; +x_4 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_1); +return x_4; } } LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { @@ -1249,7 +1480,7 @@ static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2__ _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("xs.size = varNames.size\n ", 28, 28); +x_1 = lean_mk_string_unchecked("xs.size = varNames.size\n ", 30, 30); return x_1; } } @@ -1277,8 +1508,8 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__3; -x_3 = lean_unsigned_to_nat(121u); -x_4 = lean_unsigned_to_nat(4u); +x_3 = lean_unsigned_to_nat(132u); +x_4 = lean_unsigned_to_nat(6u); x_5 = l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -1315,7 +1546,7 @@ lean_dec(x_11); lean_dec(x_4); lean_dec(x_2); x_13 = l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__4; -x_14 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_13, x_6, x_7, x_8, x_9, x_10); +x_14 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_13, x_6, x_7, x_8, x_9, x_10); return x_14; } else @@ -1336,7 +1567,7 @@ lean_inc(x_17); lean_dec(x_15); x_18 = lean_unsigned_to_nat(1u); x_19 = lean_nat_dec_eq(x_11, x_18); -x_20 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1___boxed), 8, 2); +x_20 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1), 8, 2); lean_closure_set(x_20, 0, x_11); lean_closure_set(x_20, 1, x_2); if (x_19 == 0) @@ -1408,28 +1639,36 @@ return x_39; LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; -x_8 = lean_array_get_size(x_1); -lean_inc(x_8); -x_9 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_9, 0, x_8); -lean_inc(x_2); -x_10 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___boxed), 10, 3); -lean_closure_set(x_10, 0, x_8); -lean_closure_set(x_10, 1, x_2); -lean_closure_set(x_10, 2, x_1); -x_11 = 0; -x_12 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_2, x_9, x_10, x_11, x_3, x_4, x_5, x_6, x_7); -return x_12; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: +uint8_t x_8; +x_8 = l_Array_isEmpty___rarg(x_1); +if (x_8 == 0) { -lean_object* x_9; -x_9 = l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_9 = lean_array_get_size(x_1); +lean_inc(x_9); +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_9); +lean_inc(x_2); +x_11 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___boxed), 10, 3); +lean_closure_set(x_11, 0, x_9); +lean_closure_set(x_11, 1, x_2); +lean_closure_set(x_11, 2, x_1); +x_12 = 0; +x_13 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_2, x_10, x_11, x_12, x_3, x_4, x_5, x_6, x_7); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_4); +lean_dec(x_3); lean_dec(x_1); -return x_9; +x_14 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__3; +x_15 = l_Lean_mkArrow(x_14, x_2, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_15; +} } } LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { @@ -2063,8 +2302,8 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__1; -x_3 = lean_unsigned_to_nat(160u); -x_4 = lean_unsigned_to_nat(21u); +x_3 = lean_unsigned_to_nat(174u); +x_4 = lean_unsigned_to_nat(23u); x_5 = l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2085,7 +2324,7 @@ lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); x_13 = l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__3; -x_14 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_13, x_5, x_6, x_7, x_8, x_9); +x_14 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_13, x_5, x_6, x_7, x_8, x_9); return x_14; } else @@ -2209,104 +2448,144 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("x", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; +uint8_t x_8; +x_8 = l_Array_isEmpty___rarg(x_1); +if (x_8 == 0) +{ +lean_object* x_9; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_2); -x_8 = lean_infer_type(x_2, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_8) == 0) +x_9 = lean_infer_type(x_2, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_9) == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_8, 1); +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_9, 0); lean_inc(x_10); -lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); lean_inc(x_1); -x_11 = l_Lean_Meta_ArgsPacker_Unary_uncurryType(x_1, x_9, x_3, x_4, x_5, x_6, x_10); -if (lean_obj_tag(x_11) == 0) +x_12 = l_Lean_Meta_ArgsPacker_Unary_uncurryType(x_1, x_10, x_3, x_4, x_5, x_6, x_11); +if (lean_obj_tag(x_12) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; +x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); -lean_dec(x_11); -x_14 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___boxed), 9, 2); -lean_closure_set(x_14, 0, x_1); -lean_closure_set(x_14, 1, x_2); -x_15 = l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__1; -x_16 = 0; -x_17 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_12, x_15, x_14, x_16, x_3, x_4, x_5, x_6, x_13); -return x_17; +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = lean_alloc_closure((void*)(l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___boxed), 9, 2); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_2); +x_16 = l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__1; +x_17 = 0; +x_18 = l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(x_13, x_16, x_15, x_17, x_3, x_4, x_5, x_6, x_14); +return x_18; } else { -uint8_t x_18; +uint8_t x_19; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_18 = !lean_is_exclusive(x_11); -if (x_18 == 0) +x_19 = !lean_is_exclusive(x_12); +if (x_19 == 0) { -return x_11; +return x_12; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_11, 0); -x_20 = lean_ctor_get(x_11, 1); +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_12, 0); +x_21 = lean_ctor_get(x_12, 1); +lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_11); -x_21 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; +lean_dec(x_12); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; } } } else { -uint8_t x_22; +uint8_t x_23; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_22 = !lean_is_exclusive(x_8); -if (x_22 == 0) +x_23 = !lean_is_exclusive(x_9); +if (x_23 == 0) { -return x_8; +return x_9; } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_8, 0); -x_24 = lean_ctor_get(x_8, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_9, 0); +x_25 = lean_ctor_get(x_9, 1); +lean_inc(x_25); lean_inc(x_24); -lean_inc(x_23); -lean_dec(x_8); -x_25 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_25, 0, x_23); -lean_ctor_set(x_25, 1, x_24); -return x_25; +lean_dec(x_9); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } } +else +{ +lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_27 = l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3; +x_28 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__3; +x_29 = 0; +x_30 = l_Lean_Expr_lam___override(x_27, x_28, x_2, x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_7); +return x_31; +} +} } LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: @@ -2635,34 +2914,6 @@ return x_14; } } } -static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Unit", 4, 4); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2; -x_3 = l_Lean_Expr_const___override(x_2, x_1); -return x_3; -} -} LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -2670,7 +2921,7 @@ lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_10 = lean_box(0); lean_inc(x_4); x_11 = lean_array_push(x_1, x_4); -x_12 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3; +x_12 = l_Lean_Meta_ArgsPacker_Unary_packType___closed__3; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); @@ -2849,129 +3100,128 @@ _start: { if (lean_obj_tag(x_5) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_3); -x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Lean_Meta_ArgsPacker_Unary_pack_go(x_4, x_11, x_2); -lean_dec(x_2); +x_11 = l_Lean_Meta_ArgsPacker_Unary_pack(x_2, x_4); lean_dec(x_4); -x_13 = lean_box(0); -x_14 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -x_15 = lean_array_mk(x_14); -x_16 = l_Lean_Expr_beta(x_1, x_15); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_10); -return x_17; +lean_dec(x_2); +x_12 = lean_box(0); +x_13 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set(x_13, 1, x_12); +x_14 = lean_array_mk(x_13); +x_15 = l_Lean_Expr_beta(x_1, x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_10); +return x_16; } else { -lean_object* x_18; -x_18 = lean_ctor_get(x_5, 1); +lean_object* x_17; +x_17 = lean_ctor_get(x_5, 1); +lean_inc(x_17); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_5, 0); lean_inc(x_18); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_5, 0); -lean_inc(x_19); lean_dec(x_5); -x_20 = lean_alloc_closure((void*)(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1), 9, 3); -lean_closure_set(x_20, 0, x_4); -lean_closure_set(x_20, 1, x_1); -lean_closure_set(x_20, 2, x_2); +x_19 = lean_alloc_closure((void*)(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1), 9, 3); +lean_closure_set(x_19, 0, x_4); +lean_closure_set(x_19, 1, x_1); +lean_closure_set(x_19, 2, x_2); +x_20 = 0; x_21 = 0; -x_22 = 0; -x_23 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_19, x_21, x_3, x_20, x_22, x_6, x_7, x_8, x_9, x_10); -return x_23; +x_22 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_18, x_20, x_3, x_19, x_21, x_6, x_7, x_8, x_9, x_10); +return x_22; } else { -lean_object* x_24; lean_object* x_25; uint8_t x_26; -x_24 = lean_ctor_get(x_5, 0); -lean_inc(x_24); +lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_23 = lean_ctor_get(x_5, 0); +lean_inc(x_23); lean_dec(x_5); lean_inc(x_3); -x_25 = l_Lean_Expr_cleanupAnnotations(x_3); -x_26 = l_Lean_Expr_isApp(x_25); -if (x_26 == 0) +x_24 = l_Lean_Expr_cleanupAnnotations(x_3); +x_25 = l_Lean_Expr_isApp(x_24); +if (x_25 == 0) { -lean_object* x_27; lean_object* x_28; -lean_dec(x_25); +lean_object* x_26; lean_object* x_27; lean_dec(x_24); -lean_dec(x_18); +lean_dec(x_23); +lean_dec(x_17); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_27 = lean_box(0); -x_28 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_27, x_6, x_7, x_8, x_9, x_10); +x_26 = lean_box(0); +x_27 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_26, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -return x_28; +return x_27; } else { -lean_object* x_29; lean_object* x_30; uint8_t x_31; -x_29 = l_Lean_Expr_appArg(x_25, lean_box(0)); -x_30 = l_Lean_Expr_appFnCleanup(x_25, lean_box(0)); -x_31 = l_Lean_Expr_isApp(x_30); -if (x_31 == 0) +lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_28 = l_Lean_Expr_appArg(x_24, lean_box(0)); +x_29 = l_Lean_Expr_appFnCleanup(x_24, lean_box(0)); +x_30 = l_Lean_Expr_isApp(x_29); +if (x_30 == 0) { -lean_object* x_32; lean_object* x_33; -lean_dec(x_30); +lean_object* x_31; lean_object* x_32; lean_dec(x_29); -lean_dec(x_24); -lean_dec(x_18); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_17); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_32 = lean_box(0); -x_33 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_32, x_6, x_7, x_8, x_9, x_10); +x_31 = lean_box(0); +x_32 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_31, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -return x_33; +return x_32; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_34 = l_Lean_Expr_appArg(x_30, lean_box(0)); -x_35 = l_Lean_Expr_appFnCleanup(x_30, lean_box(0)); -x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__2; -x_37 = l_Lean_Expr_isConstOf(x_35, x_36); -lean_dec(x_35); -if (x_37 == 0) -{ -lean_object* x_38; lean_object* x_39; +lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +x_33 = l_Lean_Expr_appArg(x_29, lean_box(0)); +x_34 = l_Lean_Expr_appFnCleanup(x_29, lean_box(0)); +x_35 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__2; +x_36 = l_Lean_Expr_isConstOf(x_34, x_35); lean_dec(x_34); -lean_dec(x_29); -lean_dec(x_24); -lean_dec(x_18); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; +lean_dec(x_33); +lean_dec(x_28); +lean_dec(x_23); +lean_dec(x_17); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_38 = lean_box(0); -x_39 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_38, x_6, x_7, x_8, x_9, x_10); +x_37 = lean_box(0); +x_38 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4(x_3, x_37, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -return x_39; +return x_38; } else { -lean_object* x_40; +lean_object* x_39; lean_dec(x_3); -x_40 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__3(x_4, x_1, x_2, x_18, x_24, x_34, x_29, x_6, x_7, x_8, x_9, x_10); -return x_40; +x_39 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__3(x_4, x_1, x_2, x_17, x_23, x_33, x_28, x_6, x_7, x_8, x_9, x_10); +return x_39; } } } @@ -2998,13 +3248,13 @@ _start: lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; x_10 = l_Lean_Expr_bindingDomain_x21(x_1); x_11 = lean_array_to_list(x_2); -x_12 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_12 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; lean_inc(x_10); x_13 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go(x_3, x_10, x_10, x_12, x_11, x_5, x_6, x_7, x_8, x_9); return x_13; } } -static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1() { +static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -3012,150 +3262,200 @@ x_1 = lean_mk_string_unchecked("curryPSigma: expected forall type, got ", 39, 39 return x_1; } } +static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_9 = lean_infer_type(x_1, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_12 = l_Lean_Meta_whnfForall(x_10, x_4, x_5, x_6, x_7, x_11); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = l_Lean_Expr_isForall(x_13); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +lean_dec(x_2); +lean_dec(x_1); +x_16 = l_Lean_MessageData_ofExpr(x_13); +x_17 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +x_19 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__4___closed__4; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_20, x_4, x_5, x_6, x_7, x_14); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_22 = !lean_is_exclusive(x_21); +if (x_22 == 0) +{ +return x_21; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_21, 0); +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_21); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +else +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_box(0); +x_27 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__1(x_13, x_2, x_1, x_26, x_4, x_5, x_6, x_7, x_14); +lean_dec(x_13); +return x_27; +} +} +else +{ +uint8_t x_28; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_28 = !lean_is_exclusive(x_12); +if (x_28 == 0) +{ +return x_12; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_12, 0); +x_30 = lean_ctor_get(x_12, 1); +lean_inc(x_30); +lean_inc(x_29); +lean_dec(x_12); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +return x_31; +} +} +} +else +{ +uint8_t x_32; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_32 = !lean_is_exclusive(x_9); +if (x_32 == 0) +{ +return x_9; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_9, 0); +x_34 = lean_ctor_get(x_9, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_9); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_ArgsPacker_Unary_pack___closed__3; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} static lean_object* _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2() { _start: { lean_object* x_1; lean_object* x_2; x_1 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); +x_2 = lean_array_mk(x_1); return x_2; } } LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_8 = lean_infer_type(x_2, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_8) == 0) +uint8_t x_8; +x_8 = l_Array_isEmpty___rarg(x_1); +if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_11 = l_Lean_Meta_whnfForall(x_9, x_3, x_4, x_5, x_6, x_10); -if (lean_obj_tag(x_11) == 0) +lean_object* x_9; lean_object* x_10; +x_9 = lean_box(0); +x_10 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2(x_2, x_1, x_9, x_3, x_4, x_5, x_6, x_7); +return x_10; +} +else { -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -lean_dec(x_11); -x_14 = l_Lean_Expr_isForall(x_12); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; -lean_dec(x_2); -lean_dec(x_1); -x_15 = l_Lean_MessageData_ofExpr(x_12); -x_16 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2; -x_17 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_15); -x_18 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_casesOn___lambda__4___closed__4; -x_19 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_19, 0, x_17); -lean_ctor_set(x_19, 1, x_18); -x_20 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_19, x_3, x_4, x_5, x_6, x_13); +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_21 = !lean_is_exclusive(x_20); -if (x_21 == 0) -{ -return x_20; -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_20, 0); -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_20); -x_24 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_24, 0, x_22); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_box(0); -x_26 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__1(x_12, x_1, x_2, x_25, x_3, x_4, x_5, x_6, x_13); -lean_dec(x_12); -return x_26; -} -} -else -{ -uint8_t x_27; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); lean_dec(x_1); -x_27 = !lean_is_exclusive(x_11); -if (x_27 == 0) -{ -return x_11; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_11, 0); -x_29 = lean_ctor_get(x_11, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_11); -x_30 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; -} -} -} -else -{ -uint8_t x_31; -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_31 = !lean_is_exclusive(x_8); -if (x_31 == 0) -{ -return x_8; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_8, 0); -x_33 = lean_ctor_get(x_8, 1); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_8); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); -lean_ctor_set(x_34, 1, x_33); -return x_34; -} +x_11 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2; +x_12 = l_Lean_Expr_beta(x_2, x_11); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_7); +return x_13; } } } @@ -3169,6 +3469,15 @@ lean_dec(x_1); return x_10; } } +LEAN_EXPORT lean_object* l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +return x_9; +} +} static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Mutual_packType___spec__1___closed__1() { _start: { @@ -3654,7 +3963,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__3; -x_3 = lean_unsigned_to_nat(245u); +x_3 = lean_unsigned_to_nat(260u); x_4 = lean_unsigned_to_nat(8u); x_5 = l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -3732,7 +4041,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); x_22 = l_Lean_Expr_withAppAux___at_Lean_Meta_ArgsPacker_Mutual_pack_go___spec__1___closed__4; -x_23 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_22, x_8, x_9, x_10, x_11, x_12); +x_23 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_22, x_8, x_9, x_10, x_11, x_12); return x_23; } else @@ -4571,7 +4880,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__3; -x_3 = lean_unsigned_to_nat(287u); +x_3 = lean_unsigned_to_nat(302u); x_4 = lean_unsigned_to_nat(6u); x_5 = l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4684,7 +4993,7 @@ lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); x_33 = l_Lean_Meta_ArgsPacker_Mutual_mkCodomain_go___closed__4; -x_34 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_33, x_5, x_6, x_7, x_8, x_29); +x_34 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_33, x_5, x_6, x_7, x_8, x_29); return x_34; } else @@ -5458,24 +5767,6 @@ return x_21; } } } -static lean_object* _init_l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("x", 1, 1); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_Mutual_uncurryType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -5578,7 +5869,7 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); -x_21 = l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2; +x_21 = l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3; x_22 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_21, x_4, x_5, x_20); x_23 = lean_ctor_get(x_22, 0); lean_inc(x_23); @@ -6905,7 +7196,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Mutual_uncurryWithType___lambda__1___closed__1; -x_3 = lean_unsigned_to_nat(381u); +x_3 = lean_unsigned_to_nat(396u); x_4 = lean_unsigned_to_nat(21u); x_5 = l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -6926,7 +7217,7 @@ lean_object* x_12; lean_object* x_13; lean_dec(x_3); lean_dec(x_1); x_12 = l_Lean_Meta_ArgsPacker_Mutual_uncurryWithType___lambda__1___closed__2; -x_13 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_12, x_4, x_5, x_6, x_7, x_8); +x_13 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_12, x_4, x_5, x_6, x_7, x_8); return x_13; } else @@ -7209,7 +7500,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_Mutual_uncurryND___lambda__1___closed__1; -x_3 = lean_unsigned_to_nat(401u); +x_3 = lean_unsigned_to_nat(416u); x_4 = lean_unsigned_to_nat(21u); x_5 = l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -7230,7 +7521,7 @@ lean_object* x_12; lean_object* x_13; lean_dec(x_3); lean_dec(x_1); x_12 = l_Lean_Meta_ArgsPacker_Mutual_uncurryND___lambda__1___closed__2; -x_13 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_12, x_4, x_5, x_6, x_7, x_8); +x_13 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_12, x_4, x_5, x_6, x_7, x_8); return x_13; } else @@ -7721,7 +8012,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_pack___closed__3; -x_3 = lean_unsigned_to_nat(433u); +x_3 = lean_unsigned_to_nat(448u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_Meta_ArgsPacker_pack___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -7752,7 +8043,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; x_2 = l_Lean_Meta_ArgsPacker_pack___closed__3; -x_3 = lean_unsigned_to_nat(434u); +x_3 = lean_unsigned_to_nat(449u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_Meta_ArgsPacker_pack___closed__6; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -7772,7 +8063,7 @@ lean_dec(x_10); lean_dec(x_3); lean_dec(x_2); x_12 = l_Lean_Meta_ArgsPacker_pack___closed__4; -x_13 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_12, x_5, x_6, x_7, x_8, x_9); +x_13 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_12, x_5, x_6, x_7, x_8, x_9); return x_13; } else @@ -7792,7 +8083,7 @@ lean_dec(x_10); lean_dec(x_3); lean_dec(x_2); x_18 = l_Lean_Meta_ArgsPacker_pack___closed__7; -x_19 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_18, x_5, x_6, x_7, x_8, x_9); +x_19 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_18, x_5, x_6, x_7, x_8, x_9); return x_19; } else @@ -7818,7 +8109,7 @@ lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_dec(x_21); x_26 = l_Lean_instInhabitedExpr; x_27 = l_outOfBounds___rarg(x_26); -x_28 = l_Lean_Meta_ArgsPacker_Unary_pack_go(x_4, x_23, x_27); +x_28 = l_Lean_Meta_ArgsPacker_Unary_pack(x_27, x_4); lean_dec(x_27); x_29 = l_Lean_Meta_ArgsPacker_Mutual_pack_go(x_10, x_3, x_28, x_23, x_2, x_5, x_6, x_7, x_8, x_22); lean_dec(x_3); @@ -7831,7 +8122,7 @@ lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_inc(x_3); x_30 = l_List_get___rarg(x_21, x_3); lean_dec(x_21); -x_31 = l_Lean_Meta_ArgsPacker_Unary_pack_go(x_4, x_23, x_30); +x_31 = l_Lean_Meta_ArgsPacker_Unary_pack(x_30, x_4); lean_dec(x_30); x_32 = l_Lean_Meta_ArgsPacker_Mutual_pack_go(x_10, x_3, x_31, x_23, x_2, x_5, x_6, x_7, x_8, x_22); lean_dec(x_3); @@ -8219,7 +8510,7 @@ _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; x_8 = lean_unsigned_to_nat(0u); -x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_10 = l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurryType___spec__1(x_1, x_2, x_8, x_9); x_11 = lean_array_size(x_10); x_12 = 0; @@ -8347,7 +8638,7 @@ _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; x_8 = lean_unsigned_to_nat(0u); -x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_10 = l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurry___spec__1(x_1, x_2, x_8, x_9); x_11 = lean_array_size(x_10); x_12 = 0; @@ -8420,7 +8711,7 @@ _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; size_t x_12; size_t x_13; lean_object* x_14; x_9 = lean_unsigned_to_nat(0u); -x_10 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_10 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_11 = l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurry___spec__1(x_1, x_3, x_9, x_10); x_12 = lean_array_size(x_11); x_13 = 0; @@ -8484,7 +8775,7 @@ _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; x_8 = lean_unsigned_to_nat(0u); -x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_9 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_10 = l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_uncurry___spec__1(x_1, x_2, x_8, x_9); x_11 = lean_array_size(x_10); x_12 = 0; @@ -8762,7 +9053,7 @@ return x_51; } } } -static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___closed__1() { +static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1() { _start: { lean_object* x_1; @@ -8770,15 +9061,135 @@ x_1 = lean_mk_string_unchecked("curryProj: index out of range", 29, 29); return x_1; } } -static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___closed__2() { +static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_ArgsPacker_curryProj___closed__1; +x_1 = l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; +x_12 = l_Lean_Expr_bindingDomain_x21(x_1); +lean_inc(x_12); +x_13 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType(x_2, x_12, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_List_lengthTRAux___rarg(x_14, x_16); +x_18 = lean_nat_dec_lt(x_3, x_17); +lean_dec(x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_4); +lean_dec(x_3); +x_19 = l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2; +x_20 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_19, x_7, x_8, x_9, x_10, x_15); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +return x_20; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_20, 0); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_20); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_box(0); +x_26 = l_Lean_Meta_ArgsPacker_curryProj___lambda__2(x_14, x_3, x_1, x_12, x_4, x_2, x_5, x_25, x_7, x_8, x_9, x_10, x_15); +lean_dec(x_14); +return x_26; +} +} +else +{ +uint8_t x_27; +lean_dec(x_12); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_4); +lean_dec(x_3); +x_27 = !lean_is_exclusive(x_13); +if (x_27 == 0) +{ +return x_13; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_13, 0); +x_29 = lean_ctor_get(x_13, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_13); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Meta.ArgsPacker.curryProj", 30, 30); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("curryProj: expected forall type, got {}", 39, 39); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_ArgsPacker_curryProj___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__4; +x_2 = l_Lean_Meta_ArgsPacker_curryProj___closed__1; +x_3 = lean_unsigned_to_nat(514u); +x_4 = lean_unsigned_to_nat(4u); +x_5 = l_Lean_Meta_ArgsPacker_curryProj___closed__2; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { @@ -8792,77 +9203,93 @@ lean_inc(x_2); x_10 = lean_infer_type(x_2, x_4, x_5, x_6, x_7, x_8); if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_11; lean_object* x_12; lean_object* x_13; x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); lean_inc(x_12); lean_dec(x_10); -x_13 = l_Lean_Expr_bindingDomain_x21(x_11); -lean_inc(x_13); -x_14 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Mutual_unpackType(x_9, x_13, x_4, x_5, x_6, x_7, x_12); -if (lean_obj_tag(x_14) == 0) +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_13 = lean_whnf(x_11, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_15 = lean_ctor_get(x_14, 0); +lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -x_17 = lean_unsigned_to_nat(0u); -x_18 = l_List_lengthTRAux___rarg(x_15, x_17); -x_19 = lean_nat_dec_lt(x_3, x_18); -lean_dec(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; uint8_t x_22; -lean_dec(x_15); lean_dec(x_13); -lean_dec(x_11); -lean_dec(x_9); -lean_dec(x_3); -lean_dec(x_2); -x_20 = l_Lean_Meta_ArgsPacker_curryProj___closed__2; -x_21 = l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(x_20, x_4, x_5, x_6, x_7, x_16); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) +x_16 = l_Lean_Expr_isForall(x_14); +if (x_16 == 0) { +lean_object* x_17; lean_object* x_18; +x_17 = l_Lean_Meta_ArgsPacker_curryProj___closed__3; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_18 = l_panic___at_Lean_Meta_congrArg_x3f___spec__1(x_17, x_4, x_5, x_6, x_7, x_15); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = l_Lean_Meta_ArgsPacker_curryProj___lambda__3(x_14, x_9, x_3, x_2, x_1, x_19, x_4, x_5, x_6, x_7, x_20); +lean_dec(x_19); +lean_dec(x_9); +lean_dec(x_14); return x_21; } else { +uint8_t x_22; +lean_dec(x_14); +lean_dec(x_9); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_22 = !lean_is_exclusive(x_18); +if (x_22 == 0) +{ +return x_18; +} +else +{ lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_21, 0); -x_24 = lean_ctor_get(x_21, 1); +x_23 = lean_ctor_get(x_18, 0); +x_24 = lean_ctor_get(x_18, 1); lean_inc(x_24); lean_inc(x_23); -lean_dec(x_21); +lean_dec(x_18); x_25 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_25, 0, x_23); lean_ctor_set(x_25, 1, x_24); return x_25; } } +} else { lean_object* x_26; lean_object* x_27; x_26 = lean_box(0); -x_27 = l_Lean_Meta_ArgsPacker_curryProj___lambda__2(x_15, x_3, x_11, x_13, x_2, x_9, x_1, x_26, x_4, x_5, x_6, x_7, x_16); +x_27 = l_Lean_Meta_ArgsPacker_curryProj___lambda__3(x_14, x_9, x_3, x_2, x_1, x_26, x_4, x_5, x_6, x_7, x_15); lean_dec(x_9); -lean_dec(x_11); -lean_dec(x_15); +lean_dec(x_14); return x_27; } } else { uint8_t x_28; -lean_dec(x_13); -lean_dec(x_11); lean_dec(x_9); lean_dec(x_7); lean_dec(x_6); @@ -8870,19 +9297,19 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_28 = !lean_is_exclusive(x_14); +x_28 = !lean_is_exclusive(x_13); if (x_28 == 0) { -return x_14; +return x_13; } else { lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_14, 0); -x_30 = lean_ctor_get(x_14, 1); +x_29 = lean_ctor_get(x_13, 0); +x_30 = lean_ctor_get(x_13, 1); lean_inc(x_30); lean_inc(x_29); -lean_dec(x_14); +lean_dec(x_13); x_31 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_31, 0, x_29); lean_ctor_set(x_31, 1, x_30); @@ -8944,6 +9371,18 @@ lean_dec(x_1); return x_14; } } +LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Meta_ArgsPacker_curryProj___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_ArgsPacker_curryProj___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { @@ -9012,7 +9451,7 @@ x_11 = lean_ctor_get(x_9, 1); lean_inc(x_11); lean_dec(x_9); x_12 = lean_unsigned_to_nat(0u); -x_13 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_13 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_14 = l_Array_zipWithAux___at_Lean_Meta_ArgsPacker_curryType___spec__1(x_1, x_10, x_12, x_13); lean_dec(x_10); x_15 = lean_array_size(x_14); @@ -9168,7 +9607,7 @@ x_11 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_11, 0, x_9); lean_ctor_set(x_11, 1, x_8); lean_ctor_set(x_11, 2, x_10); -x_12 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_12 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); @@ -9364,7 +9803,7 @@ x_12 = lean_ctor_get(x_10, 1); lean_inc(x_12); lean_dec(x_10); x_13 = lean_array_to_list(x_11); -x_14 = l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1; +x_14 = l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1; x_15 = l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go___rarg(x_1, x_2, x_4, x_13, x_14, x_5, x_6, x_7, x_8, x_12); return x_15; } @@ -9725,6 +10164,12 @@ l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1_ lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__1); l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__2(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_ArgsPacker_Unary_packType___spec__1___closed__2); +l_Lean_Meta_ArgsPacker_Unary_packType___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__1(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_packType___closed__1); +l_Lean_Meta_ArgsPacker_Unary_packType___closed__2 = _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__2(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_packType___closed__2); +l_Lean_Meta_ArgsPacker_Unary_packType___closed__3 = _init_l_Lean_Meta_ArgsPacker_Unary_packType___closed__3(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_packType___closed__3); l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__1); l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__2 = _init_l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__2(); @@ -9747,8 +10192,20 @@ l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__10 = _init_l_Lean_Meta_ArgsPacker lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__10); l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__11 = _init_l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__11(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack_go___closed__11); +l_Lean_Meta_ArgsPacker_Unary_pack___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__1(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack___closed__1); +l_Lean_Meta_ArgsPacker_Unary_pack___closed__2 = _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__2(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack___closed__2); +l_Lean_Meta_ArgsPacker_Unary_pack___closed__3 = _init_l_Lean_Meta_ArgsPacker_Unary_pack___closed__3(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_pack___closed__3); +l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_unpack___lambda__1___closed__1); l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_unpack___closed__1); +l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__1); +l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_mkTupleElems___closed__2); l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__1); l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__2 = _init_l_Lean_Meta_ArgsPacker_Unary_uncurryType___lambda__2___closed__2(); @@ -9781,6 +10238,10 @@ l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__3 = _init_l_Lean_Meta lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_uncurry___lambda__1___closed__3); l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__1 = _init_l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__1); +l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2 = _init_l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__2); +l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3 = _init_l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_Unary_uncurry___closed__3); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__3___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__3___closed__1(); lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__3___closed__1); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__3___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType_go___lambda__3___closed__2(); @@ -9789,16 +10250,14 @@ l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType___close lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType___closed__1); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType___closed__2(); lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curryType___closed__2); -l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__1); -l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2(); -lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__2); -l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3(); -lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__1___closed__3); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__1(); lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__1); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__2(); lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry_go___lambda__4___closed__2); +l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__1); +l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___lambda__2___closed__2); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1(); lean_mark_persistent(l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__1); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_Unary_curry___closed__2(); @@ -9845,10 +10304,6 @@ l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3 lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__1); l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__2(); lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryType___spec__3___closed__2); -l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1 = _init_l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1(); -lean_mark_persistent(l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__1); -l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2 = _init_l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2(); -lean_mark_persistent(l_Lean_Meta_ArgsPacker_Mutual_uncurryType___closed__2); l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___closed__1(); lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___closed__1); l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___closed__2 = _init_l_Array_foldlMUnsafe_fold___at_Lean_Meta_ArgsPacker_Mutual_uncurryTypeND___spec__2___closed__2(); @@ -9893,10 +10348,16 @@ l_Lean_Meta_ArgsPacker_pack___closed__6 = _init_l_Lean_Meta_ArgsPacker_pack___cl lean_mark_persistent(l_Lean_Meta_ArgsPacker_pack___closed__6); l_Lean_Meta_ArgsPacker_pack___closed__7 = _init_l_Lean_Meta_ArgsPacker_pack___closed__7(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_pack___closed__7); +l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1 = _init_l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__1); +l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2 = _init_l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_curryProj___lambda__3___closed__2); l_Lean_Meta_ArgsPacker_curryProj___closed__1 = _init_l_Lean_Meta_ArgsPacker_curryProj___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_curryProj___closed__1); l_Lean_Meta_ArgsPacker_curryProj___closed__2 = _init_l_Lean_Meta_ArgsPacker_curryProj___closed__2(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_curryProj___closed__2); +l_Lean_Meta_ArgsPacker_curryProj___closed__3 = _init_l_Lean_Meta_ArgsPacker_curryProj___closed__3(); +lean_mark_persistent(l_Lean_Meta_ArgsPacker_curryProj___closed__3); l_Lean_Meta_ArgsPacker_curry___closed__1 = _init_l_Lean_Meta_ArgsPacker_curry___closed__1(); lean_mark_persistent(l_Lean_Meta_ArgsPacker_curry___closed__1); l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go___rarg___closed__1 = _init_l___private_Lean_Meta_ArgsPacker_0__Lean_Meta_ArgsPacker_withCurriedDecl_go___rarg___closed__1(); diff --git a/stage0/stdlib/Lean/Meta/Basic.c b/stage0/stdlib/Lean/Meta/Basic.c index 6053609d36..dc736fce6d 100644 --- a/stage0/stdlib/Lean/Meta/Basic.c +++ b/stage0/stdlib/Lean/Meta/Basic.c @@ -33,6 +33,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___boxed(lean_object*, lean_ LEAN_EXPORT lean_object* l_Lean_Meta_ppExpr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_savingCacheImpl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static uint64_t l_Lean_Meta_withReducibleAndInstances___rarg___lambda__1___closed__1; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_FVarId_hasForwardDeps___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__32; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -171,7 +172,7 @@ LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps_ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewLocalInstancesImp(lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__18; -lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780_(uint8_t, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getConfigWithKey(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_EtaStructMode_toUInt64(uint8_t); LEAN_EXPORT uint64_t l_Lean_Meta_instHashableDefEqCacheKey(lean_object*); @@ -189,6 +190,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_processPostponed___boxed(lean_object*, lean static lean_object* l_Lean_Meta_getLocalDeclFromUserName___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_approxDefEq(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788_(uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_findCore___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__46___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instantiateLevelMVars___at_Lean_Meta_normalizeLevel___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -328,12 +330,13 @@ LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostpo static uint64_t l_Lean_Meta_instInhabitedConfigWithKey___closed__1; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux(lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3; static size_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_recordSynthPendingFailure___spec__2___closed__2; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKind____x40_Lean_Meta_Basic___hyg_210____closed__21; -LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withIncSynthPending(lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewMCtxDepthImp___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_getExprMVarAssignment_x3f___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassQuick_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___lambda__2(lean_object*, lean_object*); static lean_object* l_Lean_Meta_instMonadBacktrackSavedStateMetaM___closed__2; LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitMain___at_Lean_FVarId_hasForwardDeps___spec__35(lean_object*, lean_object*, lean_object*); @@ -345,7 +348,6 @@ LEAN_EXPORT lean_object* l_Array_isEqvAux___at___private_Lean_Meta_Basic_0__Lean LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_beqSynthInstanceCacheKey____x40_Lean_Meta_Basic___hyg_1516____boxed(lean_object*, lean_object*); uint8_t l_Lean_Name_quickLt(lean_object*, lean_object*); lean_object* lean_io_get_num_heartbeats(lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7; LEAN_EXPORT lean_object* l_Lean_LocalContext_foldlM___at_Lean_FVarId_hasForwardDeps___spec__50___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkFreshExprMVarAtCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); @@ -387,12 +389,10 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_FVarId_hasForwardDe LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__9(lean_object*, lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_normalizeLevel___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKind____x40_Lean_Meta_Basic___hyg_210____closed__1; -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_setInlineAttribute___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwUnknownConstant___at___private_Lean_Meta_Basic_0__Lean_Meta_getConstTemp_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withIncSynthPending___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__6; -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_approxDefEqImp(lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___lambda__3___closed__3; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__7; @@ -456,6 +456,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withConfigWithKey___rarg(lean_object*, lean LEAN_EXPORT uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_hashSynthInstanceCacheKey____x40_Lean_Meta_Basic___hyg_1466_(lean_object*); static lean_object* l_Lean_Meta_instReprProjReductionKind___closed__1; LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId___at___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux_process___spec__1___rarg___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_withNewLocalInstance___at___private_Lean_Meta_Basic_0__Lean_Meta_withNewLocalInstancesImp___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_whnfAtMostI(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_withErasedFVars___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -463,7 +464,6 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_r LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingImp(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getNumPostponed___boxed(lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKind____x40_Lean_Meta_Basic___hyg_210____closed__26; -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_checkpointDefEq___at_Lean_Meta_isExprDefEq___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_processPostponed___lambda__1___closed__1; size_t lean_usize_of_nat(lean_object*); @@ -546,6 +546,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedAbstractMVarsResult; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKind____x40_Lean_Meta_Basic___hyg_210____closed__8; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__22; LEAN_EXPORT lean_object* l_Lean_Meta_ProjReductionKind_ofNat___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1(lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_ParamInfo_isImplicit(lean_object*); static lean_object* l_Lean_Meta_instMonadMCtxMetaM___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_FVarId_hasForwardDeps___spec__21___boxed(lean_object*, lean_object*); @@ -597,6 +598,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_liftMkBindingM___rarg___boxed(lean_object*, LEAN_EXPORT lean_object* l_Lean_Meta_getTransparency___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instInhabitedConfig___closed__1; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshExprMVar___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedPostponedEntry; LEAN_EXPORT lean_object* l_Lean_Meta_ProjReductionKind_noConfusion___rarg___lambda__1___boxed(lean_object*); @@ -612,6 +614,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_run___rarg(lean_object*, lean_object* LEAN_EXPORT lean_object* l_Lean_Meta_isInductivePredicate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__33___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaLetTelescope___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND(lean_object*); lean_object* lean_instantiate_level_mvars(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withReducibleAndInstances(lean_object*); @@ -639,6 +642,7 @@ LEAN_EXPORT lean_object* l_Lean_mkFreshMVarId___at_Lean_Meta_mkFreshExprMVarAt__ LEAN_EXPORT lean_object* l_Lean_Meta_getNumPostponed___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_setEnv___at_Lean_Meta_setInlineAttribute___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_MetavarContext_0__Lean_DependsOn_dep_visitApp___at_Lean_FVarId_hasForwardDeps___spec__44(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541_(lean_object*); static lean_object* l_Lean_Meta_instMonadEnvMetaM___lambda__2___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewBinderInfos(lean_object*); @@ -682,7 +686,6 @@ static lean_object* l_Lean_Meta_instAddMessageContextMetaM___closed__1; static lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withDefault___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_mapMetaM___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_liftMkBindingM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__49___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -690,7 +693,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls_loop___rarg___lambda__1(lean LEAN_EXPORT lean_object* l_Lean_Meta_inferType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__17; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_withLocalInstancesImp___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withTrackingZetaDelta___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1005,8 +1007,10 @@ lean_object* l_Lean_MessageData_ofLevel(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Data_PersistentArray_0__Lean_PersistentArray_foldlMAux___at_Lean_FVarId_hasForwardDeps___spec__53___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_abstractRangeM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedConfigWithKey; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Meta_processPostponed___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_FVarId_hasForwardDeps___spec__47(lean_object*, lean_object*, size_t, size_t); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyMAux___at_Lean_FVarId_hasForwardDeps___spec__38___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentArray_anyM___at_Lean_FVarId_hasForwardDeps___spec__29(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t); @@ -1045,7 +1049,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_resetDefEqPermCaches___rarg(lean_object*, l LEAN_EXPORT lean_object* l_Lean_MVarId_setType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_instAlternativeMetaM___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withExistingLocalDecls___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withConfigWithKey___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_processPostponed_loop___closed__5; LEAN_EXPORT lean_object* l_Lean_FVarId_getUserName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1208,7 +1211,9 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescop static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKind____x40_Lean_Meta_Basic___hyg_210____closed__20; LEAN_EXPORT lean_object* l_Lean_PersistentArray_anyM___at_Lean_FVarId_hasForwardDeps___spec__29___boxed(lean_object*, lean_object*); uint8_t l_Lean_Level_any(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_processPostponed___lambda__1___closed__4; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4; static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_withIncRecDepth___spec__1___rarg___closed__6; lean_object* lean_array_uget(lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___rarg___lambda__1(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1234,6 +1239,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallMetaTele static lean_object* l_Lean_Meta_MetaM_toIO___rarg___lambda__1___closed__1; static lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___spec__1___lambda__4___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Meta_processPostponed___spec__1___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_instHashableInfoCacheKey(lean_object*); size_t lean_usize_shift_left(size_t, size_t); @@ -1260,6 +1266,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_mkFreshTypeMVar(uint8_t, lean_object*, lean LEAN_EXPORT lean_object* l_Lean_Meta_withTransparency___rarg___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_hashSynthInstanceCacheKey____x40_Lean_Meta_Basic___hyg_1466____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_getTheoremInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_MetaM_run_x27(lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_map2MetaM(lean_object*, lean_object*, lean_object*); @@ -1273,6 +1280,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_B LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Meta_processPostponed___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getPostponed(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Basic_0__Lean_Meta_processPostponedStep___spec__5(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(uint8_t, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing(lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__54; @@ -1287,7 +1295,6 @@ static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprProjReductionKi LEAN_EXPORT lean_object* l_Lean_Meta_useEtaStruct___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__36; static lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewMCtxDepthImp___rarg___closed__1; -static lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsD___spec__1___rarg(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_liftMkBindingM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_processPostponed_loop___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2800,7 +2807,7 @@ x_10 = lean_ctor_get_uint8(x_1, 7); x_11 = lean_ctor_get_uint8(x_1, 8); x_12 = lean_ctor_get_uint8(x_1, 9); x_13 = lean_unsigned_to_nat(0u); -x_14 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11780_(x_12, x_13); +x_14 = l___private_Init_Meta_0__Lean_Meta_reprTransparencyMode____x40_Init_Meta___hyg_11788_(x_12, x_13); x_15 = l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__32; x_16 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_16, 0, x_15); @@ -2810,7 +2817,7 @@ x_18 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_18, 0, x_16); lean_ctor_set_uint8(x_18, sizeof(void*)*1, x_17); x_19 = lean_ctor_get_uint8(x_1, 10); -x_20 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11928_(x_19, x_13); +x_20 = l___private_Init_Meta_0__Lean_Meta_reprEtaStructMode____x40_Init_Meta___hyg_11936_(x_19, x_13); x_21 = l___private_Lean_Meta_Basic_0__Lean_Meta_reprConfig____x40_Lean_Meta_Basic___hyg_579____closed__12; x_22 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_22, 0, x_21); @@ -38102,6 +38109,125 @@ x_6 = l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsD___spec__1___rarg(x_4 return x_6; } } +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = lean_ctor_get(x_4, 1); +lean_inc(x_5); +lean_dec(x_4); +x_6 = lean_apply_2(x_5, lean_box(0), x_2); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = lean_usize_dec_lt(x_3, x_2); +if (x_5 == 0) +{ +lean_dec(x_1); +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; size_t x_9; size_t x_10; uint8_t x_11; +x_6 = lean_array_uget(x_4, x_3); +x_7 = lean_unsigned_to_nat(0u); +x_8 = lean_array_uset(x_4, x_3, x_7); +x_9 = 1; +x_10 = lean_usize_add(x_3, x_9); +x_11 = !lean_is_exclusive(x_6); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_6, 1); +lean_inc(x_1); +x_13 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1___boxed), 3, 2); +lean_closure_set(x_13, 0, x_1); +lean_closure_set(x_13, 1, x_12); +lean_ctor_set(x_6, 1, x_13); +x_14 = lean_array_uset(x_8, x_3, x_6); +x_3 = x_10; +x_4 = x_14; +goto _start; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_16 = lean_ctor_get(x_6, 0); +x_17 = lean_ctor_get(x_6, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_6); +lean_inc(x_1); +x_18 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1___boxed), 3, 2); +lean_closure_set(x_18, 0, x_1); +lean_closure_set(x_18, 1, x_17); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_16); +lean_ctor_set(x_19, 1, x_18); +x_20 = lean_array_uset(x_8, x_3, x_19); +x_3 = x_10; +x_4 = x_20; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___boxed), 4, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +size_t x_7; size_t x_8; lean_object* x_9; lean_object* x_10; +x_7 = lean_array_size(x_5); +x_8 = 0; +lean_inc(x_2); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg(x_2, x_7, x_8, x_5); +x_10 = l_Lean_Meta_withLocalDeclsD___rarg(x_1, x_2, lean_box(0), x_4, x_9, x_6); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDeclsDND___rarg), 6, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +size_t x_5; size_t x_6; lean_object* x_7; +x_5 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Meta_withLocalDeclsDND___spec__1___rarg(x_1, x_5, x_6, x_4); +return x_7; +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Basic_0__Lean_Meta_withNewBinderInfosImp___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { @@ -58169,7 +58295,7 @@ lean_dec(x_2); return x_7; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -58179,73 +58305,73 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2486____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_2486____closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5; +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5; x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Basic___hyg_3478____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7() { +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6; -x_2 = lean_unsigned_to_nat(19467u); +x_1 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6; +x_2 = lean_unsigned_to_nat(19541u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Meta_processPostponed_loop___closed__3; x_3 = 0; -x_4 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7; +x_4 = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -58848,21 +58974,21 @@ l_Lean_Meta_processPostponed___lambda__1___closed__3 = _init_l_Lean_Meta_process lean_mark_persistent(l_Lean_Meta_processPostponed___lambda__1___closed__3); l_Lean_Meta_processPostponed___lambda__1___closed__4 = _init_l_Lean_Meta_processPostponed___lambda__1___closed__4(); lean_mark_persistent(l_Lean_Meta_processPostponed___lambda__1___closed__4); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__1); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__2); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__3); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__4); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__5); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__6); -l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7(); -lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467____closed__7); -if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19467_(lean_io_mk_world()); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__1); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__2); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__3); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__4); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__5); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__6); +l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7 = _init_l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541____closed__7); +if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Basic___hyg_19541_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/Constructions/BRecOn.c b/stage0/stdlib/Lean/Meta/Constructions/BRecOn.c index e7b548b4cb..57fb9cfec4 100644 --- a/stage0/stdlib/Lean/Meta/Constructions/BRecOn.c +++ b/stage0/stdlib/Lean/Meta/Constructions/BRecOn.c @@ -25,12 +25,10 @@ lean_object* l_Lean_mkAppN(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsD___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___spec__4(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_buildBelowMinorPremise(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___lambda__3___closed__2; -lean_object* l_Lean_Meta_mkPProdFst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___spec__5(size_t, size_t, lean_object*); static lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowFromRec___closed__2; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_mkPProdSnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___spec__1___closed__1; uint8_t l_Array_contains___at_Lean_Meta_arrowDomainsN___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_buildBRecOnMinorPremise_go___spec__3___boxed(lean_object**); @@ -145,6 +143,7 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___lambda__3___boxed__const__1; static lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowFromRec___closed__10; LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowFromRec___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkPProdFstM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowOrIBelow___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_buildBelowMinorPremise_go___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -242,6 +241,7 @@ lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowOrIBelow___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecls___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBRecOnFromRec___spec__6(lean_object*); +lean_object* l_Lean_Meta_mkPProdSndM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_buildBelowMinorPremise_go___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkBRecOnOrBInductionOn(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkDefinitionValInferrringUnsafe___at___private_Lean_Meta_Constructions_BRecOn_0__Lean_mkBelowFromRec___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -263,7 +263,7 @@ lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_9); -x_10 = l_Lean_Meta_mkPProdFst(x_9, x_4, x_5, x_6, x_7, x_8); +x_10 = l_Lean_Meta_mkPProdFstM(x_9, x_4, x_5, x_6, x_7, x_8); if (lean_obj_tag(x_10) == 0) { lean_object* x_11; lean_object* x_12; uint8_t x_13; uint8_t x_14; uint8_t x_15; lean_object* x_16; @@ -288,7 +288,7 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_19 = l_Lean_Meta_mkPProdSnd(x_9, x_4, x_5, x_6, x_7, x_18); +x_19 = l_Lean_Meta_mkPProdSndM(x_9, x_4, x_5, x_6, x_7, x_18); if (lean_obj_tag(x_19) == 0) { lean_object* x_20; lean_object* x_21; lean_object* x_22; @@ -7625,7 +7625,7 @@ lean_inc(x_23); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); -x_41 = l_Lean_Meta_mkPProdFst(x_40, x_20, x_21, x_22, x_23, x_38); +x_41 = l_Lean_Meta_mkPProdFstM(x_40, x_20, x_21, x_22, x_23, x_38); if (lean_obj_tag(x_41) == 0) { lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; lean_object* x_50; @@ -7945,7 +7945,7 @@ lean_inc(x_23); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); -x_109 = l_Lean_Meta_mkPProdFst(x_108, x_20, x_21, x_22, x_23, x_106); +x_109 = l_Lean_Meta_mkPProdFstM(x_108, x_20, x_21, x_22, x_23, x_106); if (lean_obj_tag(x_109) == 0) { lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; uint8_t x_118; lean_object* x_119; diff --git a/stage0/stdlib/Lean/Meta/Eqns.c b/stage0/stdlib/Lean/Meta/Eqns.c index 85d3e78050..69755afc74 100644 --- a/stage0/stdlib/Lean/Meta/Eqns.c +++ b/stage0/stdlib/Lean/Meta/Eqns.c @@ -15,17 +15,18 @@ extern "C" { #endif static lean_object* l_Lean_Meta_registerGetUnfoldEqnFn___lambda__1___closed__1; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1(lean_object*, lean_object*); lean_object* lean_string_utf8_extract(lean_object*, lean_object*, lean_object*); uint8_t lean_is_matcher(lean_object*, lean_object*); lean_object* l_Lean_registerReservedNameAction(lean_object*, lean_object*); static lean_object* l_Lean_PersistentHashMap_insertAux___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__2___closed__1; static lean_object* l_Lean_Meta_markAsRecursive___closed__2; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_eqnThmSuffixBasePrefix; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___lambda__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7; lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); size_t lean_usize_shift_right(size_t, size_t); @@ -33,21 +34,20 @@ static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEq LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_isEqnThm_x3f___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_generateEagerEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_String_anyAux___at_String_isNat___spec__1(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1; static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__3; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_le(size_t, size_t); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_instInhabitedEqnsExtState___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__4(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302_(lean_object*); static lean_object* l_Lean_Meta_eqnAffectingOptions___closed__4; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_uint64_to_usize(uint64_t); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1703_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_markAsRecursive(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__2(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isRecursiveDefinition___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -57,8 +57,10 @@ lean_object* l_Lean_EnvExtensionInterfaceUnsafe_registerExt___rarg(lean_object*, LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_isEqnThm_x3f___spec__1___boxed(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_shouldGenerateEqnThms___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_registerGetUnfoldEqnFn___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_registerGetEqnsFn___lambda__1___boxed(lean_object*, lean_object*, lean_object*); @@ -70,11 +72,13 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Eqns static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__5; static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___lambda__2___closed__2; lean_object* l_Lean_Environment_find_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_registerGetUnfoldEqnFn(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_267____lambda__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); lean_object* l_Lean_PersistentHashMap_find_x3f___at___private_Lean_Structure_0__Lean_getStructureResolutionOrder_x3f___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_alreadyGenerated_x3f_loop___closed__1; extern lean_object* l_Lean_maxRecDepth; lean_object* l_Lean_KVMap_insertCore(lean_object*, lean_object*, lean_object*); @@ -82,7 +86,6 @@ uint8_t lean_string_dec_eq(lean_object*, lean_object*); static size_t l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__5; static lean_object* l_Lean_Meta_markAsRecursive___closed__4; lean_object* lean_string_utf8_byte_size(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_350_(lean_object*); static lean_object* l_Lean_Meta_eqnThmSuffixBasePrefix___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_backward_eqns_deepRecursiveSplit; @@ -103,11 +106,11 @@ static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___s lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2; lean_object* lean_st_ref_take(lean_object*, lean_object*); static uint8_t l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_alreadyGenerated_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_instInhabitedEqnsExtState; @@ -121,12 +124,12 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_shouldGenerateE static lean_object* l_Lean_Meta_eqn1ThmSuffix___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_alreadyGenerated_x3f_loop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_eqnAffectingOptions___closed__2; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8; static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_getEqnsFor_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_98_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getEqnsFor_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFnsRef; @@ -136,12 +139,11 @@ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_44____closed_ lean_object* l_EStateM_pure___rarg(lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__6; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Option_set___at_Lean_Meta_getEqnsFor_x3f___spec__1(lean_object*, lean_object*, uint8_t); -static uint64_t l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_getEqnsFor_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_getEqnsFor_x3f___spec__2(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_shouldGenerateEqnThms___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5; static lean_object* l_Lean_Meta_eqnThmSuffixBasePrefix___closed__2; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__3; static lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1___closed__1; @@ -155,7 +157,6 @@ static lean_object* l_Lean_Meta_getEqnsFor_x3f___lambda__1___closed__1; uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_eqUnfoldThmSuffix___closed__1; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_markAsRecursive___closed__1; extern lean_object* l_Lean_diagnostics; @@ -165,12 +166,14 @@ static lean_object* l_Lean_Meta_registerGetEqnsFn___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_alreadyGenerated_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_isEqnThm_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4; +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerReservedNamePredicate(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1___boxed(lean_object*, lean_object*); lean_object* lean_usize_to_nat(size_t); static lean_object* l_Lean_Meta_eqn1ThmSuffix___closed__1; lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); uint8_t l_Lean_Environment_contains(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1(lean_object*); static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_eqnThmSuffixBase; @@ -186,35 +189,36 @@ LEAN_EXPORT uint8_t l_Lean_Meta_isEqnReservedNameSuffix(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isRecursiveDefinition(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_registerGetEqnsFn___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_registerGetEqnsFn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_eqn1ThmSuffix; LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_267_(lean_object*); static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Meta_generateEagerEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__1; static lean_object* l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__1; LEAN_EXPORT uint8_t l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_267____lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_recExt; lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_eqUnfoldThmSuffix; lean_object* l_Lean_PersistentHashMap_mkEmptyEntries(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_44_(lean_object*); lean_object* l_Lean_TagDeclarationExtension_tag(lean_object*, lean_object*, lean_object*); uint8_t l_String_isPrefixOf(lean_object*, lean_object*); uint8_t l_Lean_Environment_isSafeDefinition(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1669_(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6; uint64_t l_Lean_Name_hash___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_backward_eqns_nonrecursive; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_660____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -222,12 +226,13 @@ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_44____closed_ static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_44____closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getUnfoldEqnFnsRef; lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_eqnsExt; LEAN_EXPORT lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_ensureEqnReservedNamesAvailable(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +static uint64_t l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_unfoldThmSuffix; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_267____closed__1; @@ -245,9 +250,11 @@ LEAN_EXPORT lean_object* l_Lean_ensureReservedNameAvailable___at_Lean_Meta_ensur LEAN_EXPORT lean_object* l_Lean_Option_set___at_Lean_Meta_getEqnsFor_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_isEqnThm___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_registerGetUnfoldEqnFn___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336_(lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__1(lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); @@ -278,14 +285,15 @@ uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__5; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1; static lean_object* l_Lean_Meta_markAsRecursive___closed__3; static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_5____closed__9; static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2___closed__2; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_generateEagerEqns___spec__1(lean_object*, lean_object*, size_t, size_t); lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_isEqnThm(lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); lean_object* l_Lean_throwError___at___private_Lean_Meta_InferType_0__Lean_Meta_inferProjType___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_throwReservedNameNotAvailable___at_Lean_Meta_ensureEqnReservedNamesAvailable___spec__2___closed__3; static lean_object* l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__4; static lean_object* l_Lean_Meta_eqnAffectingOptions___closed__5; @@ -2930,6 +2938,214 @@ lean_dec(x_1); return x_5; } } +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; uint8_t x_7; +x_6 = lean_array_get_size(x_1); +x_7 = lean_nat_dec_lt(x_4, x_6); +lean_dec(x_6); +if (x_7 == 0) +{ +uint8_t x_8; +lean_dec(x_4); +x_8 = 0; +return x_8; +} +else +{ +lean_object* x_9; uint8_t x_10; +x_9 = lean_array_fget(x_1, x_4); +x_10 = lean_name_eq(x_5, x_9); +lean_dec(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_unsigned_to_nat(1u); +x_12 = lean_nat_add(x_4, x_11); +lean_dec(x_4); +x_3 = lean_box(0); +x_4 = x_12; +goto _start; +} +else +{ +uint8_t x_14; +lean_dec(x_4); +x_14 = 1; +return x_14; +} +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2(lean_object* x_1, size_t x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +lean_object* x_4; size_t x_5; size_t x_6; size_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +lean_dec(x_1); +x_5 = 5; +x_6 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_isEqnThm_x3f___spec__2___closed__2; +x_7 = lean_usize_land(x_2, x_6); +x_8 = lean_usize_to_nat(x_7); +x_9 = lean_box(2); +x_10 = lean_array_get(x_9, x_4, x_8); +lean_dec(x_8); +lean_dec(x_4); +switch (lean_obj_tag(x_10)) { +case 0: +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_12 = lean_name_eq(x_3, x_11); +lean_dec(x_11); +return x_12; +} +case 1: +{ +lean_object* x_13; size_t x_14; +x_13 = lean_ctor_get(x_10, 0); +lean_inc(x_13); +lean_dec(x_10); +x_14 = lean_usize_shift_right(x_2, x_5); +x_1 = x_13; +x_2 = x_14; +goto _start; +} +default: +{ +uint8_t x_16; +x_16 = 0; +return x_16; +} +} +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_17 = lean_ctor_get(x_1, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_1, 1); +lean_inc(x_18); +lean_dec(x_1); +x_19 = lean_unsigned_to_nat(0u); +x_20 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3(x_17, x_18, lean_box(0), x_19, x_3); +lean_dec(x_18); +lean_dec(x_17); +return x_20; +} +} +} +LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint64_t x_3; size_t x_4; uint8_t x_5; +x_3 = l_Lean_Name_hash___override(x_2); +x_4 = lean_uint64_to_usize(x_3); +x_5 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2(x_1, x_4, x_2); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_isEqnThm(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_st_ref_get(x_3, x_4); +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; +x_7 = lean_ctor_get(x_5, 0); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +lean_dec(x_7); +x_9 = l_Lean_Meta_instInhabitedEqnsExtState; +x_10 = l_Lean_Meta_isEqnThm_x3f___closed__1; +x_11 = l_Lean_EnvExtension_getState___rarg(x_9, x_10, x_8); +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +x_13 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1(x_12, x_1); +x_14 = lean_box(x_13); +lean_ctor_set(x_5, 0, x_14); +return x_5; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; +x_15 = lean_ctor_get(x_5, 0); +x_16 = lean_ctor_get(x_5, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_5); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +lean_dec(x_15); +x_18 = l_Lean_Meta_instInhabitedEqnsExtState; +x_19 = l_Lean_Meta_isEqnThm_x3f___closed__1; +x_20 = l_Lean_EnvExtension_getState___rarg(x_18, x_19, x_17); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1(x_21, x_1); +x_23 = lean_box(x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_16); +return x_24; +} +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; lean_object* x_7; +x_6 = l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_isEqnThm___spec__3(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_7 = lean_box(x_6); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +size_t x_4; uint8_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_5 = l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_isEqnThm___spec__2(x_1, x_4, x_3); +lean_dec(x_3); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_isEqnThm___spec__1(x_1, x_2); +lean_dec(x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_isEqnThm___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Meta_isEqnThm(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at___private_Lean_Meta_Eqns_0__Lean_Meta_registerEqnThms___spec__3(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -5526,7 +5742,7 @@ x_8 = lean_box(x_7); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1669_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1703_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; uint8_t x_4; @@ -6516,7 +6732,7 @@ x_9 = l_Lean_Meta_getUnfoldEqnFor_x3f(x_1, x_8, x_3, x_4, x_5, x_6, x_7); return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { uint8_t x_5; lean_object* x_6; lean_object* x_7; @@ -6528,15 +6744,15 @@ lean_ctor_set(x_7, 1, x_4); return x_7; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1___boxed), 4, 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2() { _start: { uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; @@ -6566,16 +6782,16 @@ lean_ctor_set_uint8(x_6, 16, x_2); return x_6; } } -static uint64_t _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__3() { +static uint64_t _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__3() { _start: { lean_object* x_1; uint64_t x_2; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2; x_2 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -6584,17 +6800,17 @@ x_2 = lean_array_mk(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; uint64_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_1 = lean_box(0); x_2 = lean_box(0); -x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2; -x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__3; +x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2; +x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__3; x_5 = 0; x_6 = l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__4; -x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4; +x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4; x_8 = lean_unsigned_to_nat(0u); x_9 = lean_alloc_ctor(0, 7, 11); lean_ctor_set(x_9, 0, x_3); @@ -6611,7 +6827,7 @@ lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 10, x_5); return x_9; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -6630,7 +6846,7 @@ lean_ctor_set(x_3, 8, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -6645,7 +6861,7 @@ lean_ctor_set(x_2, 5, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; @@ -6658,15 +6874,15 @@ lean_ctor_set(x_2, 3, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = lean_box(0); -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6; -x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6; +x_3 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7; x_4 = l___private_Lean_Meta_Eqns_0__Lean_Meta_getEqnsFor_x3fCore___closed__3; -x_5 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8; +x_5 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8; x_6 = lean_alloc_ctor(0, 5, 0); lean_ctor_set(x_6, 0, x_2); lean_ctor_set(x_6, 1, x_3); @@ -6676,11 +6892,11 @@ lean_ctor_set(x_6, 4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; uint8_t x_9; -x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1; +x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1; x_8 = l_Lean_Meta_unfoldThmSuffix; x_9 = lean_string_dec_eq(x_1, x_8); if (x_9 == 0) @@ -6694,7 +6910,7 @@ return x_11; else { lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; -x_12 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9; +x_12 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9; x_13 = lean_st_mk_ref(x_12, x_6); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); @@ -6702,7 +6918,7 @@ x_15 = lean_ctor_get(x_13, 1); lean_inc(x_15); lean_dec(x_13); x_16 = 1; -x_17 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5; +x_17 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5; lean_inc(x_14); x_18 = l_Lean_Meta_getUnfoldEqnFor_x3f(x_2, x_16, x_17, x_14, x_4, x_5, x_15); if (lean_obj_tag(x_18) == 0) @@ -6797,7 +7013,7 @@ return x_39; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { uint8_t x_7; @@ -6807,7 +7023,7 @@ if (x_7 == 0) { lean_object* x_8; lean_object* x_9; x_8 = lean_box(0); -x_9 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2(x_1, x_2, x_8, x_4, x_5, x_6); +x_9 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2(x_1, x_2, x_8, x_4, x_5, x_6); lean_dec(x_1); return x_9; } @@ -6815,14 +7031,14 @@ else { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_dec(x_1); -x_10 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9; +x_10 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9; x_11 = lean_st_mk_ref(x_10, x_6); x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); -x_14 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5; +x_14 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5; lean_inc(x_12); x_15 = l_Lean_Meta_getEqnsFor_x3f(x_2, x_14, x_12, x_4, x_5, x_13); if (lean_obj_tag(x_15) == 0) @@ -6919,7 +7135,7 @@ return x_38; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { if (lean_obj_tag(x_1) == 1) @@ -6959,7 +7175,7 @@ else lean_object* x_15; lean_object* x_16; lean_free_object(x_7); x_15 = lean_box(0); -x_16 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3(x_6, x_5, x_15, x_2, x_3, x_10); +x_16 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3(x_6, x_5, x_15, x_2, x_3, x_10); return x_16; } } @@ -6994,7 +7210,7 @@ else { lean_object* x_24; lean_object* x_25; x_24 = lean_box(0); -x_25 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3(x_6, x_5, x_24, x_2, x_3, x_18); +x_25 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3(x_6, x_5, x_24, x_2, x_3, x_18); return x_25; } } @@ -7014,49 +7230,49 @@ return x_28; } } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__4), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__4), 4, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1; x_3 = l_Lean_registerReservedNameAction(x_2, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__1(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__1(x_1, x_2, x_3, x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; -x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2(x_1, x_2, x_3, x_4, x_5, x_6); lean_dec(x_3); lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; -x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__3(x_1, x_2, x_3, x_4, x_5, x_6); +x_7 = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__3(x_1, x_2, x_3, x_4, x_5, x_6); lean_dec(x_3); return x_7; } @@ -7251,7 +7467,7 @@ l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__3 = _init_l_Lean_Meta_getEqnsFo lean_mark_persistent(l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__3); l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__4 = _init_l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__4(); l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__5 = _init_l_Lean_Meta_getEqnsFor_x3f___lambda__2___closed__5(); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1669_(lean_io_mk_world()); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_1703_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l___private_Lean_Meta_Eqns_0__Lean_Meta_getUnfoldEqnFnsRef = lean_io_result_get_value(res); lean_mark_persistent(l___private_Lean_Meta_Eqns_0__Lean_Meta_getUnfoldEqnFnsRef); @@ -7272,26 +7488,26 @@ l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__6 = lean_mark_persistent(l_List_forIn_x27_loop___at_Lean_Meta_getUnfoldEqnFor_x3f___spec__1___closed__6); l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1___closed__1 = _init_l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1___closed__1(); lean_mark_persistent(l_Lean_Meta_getUnfoldEqnFor_x3f___lambda__1___closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__3(); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__4); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__6); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__8); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____lambda__2___closed__9); -l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302____closed__1); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2302_(lean_io_mk_world()); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__1); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__2); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__3(); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__4); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__7); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__8); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____lambda__2___closed__9); +l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336____closed__1); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Eqns___hyg_2336_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/Match/MatchEqs.c b/stage0/stdlib/Lean/Meta/Match/MatchEqs.c index 8e13895ef1..3f12b5e1de 100644 --- a/stage0/stdlib/Lean/Meta/Match/MatchEqs.c +++ b/stage0/stdlib/Lean/Meta/Match/MatchEqs.c @@ -33,7 +33,6 @@ static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_Ma static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__6___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__8; -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_isDone___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -78,6 +77,7 @@ lean_object* l_Lean_getProjectionFnInfo_x3f___at_Lean_Meta_getStuckMVar_x3f___sp LEAN_EXPORT lean_object* l_Lean_Meta_transform_visit_visitLambda___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__9(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__4(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__4___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_proveCondEqThm___lambda__3___closed__1; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_isCastEqRec___closed__3; @@ -91,6 +91,7 @@ static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_Ma LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ConstantInfo_type(lean_object*); lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__15; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -125,7 +126,6 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_M static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__1; uint8_t l_Lean_Expr_isRawNatLit(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__14(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__12___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__1___closed__2; static lean_object* l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__3; @@ -155,6 +155,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___lambda__2___closed__2; lean_object* lean_mk_array(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__3; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__2(lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); extern uint8_t l_instInhabitedBool; @@ -165,6 +166,7 @@ lean_object* l_Lean_Expr_mdata___override(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__2; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__5___lambda__1___boxed(lean_object**); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__4; +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__2___boxed(lean_object**); static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__5___boxed(lean_object**); @@ -177,7 +179,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15; static lean_object* l_Lean_Meta_Match_unfoldNamedPattern___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__4___boxed(lean_object**); lean_object* l_Lean_ConstantInfo_name(lean_object*); @@ -240,6 +241,7 @@ lean_object* l_Lean_Exception_toMessageData(lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__7; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Match_getEquationsForImpl___spec__1___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12; static lean_object* l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; LEAN_EXPORT lean_object* l_ReaderT_bind___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -266,6 +268,7 @@ static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSp LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_instInhabitedPUnit; LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__7(lean_object*); +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_trySubst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -279,6 +282,7 @@ uint8_t l_Lean_Expr_isLambda(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_withSplitterAlts_go___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoalLoop___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_withSplitterAlts_go___rarg___closed__1; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__9___closed__1; size_t lean_ptr_addr(lean_object*); @@ -287,7 +291,6 @@ lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_EnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__4___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13; static lean_object* l_panic___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_substRHS___spec__2___closed__2; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__7___closed__2; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__5; @@ -298,7 +301,6 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelesco LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoalLoop(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__7___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof___closed__2; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__2___closed__6; @@ -325,7 +327,7 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLetDeclImp___rarg(lean LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_withSplitterAlts_go(lean_object*); static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__9___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934_(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static double l_Lean_withTraceNode___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__6___lambda__4___closed__4; @@ -334,6 +336,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at___priva uint8_t lean_expr_eqv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_isDone(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___boxed(lean_object*); lean_object* l_Lean_mkPrivateName(lean_object*, lean_object*); static lean_object* l_Lean_Meta_casesOnStuckLHS___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Match_SimpH_trySubstVarsAndContradiction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -367,7 +370,9 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__6; lean_object* l_Lean_Meta_kabstract(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3___boxed(lean_object*); lean_object* l_Lean_Meta_mkHEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3; lean_object* l_Lean_Meta_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoalLoop___lambda__1___closed__4; @@ -407,6 +412,7 @@ lean_object* l_Lean_Meta_whnfForall(lean_object*, lean_object*, lean_object*, le LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__14___boxed(lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); lean_object* lean_array_pop(lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14; LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope(lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___spec__2(lean_object*); static lean_object* l_Lean_Meta_casesOnStuckLHS___closed__2; @@ -414,6 +420,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Matc LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__4(lean_object*); uint8_t l_List_isEmpty___rarg(lean_object*); static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___closed__1; +LEAN_EXPORT uint8_t l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3(lean_object*); static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__18; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__5___closed__3; @@ -433,13 +440,13 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg( lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__5; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3; lean_object* l_Lean_Name_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_transform_visit_visitLet___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_casesOnStuckLHS_findFVar_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__11___closed__1; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___closed__3; lean_object* l_ST_Prim_Ref_modifyGetUnsafe___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -449,6 +456,7 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_M lean_object* lean_io_mono_nanos_now(lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___closed__4; lean_object* l_Lean_Meta_injections(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8; lean_object* l_Lean_Expr_constName_x21(lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_substRHS___closed__3; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__2___closed__3; @@ -456,10 +464,12 @@ extern lean_object* l_Lean_instInhabitedExpr; static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__7___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__6___lambda__4___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__11___closed__2; static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__2; uint64_t l_Lean_Expr_hash(lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___lambda__2___boxed(lean_object**); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__3___closed__5; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__4___closed__3; @@ -477,6 +487,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelesco LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__1___closed__1; lean_object* l_Lean_RBNode_insert___at_Lean_FVarIdMap_insert___spec__1___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_bind___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__19(lean_object*, lean_object*); @@ -527,6 +538,7 @@ static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSp LEAN_EXPORT lean_object* l_Lean_Meta_Match_SimpH_trySubstVarsAndContradiction___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__6; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_substRHS___closed__2; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__6(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Meta_instMonadMetaM; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -564,12 +576,10 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Match_M lean_object* l_Array_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__10___closed__3; LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8; lean_object* l_Lean_MessageData_ofExpr(lean_object*); lean_object* l_Lean_Meta_Match_isNamedPattern_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_transform___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__6(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__5___closed__2; -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10; uint8_t l_Lean_LocalDecl_isImplementationDetail(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__10(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -582,6 +592,7 @@ static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchE double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoal___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_transform_visit___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__7___boxed__const__1; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4; lean_object* l_Lean_LocalDecl_userName(lean_object*); lean_object* l_Lean_Meta_matchNot_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_transform_visit_visitForall___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -605,6 +616,8 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_M LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__3___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Subarray_get___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16; +LEAN_EXPORT uint8_t l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1(lean_object*); static lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__3___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__4___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__5___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -614,8 +627,10 @@ lean_object* l_Lean_Meta_heqToEq(lean_object*, lean_object*, uint8_t, lean_objec static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__12___closed__2; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___closed__5; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick___spec__10___lambda__3___closed__1; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6; lean_object* l_Lean_Expr_replaceFVars(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__7; LEAN_EXPORT lean_object* l_List_eraseTR_go___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_substRHS___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -631,6 +646,7 @@ static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSp LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoal___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088_(lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__5___lambda__3___closed__2; static lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__10___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_mkMap___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -654,13 +670,14 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Mat LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__3___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__4___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__5___closed__6; LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__3(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoal___spec__1(size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__11___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_MVarId_contradictionQuick(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10; lean_object* l_Lean_indentExpr(lean_object*); LEAN_EXPORT lean_object* lean_get_match_equations_for(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_contains___at___private_Lean_Meta_RecursorInfo_0__Lean_Meta_getMajorPosDepElim___spec__4(lean_object*, lean_object*); @@ -677,7 +694,6 @@ uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_casesOnStuckLHS___lambda__1___closed__2; lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__4___boxed(lean_object**); uint64_t l_Lean_Name_hash___override(lean_object*); @@ -709,6 +725,7 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at___private_Lean_Meta_Match_Mat LEAN_EXPORT lean_object* l_Lean_throwError___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___lambda__6(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3; lean_object* l_Lean_Expr_getAppFn(lean_object*); lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__10; @@ -743,7 +760,6 @@ static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__14; static lean_object* l_panic___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__1___closed__2; static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__1___closed__4; static lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__12; -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -752,12 +768,10 @@ lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_isNamedPatternProof___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__3___closed__6; -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16; size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_transform_visit___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__7___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__3(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Match_forallAltTelescope_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_tryClearMany(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -784,6 +798,7 @@ static lean_object* l_Lean_withTraceNode___at___private_Lean_Meta_Match_MatchEqs LEAN_EXPORT lean_object* l_Lean_Meta_casesOnStuckLHS_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Match_forallAltTelescope_go___spec__5___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler; +static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___lambda__3___boxed(lean_object**); lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); @@ -795,11 +810,9 @@ size_t lean_usize_shift_left(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_isCastEqRec___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_casesOnStuckLHS_findFVar_x3f___closed__1; lean_object* l_Lean_Expr_bindingBody_x21(lean_object*); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAux___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Match_proveCondEqThm_go___closed__2; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___spec__3___boxed(lean_object**); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_injectionAny___spec__4___closed__1; lean_object* l_Lean_Meta_setInlineAttribute(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -884,6 +897,7 @@ LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Mat uint8_t l_Lean_Expr_isFVar(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkEquationsFor___spec__6___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_proveSubgoal___spec__1___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_RBNode_find___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_isCastEqRec___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(lean_object*); lean_object* l_Lean_Meta_isConstructorApp_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -921,12 +935,12 @@ lean_object* l_Lean_Meta_matchEq_x3f(lean_object*, lean_object*, lean_object*, l size_t lean_usize_land(size_t, size_t); static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__1; static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___lambda__2___closed__2; +static lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_casesOnStuckLHS___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_subst_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double lean_float_sub(double, double); -static lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_SimpH_processNextEq___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertTemplate___spec__14___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -16826,6 +16840,205 @@ lean_dec(x_1); return x_7; } } +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Nat", 3, 3); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("elimOffset", 10, 10); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1; +x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT uint8_t l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; +x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3; +x_3 = lean_name_eq(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___boxed), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; +x_8 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1; +x_9 = l_Lean_MVarId_deltaTarget(x_1, x_8, x_3, x_4, x_5, x_6, x_7); +return x_9; +} +} +LEAN_EXPORT uint8_t l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; +x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3; +x_3 = l_Lean_Expr_isConstOf(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("goal's target does not contain `Nat.elimOffset`", 47, 47); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_1); +x_7 = l_Lean_MVarId_getType(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1; +x_11 = lean_find_expr(x_10, x_8); +lean_dec(x_8); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +lean_dec(x_1); +x_12 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3; +x_13 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_12, x_2, x_3, x_4, x_5, x_9); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +return x_13; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_13); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +else +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_11); +x_18 = lean_alloc_closure((void*)(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___boxed), 1, 0); +x_19 = l_Lean_MVarId_deltaTarget(x_1, x_18, x_2, x_3, x_4, x_5, x_9); +return x_19; +} +} +else +{ +uint8_t x_20; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_20 = !lean_is_exclusive(x_7); +if (x_20 == 0) +{ +return x_7; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_7, 0); +x_22 = lean_ctor_get(x_7, 1); +lean_inc(x_22); +lean_inc(x_21); +lean_dec(x_7); +x_23 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__3(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Match_proveCondEqThm_go___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -17168,985 +17381,1045 @@ lean_inc(x_12); x_55 = l_Lean_MVarId_contradiction(x_12, x_54, x_5, x_6, x_7, x_8, x_53); if (lean_obj_tag(x_55) == 0) { -uint8_t x_56; +lean_object* x_56; lean_object* x_57; lean_dec(x_52); lean_dec(x_12); -x_56 = !lean_is_exclusive(x_55); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; -x_57 = lean_ctor_get(x_55, 0); -lean_dec(x_57); -x_58 = l_Lean_Meta_casesOnStuckLHS___closed__2; -lean_ctor_set(x_55, 0, x_58); -x_30 = x_55; -goto block_37; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_55, 1); -lean_inc(x_59); +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); lean_dec(x_55); -x_60 = l_Lean_Meta_casesOnStuckLHS___closed__2; -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_59); -x_30 = x_61; -goto block_37; -} +x_57 = l_Lean_Meta_casesOnStuckLHS___closed__2; +x_15 = x_57; +x_16 = x_56; +goto block_29; } else { +uint8_t x_58; +x_58 = !lean_is_exclusive(x_55); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; uint8_t x_61; +x_59 = lean_ctor_get(x_55, 0); +x_60 = lean_ctor_get(x_55, 1); +x_61 = l_Lean_Exception_isInterrupt(x_59); +if (x_61 == 0) +{ uint8_t x_62; -x_62 = !lean_is_exclusive(x_55); +x_62 = l_Lean_Exception_isRuntime(x_59); if (x_62 == 0) { -lean_object* x_63; lean_object* x_64; uint8_t x_65; -x_63 = lean_ctor_get(x_55, 0); -x_64 = lean_ctor_get(x_55, 1); -x_65 = l_Lean_Exception_isInterrupt(x_63); -if (x_65 == 0) -{ -uint8_t x_66; -x_66 = l_Lean_Exception_isRuntime(x_63); +lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; +lean_free_object(x_55); +lean_dec(x_59); +x_63 = l_Lean_Meta_SavedState_restore(x_52, x_5, x_6, x_7, x_8, x_60); +lean_dec(x_52); +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_64); +x_66 = !lean_is_exclusive(x_65); if (x_66 == 0) { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -lean_free_object(x_55); -lean_dec(x_63); -x_67 = l_Lean_Meta_SavedState_restore(x_52, x_5, x_6, x_7, x_8, x_64); -lean_dec(x_52); -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_65, 0); +x_68 = lean_ctor_get(x_65, 1); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_69 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(x_12, x_5, x_6, x_7, x_8, x_68); +if (lean_obj_tag(x_69) == 0) +{ +uint8_t x_70; lean_dec(x_67); -x_69 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_68); -x_70 = lean_ctor_get(x_69, 0); -lean_inc(x_70); -x_71 = lean_ctor_get(x_69, 1); -lean_inc(x_71); +lean_dec(x_12); +x_70 = !lean_is_exclusive(x_69); +if (x_70 == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = lean_ctor_get(x_69, 0); +x_72 = lean_box(0); +lean_ctor_set_tag(x_65, 1); +lean_ctor_set(x_65, 1, x_72); +lean_ctor_set(x_65, 0, x_71); +x_73 = lean_array_mk(x_65); +lean_ctor_set(x_69, 0, x_73); +x_30 = x_69; +goto block_37; +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_74 = lean_ctor_get(x_69, 0); +x_75 = lean_ctor_get(x_69, 1); +lean_inc(x_75); +lean_inc(x_74); lean_dec(x_69); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_72 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_71); -if (lean_obj_tag(x_72) == 0) -{ -lean_dec(x_70); -lean_dec(x_12); -x_30 = x_72; +x_76 = lean_box(0); +lean_ctor_set_tag(x_65, 1); +lean_ctor_set(x_65, 1, x_76); +lean_ctor_set(x_65, 0, x_74); +x_77 = lean_array_mk(x_65); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_75); +x_30 = x_78; goto block_37; } -else -{ -uint8_t x_73; -x_73 = !lean_is_exclusive(x_72); -if (x_73 == 0) -{ -lean_object* x_74; lean_object* x_75; uint8_t x_76; -x_74 = lean_ctor_get(x_72, 0); -x_75 = lean_ctor_get(x_72, 1); -x_76 = l_Lean_Exception_isInterrupt(x_74); -if (x_76 == 0) -{ -uint8_t x_77; -x_77 = l_Lean_Exception_isRuntime(x_74); -if (x_77 == 0) -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_260; lean_object* x_261; -lean_free_object(x_72); -lean_dec(x_74); -x_78 = l_Lean_Meta_SavedState_restore(x_70, x_5, x_6, x_7, x_8, x_75); -lean_dec(x_70); -x_79 = lean_ctor_get(x_78, 1); -lean_inc(x_79); -lean_dec(x_78); -x_80 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_79); -x_81 = lean_ctor_get(x_80, 0); -lean_inc(x_81); -x_82 = lean_ctor_get(x_80, 1); -lean_inc(x_82); -if (lean_is_exclusive(x_80)) { - lean_ctor_release(x_80, 0); - lean_ctor_release(x_80, 1); - x_83 = x_80; -} else { - lean_dec_ref(x_80); - x_83 = lean_box(0); -} -x_260 = 1; -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_261 = l_Lean_Meta_simpIfTarget(x_12, x_260, x_5, x_6, x_7, x_8, x_82); -if (lean_obj_tag(x_261) == 0) -{ -lean_object* x_262; lean_object* x_263; uint8_t x_264; -x_262 = lean_ctor_get(x_261, 0); -lean_inc(x_262); -x_263 = lean_ctor_get(x_261, 1); -lean_inc(x_263); -lean_dec(x_261); -x_264 = lean_name_eq(x_262, x_12); -if (x_264 == 0) -{ -lean_object* x_265; lean_object* x_266; -lean_dec(x_83); -lean_dec(x_81); -lean_dec(x_12); -x_265 = lean_box(0); -x_266 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_262, x_265, x_5, x_6, x_7, x_8, x_263); -x_30 = x_266; -goto block_37; } else { -lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; -lean_dec(x_262); -x_267 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; -x_268 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_267, x_5, x_6, x_7, x_8, x_263); -x_269 = lean_ctor_get(x_268, 0); -lean_inc(x_269); -x_270 = lean_ctor_get(x_268, 1); -lean_inc(x_270); -lean_dec(x_268); -x_84 = x_269; -x_85 = x_270; -goto block_259; -} -} -else +uint8_t x_79; +lean_free_object(x_65); +x_79 = !lean_is_exclusive(x_69); +if (x_79 == 0) { -lean_object* x_271; lean_object* x_272; -x_271 = lean_ctor_get(x_261, 0); -lean_inc(x_271); -x_272 = lean_ctor_get(x_261, 1); -lean_inc(x_272); -lean_dec(x_261); -x_84 = x_271; -x_85 = x_272; -goto block_259; -} -block_259: +lean_object* x_80; lean_object* x_81; uint8_t x_82; +x_80 = lean_ctor_get(x_69, 0); +x_81 = lean_ctor_get(x_69, 1); +x_82 = l_Lean_Exception_isInterrupt(x_80); +if (x_82 == 0) { -uint8_t x_86; -x_86 = l_Lean_Exception_isInterrupt(x_84); -if (x_86 == 0) +uint8_t x_83; +x_83 = l_Lean_Exception_isRuntime(x_80); +if (x_83 == 0) { -uint8_t x_87; -x_87 = l_Lean_Exception_isRuntime(x_84); -if (x_87 == 0) -{ -lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_202; +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +lean_free_object(x_69); +lean_dec(x_80); +x_84 = l_Lean_Meta_SavedState_restore(x_67, x_5, x_6, x_7, x_8, x_81); +lean_dec(x_67); +x_85 = lean_ctor_get(x_84, 1); +lean_inc(x_85); lean_dec(x_84); -lean_dec(x_83); -x_88 = l_Lean_Meta_SavedState_restore(x_81, x_5, x_6, x_7, x_8, x_85); -lean_dec(x_81); -x_89 = lean_ctor_get(x_88, 1); -lean_inc(x_89); -if (lean_is_exclusive(x_88)) { - lean_ctor_release(x_88, 0); - lean_ctor_release(x_88, 1); - x_90 = x_88; -} else { - lean_dec_ref(x_88); - x_90 = lean_box(0); +x_86 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_85); +x_87 = lean_ctor_get(x_86, 0); +lean_inc(x_87); +x_88 = lean_ctor_get(x_86, 1); +lean_inc(x_88); +lean_dec(x_86); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_89 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_88); +if (lean_obj_tag(x_89) == 0) +{ +lean_dec(x_87); +lean_dec(x_12); +x_30 = x_89; +goto block_37; } -x_91 = lean_box(0); -x_92 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_89); -x_93 = lean_ctor_get(x_92, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_92, 1); -lean_inc(x_94); -if (lean_is_exclusive(x_92)) { - lean_ctor_release(x_92, 0); - lean_ctor_release(x_92, 1); - x_95 = x_92; +else +{ +uint8_t x_90; +x_90 = !lean_is_exclusive(x_89); +if (x_90 == 0) +{ +lean_object* x_91; lean_object* x_92; uint8_t x_93; +x_91 = lean_ctor_get(x_89, 0); +x_92 = lean_ctor_get(x_89, 1); +x_93 = l_Lean_Exception_isInterrupt(x_91); +if (x_93 == 0) +{ +uint8_t x_94; +x_94 = l_Lean_Exception_isRuntime(x_91); +if (x_94 == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; uint8_t x_277; lean_object* x_278; +lean_free_object(x_89); +lean_dec(x_91); +x_95 = l_Lean_Meta_SavedState_restore(x_87, x_5, x_6, x_7, x_8, x_92); +lean_dec(x_87); +x_96 = lean_ctor_get(x_95, 1); +lean_inc(x_96); +lean_dec(x_95); +x_97 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_96); +x_98 = lean_ctor_get(x_97, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_97, 1); +lean_inc(x_99); +if (lean_is_exclusive(x_97)) { + lean_ctor_release(x_97, 0); + lean_ctor_release(x_97, 1); + x_100 = x_97; } else { - lean_dec_ref(x_92); - x_95 = lean_box(0); + lean_dec_ref(x_97); + x_100 = lean_box(0); +} +x_277 = 1; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_278 = l_Lean_Meta_simpIfTarget(x_12, x_277, x_5, x_6, x_7, x_8, x_99); +if (lean_obj_tag(x_278) == 0) +{ +lean_object* x_279; lean_object* x_280; uint8_t x_281; +x_279 = lean_ctor_get(x_278, 0); +lean_inc(x_279); +x_280 = lean_ctor_get(x_278, 1); +lean_inc(x_280); +lean_dec(x_278); +x_281 = lean_name_eq(x_279, x_12); +if (x_281 == 0) +{ +lean_object* x_282; lean_object* x_283; +lean_dec(x_100); +lean_dec(x_98); +lean_dec(x_12); +x_282 = lean_box(0); +x_283 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_279, x_282, x_5, x_6, x_7, x_8, x_280); +x_30 = x_283; +goto block_37; +} +else +{ +lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; +lean_dec(x_279); +x_284 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_285 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_284, x_5, x_6, x_7, x_8, x_280); +x_286 = lean_ctor_get(x_285, 0); +lean_inc(x_286); +x_287 = lean_ctor_get(x_285, 1); +lean_inc(x_287); +lean_dec(x_285); +x_101 = x_286; +x_102 = x_287; +goto block_276; +} +} +else +{ +lean_object* x_288; lean_object* x_289; +x_288 = lean_ctor_get(x_278, 0); +lean_inc(x_288); +x_289 = lean_ctor_get(x_278, 1); +lean_inc(x_289); +lean_dec(x_278); +x_101 = x_288; +x_102 = x_289; +goto block_276; +} +block_276: +{ +uint8_t x_103; +x_103 = l_Lean_Exception_isInterrupt(x_101); +if (x_103 == 0) +{ +uint8_t x_104; +x_104 = l_Lean_Exception_isRuntime(x_101); +if (x_104 == 0) +{ +lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_219; +lean_dec(x_101); +lean_dec(x_100); +x_105 = l_Lean_Meta_SavedState_restore(x_98, x_5, x_6, x_7, x_8, x_102); +lean_dec(x_98); +x_106 = lean_ctor_get(x_105, 1); +lean_inc(x_106); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_107 = x_105; +} else { + lean_dec_ref(x_105); + x_107 = lean_box(0); +} +x_108 = lean_box(0); +x_109 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_106); +x_110 = lean_ctor_get(x_109, 0); +lean_inc(x_110); +x_111 = lean_ctor_get(x_109, 1); +lean_inc(x_111); +if (lean_is_exclusive(x_109)) { + lean_ctor_release(x_109, 0); + lean_ctor_release(x_109, 1); + x_112 = x_109; +} else { + lean_dec_ref(x_109); + x_112 = lean_box(0); } lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_202 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_91, x_5, x_6, x_7, x_8, x_94); -if (lean_obj_tag(x_202) == 0) +x_219 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_108, x_5, x_6, x_7, x_8, x_111); +if (lean_obj_tag(x_219) == 0) { -lean_object* x_203; -x_203 = lean_ctor_get(x_202, 0); -lean_inc(x_203); -if (lean_obj_tag(x_203) == 0) +lean_object* x_220; +x_220 = lean_ctor_get(x_219, 0); +lean_inc(x_220); +if (lean_obj_tag(x_220) == 0) { -lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; -x_204 = lean_ctor_get(x_202, 1); -lean_inc(x_204); -lean_dec(x_202); -x_205 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; -x_206 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_205, x_5, x_6, x_7, x_8, x_204); -x_207 = lean_ctor_get(x_206, 0); -lean_inc(x_207); -x_208 = lean_ctor_get(x_206, 1); -lean_inc(x_208); -lean_dec(x_206); -x_96 = x_207; -x_97 = x_208; -goto block_201; -} -else -{ -lean_object* x_209; lean_object* x_210; uint8_t x_211; -x_209 = lean_ctor_get(x_203, 0); -lean_inc(x_209); -lean_dec(x_203); -x_210 = lean_ctor_get(x_202, 1); -lean_inc(x_210); -lean_dec(x_202); -x_211 = !lean_is_exclusive(x_209); -if (x_211 == 0) -{ -lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; -x_212 = lean_ctor_get(x_209, 0); -x_213 = lean_ctor_get(x_209, 1); -x_214 = lean_ctor_get(x_212, 0); -lean_inc(x_214); -x_215 = lean_ctor_get(x_212, 1); -lean_inc(x_215); -lean_dec(x_212); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_216 = l_Lean_Meta_trySubst(x_214, x_215, x_5, x_6, x_7, x_8, x_210); -if (lean_obj_tag(x_216) == 0) -{ -uint8_t x_217; -lean_dec(x_95); -lean_dec(x_93); -lean_dec(x_90); -lean_dec(x_12); -x_217 = !lean_is_exclusive(x_216); -if (x_217 == 0) -{ -uint8_t x_218; -x_218 = !lean_is_exclusive(x_213); -if (x_218 == 0) -{ -lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; -x_219 = lean_ctor_get(x_216, 0); -x_220 = lean_ctor_get(x_213, 1); -lean_dec(x_220); -x_221 = lean_box(0); -lean_ctor_set_tag(x_213, 1); -lean_ctor_set(x_213, 1, x_221); -lean_ctor_set_tag(x_209, 1); -lean_ctor_set(x_209, 0, x_219); -x_222 = lean_array_mk(x_209); -lean_ctor_set(x_216, 0, x_222); -x_30 = x_216; -goto block_37; -} -else -{ -lean_object* x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; -x_223 = lean_ctor_get(x_216, 0); -x_224 = lean_ctor_get(x_213, 0); +lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; lean_object* x_225; +x_221 = lean_ctor_get(x_219, 1); +lean_inc(x_221); +lean_dec(x_219); +x_222 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_223 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_222, x_5, x_6, x_7, x_8, x_221); +x_224 = lean_ctor_get(x_223, 0); lean_inc(x_224); -lean_dec(x_213); -x_225 = lean_box(0); -x_226 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_226, 0, x_224); -lean_ctor_set(x_226, 1, x_225); -lean_ctor_set_tag(x_209, 1); -lean_ctor_set(x_209, 1, x_226); -lean_ctor_set(x_209, 0, x_223); -x_227 = lean_array_mk(x_209); -lean_ctor_set(x_216, 0, x_227); -x_30 = x_216; -goto block_37; -} +x_225 = lean_ctor_get(x_223, 1); +lean_inc(x_225); +lean_dec(x_223); +x_113 = x_224; +x_114 = x_225; +goto block_218; } else { -lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; -x_228 = lean_ctor_get(x_216, 0); -x_229 = lean_ctor_get(x_216, 1); -lean_inc(x_229); -lean_inc(x_228); -lean_dec(x_216); -x_230 = lean_ctor_get(x_213, 0); -lean_inc(x_230); -if (lean_is_exclusive(x_213)) { - lean_ctor_release(x_213, 0); - lean_ctor_release(x_213, 1); - x_231 = x_213; -} else { - lean_dec_ref(x_213); - x_231 = lean_box(0); -} -x_232 = lean_box(0); -if (lean_is_scalar(x_231)) { - x_233 = lean_alloc_ctor(1, 2, 0); -} else { - x_233 = x_231; - lean_ctor_set_tag(x_233, 1); -} -lean_ctor_set(x_233, 0, x_230); -lean_ctor_set(x_233, 1, x_232); -lean_ctor_set_tag(x_209, 1); -lean_ctor_set(x_209, 1, x_233); -lean_ctor_set(x_209, 0, x_228); -x_234 = lean_array_mk(x_209); -x_235 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_235, 0, x_234); -lean_ctor_set(x_235, 1, x_229); -x_30 = x_235; -goto block_37; -} -} -else +lean_object* x_226; lean_object* x_227; uint8_t x_228; +x_226 = lean_ctor_get(x_220, 0); +lean_inc(x_226); +lean_dec(x_220); +x_227 = lean_ctor_get(x_219, 1); +lean_inc(x_227); +lean_dec(x_219); +x_228 = !lean_is_exclusive(x_226); +if (x_228 == 0) { -lean_object* x_236; lean_object* x_237; -lean_free_object(x_209); -lean_dec(x_213); -x_236 = lean_ctor_get(x_216, 0); -lean_inc(x_236); -x_237 = lean_ctor_get(x_216, 1); -lean_inc(x_237); -lean_dec(x_216); -x_96 = x_236; -x_97 = x_237; -goto block_201; -} -} -else -{ -lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; -x_238 = lean_ctor_get(x_209, 0); -x_239 = lean_ctor_get(x_209, 1); -lean_inc(x_239); -lean_inc(x_238); -lean_dec(x_209); -x_240 = lean_ctor_get(x_238, 0); -lean_inc(x_240); -x_241 = lean_ctor_get(x_238, 1); -lean_inc(x_241); -lean_dec(x_238); +lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; +x_229 = lean_ctor_get(x_226, 0); +x_230 = lean_ctor_get(x_226, 1); +x_231 = lean_ctor_get(x_229, 0); +lean_inc(x_231); +x_232 = lean_ctor_get(x_229, 1); +lean_inc(x_232); +lean_dec(x_229); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -x_242 = l_Lean_Meta_trySubst(x_240, x_241, x_5, x_6, x_7, x_8, x_210); -if (lean_obj_tag(x_242) == 0) +x_233 = l_Lean_Meta_trySubst(x_231, x_232, x_5, x_6, x_7, x_8, x_227); +if (lean_obj_tag(x_233) == 0) { -lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; -lean_dec(x_95); -lean_dec(x_93); -lean_dec(x_90); +uint8_t x_234; +lean_dec(x_112); +lean_dec(x_110); +lean_dec(x_107); lean_dec(x_12); -x_243 = lean_ctor_get(x_242, 0); -lean_inc(x_243); -x_244 = lean_ctor_get(x_242, 1); -lean_inc(x_244); -if (lean_is_exclusive(x_242)) { - lean_ctor_release(x_242, 0); - lean_ctor_release(x_242, 1); - x_245 = x_242; -} else { - lean_dec_ref(x_242); - x_245 = lean_box(0); +x_234 = !lean_is_exclusive(x_233); +if (x_234 == 0) +{ +uint8_t x_235; +x_235 = !lean_is_exclusive(x_230); +if (x_235 == 0) +{ +lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; +x_236 = lean_ctor_get(x_233, 0); +x_237 = lean_ctor_get(x_230, 1); +lean_dec(x_237); +x_238 = lean_box(0); +lean_ctor_set_tag(x_230, 1); +lean_ctor_set(x_230, 1, x_238); +lean_ctor_set_tag(x_226, 1); +lean_ctor_set(x_226, 0, x_236); +x_239 = lean_array_mk(x_226); +lean_ctor_set(x_233, 0, x_239); +x_30 = x_233; +goto block_37; } -x_246 = lean_ctor_get(x_239, 0); +else +{ +lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; +x_240 = lean_ctor_get(x_233, 0); +x_241 = lean_ctor_get(x_230, 0); +lean_inc(x_241); +lean_dec(x_230); +x_242 = lean_box(0); +x_243 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_243, 0, x_241); +lean_ctor_set(x_243, 1, x_242); +lean_ctor_set_tag(x_226, 1); +lean_ctor_set(x_226, 1, x_243); +lean_ctor_set(x_226, 0, x_240); +x_244 = lean_array_mk(x_226); +lean_ctor_set(x_233, 0, x_244); +x_30 = x_233; +goto block_37; +} +} +else +{ +lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; +x_245 = lean_ctor_get(x_233, 0); +x_246 = lean_ctor_get(x_233, 1); lean_inc(x_246); -if (lean_is_exclusive(x_239)) { - lean_ctor_release(x_239, 0); - lean_ctor_release(x_239, 1); - x_247 = x_239; +lean_inc(x_245); +lean_dec(x_233); +x_247 = lean_ctor_get(x_230, 0); +lean_inc(x_247); +if (lean_is_exclusive(x_230)) { + lean_ctor_release(x_230, 0); + lean_ctor_release(x_230, 1); + x_248 = x_230; } else { - lean_dec_ref(x_239); - x_247 = lean_box(0); + lean_dec_ref(x_230); + x_248 = lean_box(0); } -x_248 = lean_box(0); -if (lean_is_scalar(x_247)) { - x_249 = lean_alloc_ctor(1, 2, 0); +x_249 = lean_box(0); +if (lean_is_scalar(x_248)) { + x_250 = lean_alloc_ctor(1, 2, 0); } else { - x_249 = x_247; - lean_ctor_set_tag(x_249, 1); + x_250 = x_248; + lean_ctor_set_tag(x_250, 1); } -lean_ctor_set(x_249, 0, x_246); -lean_ctor_set(x_249, 1, x_248); -x_250 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_250, 0, x_243); +lean_ctor_set(x_250, 0, x_247); lean_ctor_set(x_250, 1, x_249); -x_251 = lean_array_mk(x_250); -if (lean_is_scalar(x_245)) { - x_252 = lean_alloc_ctor(0, 2, 0); -} else { - x_252 = x_245; -} +lean_ctor_set_tag(x_226, 1); +lean_ctor_set(x_226, 1, x_250); +lean_ctor_set(x_226, 0, x_245); +x_251 = lean_array_mk(x_226); +x_252 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_252, 0, x_251); -lean_ctor_set(x_252, 1, x_244); +lean_ctor_set(x_252, 1, x_246); x_30 = x_252; goto block_37; } +} else { lean_object* x_253; lean_object* x_254; -lean_dec(x_239); -x_253 = lean_ctor_get(x_242, 0); +lean_free_object(x_226); +lean_dec(x_230); +x_253 = lean_ctor_get(x_233, 0); lean_inc(x_253); -x_254 = lean_ctor_get(x_242, 1); +x_254 = lean_ctor_get(x_233, 1); lean_inc(x_254); -lean_dec(x_242); -x_96 = x_253; -x_97 = x_254; -goto block_201; +lean_dec(x_233); +x_113 = x_253; +x_114 = x_254; +goto block_218; +} +} +else +{ +lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; +x_255 = lean_ctor_get(x_226, 0); +x_256 = lean_ctor_get(x_226, 1); +lean_inc(x_256); +lean_inc(x_255); +lean_dec(x_226); +x_257 = lean_ctor_get(x_255, 0); +lean_inc(x_257); +x_258 = lean_ctor_get(x_255, 1); +lean_inc(x_258); +lean_dec(x_255); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_259 = l_Lean_Meta_trySubst(x_257, x_258, x_5, x_6, x_7, x_8, x_227); +if (lean_obj_tag(x_259) == 0) +{ +lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; +lean_dec(x_112); +lean_dec(x_110); +lean_dec(x_107); +lean_dec(x_12); +x_260 = lean_ctor_get(x_259, 0); +lean_inc(x_260); +x_261 = lean_ctor_get(x_259, 1); +lean_inc(x_261); +if (lean_is_exclusive(x_259)) { + lean_ctor_release(x_259, 0); + lean_ctor_release(x_259, 1); + x_262 = x_259; +} else { + lean_dec_ref(x_259); + x_262 = lean_box(0); +} +x_263 = lean_ctor_get(x_256, 0); +lean_inc(x_263); +if (lean_is_exclusive(x_256)) { + lean_ctor_release(x_256, 0); + lean_ctor_release(x_256, 1); + x_264 = x_256; +} else { + lean_dec_ref(x_256); + x_264 = lean_box(0); +} +x_265 = lean_box(0); +if (lean_is_scalar(x_264)) { + x_266 = lean_alloc_ctor(1, 2, 0); +} else { + x_266 = x_264; + lean_ctor_set_tag(x_266, 1); +} +lean_ctor_set(x_266, 0, x_263); +lean_ctor_set(x_266, 1, x_265); +x_267 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_267, 0, x_260); +lean_ctor_set(x_267, 1, x_266); +x_268 = lean_array_mk(x_267); +if (lean_is_scalar(x_262)) { + x_269 = lean_alloc_ctor(0, 2, 0); +} else { + x_269 = x_262; +} +lean_ctor_set(x_269, 0, x_268); +lean_ctor_set(x_269, 1, x_261); +x_30 = x_269; +goto block_37; +} +else +{ +lean_object* x_270; lean_object* x_271; +lean_dec(x_256); +x_270 = lean_ctor_get(x_259, 0); +lean_inc(x_270); +x_271 = lean_ctor_get(x_259, 1); +lean_inc(x_271); +lean_dec(x_259); +x_113 = x_270; +x_114 = x_271; +goto block_218; } } } } else { -lean_object* x_255; lean_object* x_256; -x_255 = lean_ctor_get(x_202, 0); -lean_inc(x_255); -x_256 = lean_ctor_get(x_202, 1); -lean_inc(x_256); -lean_dec(x_202); -x_96 = x_255; -x_97 = x_256; -goto block_201; +lean_object* x_272; lean_object* x_273; +x_272 = lean_ctor_get(x_219, 0); +lean_inc(x_272); +x_273 = lean_ctor_get(x_219, 1); +lean_inc(x_273); +lean_dec(x_219); +x_113 = x_272; +x_114 = x_273; +goto block_218; } -block_201: +block_218: { -uint8_t x_98; -x_98 = l_Lean_Exception_isInterrupt(x_96); -if (x_98 == 0) +uint8_t x_115; +x_115 = l_Lean_Exception_isInterrupt(x_113); +if (x_115 == 0) { -uint8_t x_99; -x_99 = l_Lean_Exception_isRuntime(x_96); -if (x_99 == 0) +uint8_t x_116; +x_116 = l_Lean_Exception_isRuntime(x_113); +if (x_116 == 0) { -lean_object* x_100; uint8_t x_101; -lean_dec(x_96); -lean_dec(x_95); -x_100 = l_Lean_Meta_SavedState_restore(x_93, x_5, x_6, x_7, x_8, x_97); -lean_dec(x_93); -x_101 = !lean_is_exclusive(x_100); -if (x_101 == 0) +lean_object* x_117; uint8_t x_118; +lean_dec(x_113); +lean_dec(x_112); +x_117 = l_Lean_Meta_SavedState_restore(x_110, x_5, x_6, x_7, x_8, x_114); +lean_dec(x_110); +x_118 = !lean_is_exclusive(x_117); +if (x_118 == 0) { -lean_object* x_102; lean_object* x_103; lean_object* x_104; uint8_t x_105; -x_102 = lean_ctor_get(x_100, 1); -x_103 = lean_ctor_get(x_100, 0); -lean_dec(x_103); -x_104 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_102); -x_105 = !lean_is_exclusive(x_104); -if (x_105 == 0) +lean_object* x_119; lean_object* x_120; lean_object* x_121; uint8_t x_122; +x_119 = lean_ctor_get(x_117, 1); +x_120 = lean_ctor_get(x_117, 0); +lean_dec(x_120); +x_121 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_119); +x_122 = !lean_is_exclusive(x_121); +if (x_122 == 0) { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_106 = lean_ctor_get(x_104, 0); -x_107 = lean_ctor_get(x_104, 1); +lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_123 = lean_ctor_get(x_121, 0); +x_124 = lean_ctor_get(x_121, 1); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_108 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_107); -if (lean_obj_tag(x_108) == 0) +x_125 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_124); +if (lean_obj_tag(x_125) == 0) { -lean_free_object(x_104); -lean_dec(x_106); -lean_free_object(x_100); -lean_dec(x_90); +lean_free_object(x_121); +lean_dec(x_123); +lean_free_object(x_117); +lean_dec(x_107); lean_dec(x_12); -x_30 = x_108; +x_30 = x_125; goto block_37; } else { -uint8_t x_109; -x_109 = !lean_is_exclusive(x_108); -if (x_109 == 0) +uint8_t x_126; +x_126 = !lean_is_exclusive(x_125); +if (x_126 == 0) { -lean_object* x_110; lean_object* x_111; uint8_t x_112; -x_110 = lean_ctor_get(x_108, 0); -x_111 = lean_ctor_get(x_108, 1); -x_112 = l_Lean_Exception_isInterrupt(x_110); -if (x_112 == 0) +lean_object* x_127; lean_object* x_128; uint8_t x_129; +x_127 = lean_ctor_get(x_125, 0); +x_128 = lean_ctor_get(x_125, 1); +x_129 = l_Lean_Exception_isInterrupt(x_127); +if (x_129 == 0) { -uint8_t x_113; -x_113 = l_Lean_Exception_isRuntime(x_110); -if (x_113 == 0) +uint8_t x_130; +x_130 = l_Lean_Exception_isRuntime(x_127); +if (x_130 == 0) { -lean_object* x_114; uint8_t x_115; -lean_free_object(x_108); -lean_dec(x_110); -x_114 = l_Lean_Meta_SavedState_restore(x_106, x_5, x_6, x_7, x_8, x_111); -lean_dec(x_106); -x_115 = !lean_is_exclusive(x_114); -if (x_115 == 0) +lean_object* x_131; uint8_t x_132; +lean_free_object(x_125); +lean_dec(x_127); +x_131 = l_Lean_Meta_SavedState_restore(x_123, x_5, x_6, x_7, x_8, x_128); +lean_dec(x_123); +x_132 = !lean_is_exclusive(x_131); +if (x_132 == 0) { -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; -x_116 = lean_ctor_get(x_114, 1); -x_117 = lean_ctor_get(x_114, 0); -lean_dec(x_117); -lean_inc(x_2); -x_118 = l_Lean_MessageData_ofName(x_2); -x_119 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -lean_ctor_set_tag(x_114, 7); -lean_ctor_set(x_114, 1, x_118); -lean_ctor_set(x_114, 0, x_119); -x_120 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -lean_ctor_set_tag(x_104, 7); -lean_ctor_set(x_104, 1, x_120); -lean_ctor_set(x_104, 0, x_114); -x_121 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_121, 0, x_12); -lean_ctor_set_tag(x_100, 7); -lean_ctor_set(x_100, 1, x_121); -lean_ctor_set(x_100, 0, x_104); -x_122 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_90)) { - x_123 = lean_alloc_ctor(7, 2, 0); -} else { - x_123 = x_90; - lean_ctor_set_tag(x_123, 7); -} -lean_ctor_set(x_123, 0, x_100); -lean_ctor_set(x_123, 1, x_122); -x_124 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_123, x_5, x_6, x_7, x_8, x_116); -x_30 = x_124; -goto block_37; -} -else -{ -lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; -x_125 = lean_ctor_get(x_114, 1); -lean_inc(x_125); -lean_dec(x_114); -lean_inc(x_2); -x_126 = l_Lean_MessageData_ofName(x_2); -x_127 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -x_128 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_126); -x_129 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -lean_ctor_set_tag(x_104, 7); -lean_ctor_set(x_104, 1, x_129); -lean_ctor_set(x_104, 0, x_128); -x_130 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_130, 0, x_12); -lean_ctor_set_tag(x_100, 7); -lean_ctor_set(x_100, 1, x_130); -lean_ctor_set(x_100, 0, x_104); -x_131 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_90)) { - x_132 = lean_alloc_ctor(7, 2, 0); -} else { - x_132 = x_90; - lean_ctor_set_tag(x_132, 7); -} -lean_ctor_set(x_132, 0, x_100); -lean_ctor_set(x_132, 1, x_131); -x_133 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_132, x_5, x_6, x_7, x_8, x_125); -x_30 = x_133; -goto block_37; -} -} -else -{ -lean_free_object(x_104); -lean_dec(x_106); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -x_30 = x_108; -goto block_37; -} -} -else -{ -lean_free_object(x_104); -lean_dec(x_106); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -x_30 = x_108; -goto block_37; -} -} -else -{ -lean_object* x_134; lean_object* x_135; uint8_t x_136; -x_134 = lean_ctor_get(x_108, 0); -x_135 = lean_ctor_get(x_108, 1); -lean_inc(x_135); -lean_inc(x_134); -lean_dec(x_108); -x_136 = l_Lean_Exception_isInterrupt(x_134); -if (x_136 == 0) -{ -uint8_t x_137; -x_137 = l_Lean_Exception_isRuntime(x_134); -if (x_137 == 0) -{ -lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; +x_133 = lean_ctor_get(x_131, 1); +x_134 = lean_ctor_get(x_131, 0); lean_dec(x_134); -x_138 = l_Lean_Meta_SavedState_restore(x_106, x_5, x_6, x_7, x_8, x_135); -lean_dec(x_106); -x_139 = lean_ctor_get(x_138, 1); -lean_inc(x_139); -if (lean_is_exclusive(x_138)) { - lean_ctor_release(x_138, 0); - lean_ctor_release(x_138, 1); - x_140 = x_138; -} else { - lean_dec_ref(x_138); - x_140 = lean_box(0); -} lean_inc(x_2); -x_141 = l_Lean_MessageData_ofName(x_2); -x_142 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_140)) { - x_143 = lean_alloc_ctor(7, 2, 0); +x_135 = l_Lean_MessageData_ofName(x_2); +x_136 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +lean_ctor_set_tag(x_131, 7); +lean_ctor_set(x_131, 1, x_135); +lean_ctor_set(x_131, 0, x_136); +x_137 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +lean_ctor_set_tag(x_121, 7); +lean_ctor_set(x_121, 1, x_137); +lean_ctor_set(x_121, 0, x_131); +x_138 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_138, 0, x_12); +lean_ctor_set_tag(x_117, 7); +lean_ctor_set(x_117, 1, x_138); +lean_ctor_set(x_117, 0, x_121); +x_139 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_107)) { + x_140 = lean_alloc_ctor(7, 2, 0); } else { - x_143 = x_140; - lean_ctor_set_tag(x_143, 7); + x_140 = x_107; + lean_ctor_set_tag(x_140, 7); } -lean_ctor_set(x_143, 0, x_142); -lean_ctor_set(x_143, 1, x_141); -x_144 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -lean_ctor_set_tag(x_104, 7); -lean_ctor_set(x_104, 1, x_144); -lean_ctor_set(x_104, 0, x_143); -x_145 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_145, 0, x_12); -lean_ctor_set_tag(x_100, 7); -lean_ctor_set(x_100, 1, x_145); -lean_ctor_set(x_100, 0, x_104); -x_146 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_90)) { - x_147 = lean_alloc_ctor(7, 2, 0); -} else { - x_147 = x_90; - lean_ctor_set_tag(x_147, 7); -} -lean_ctor_set(x_147, 0, x_100); -lean_ctor_set(x_147, 1, x_146); -x_148 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_147, x_5, x_6, x_7, x_8, x_139); -x_30 = x_148; +lean_ctor_set(x_140, 0, x_117); +lean_ctor_set(x_140, 1, x_139); +x_141 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_140, x_5, x_6, x_7, x_8, x_133); +x_30 = x_141; goto block_37; } else { -lean_object* x_149; -lean_free_object(x_104); -lean_dec(x_106); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -x_149 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_149, 0, x_134); -lean_ctor_set(x_149, 1, x_135); -x_30 = x_149; -goto block_37; +lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; +x_142 = lean_ctor_get(x_131, 1); +lean_inc(x_142); +lean_dec(x_131); +lean_inc(x_2); +x_143 = l_Lean_MessageData_ofName(x_2); +x_144 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +x_145 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_145, 0, x_144); +lean_ctor_set(x_145, 1, x_143); +x_146 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +lean_ctor_set_tag(x_121, 7); +lean_ctor_set(x_121, 1, x_146); +lean_ctor_set(x_121, 0, x_145); +x_147 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_147, 0, x_12); +lean_ctor_set_tag(x_117, 7); +lean_ctor_set(x_117, 1, x_147); +lean_ctor_set(x_117, 0, x_121); +x_148 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_107)) { + x_149 = lean_alloc_ctor(7, 2, 0); +} else { + x_149 = x_107; + lean_ctor_set_tag(x_149, 7); } -} -else -{ -lean_object* x_150; -lean_free_object(x_104); -lean_dec(x_106); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -x_150 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_150, 0, x_134); -lean_ctor_set(x_150, 1, x_135); +lean_ctor_set(x_149, 0, x_117); +lean_ctor_set(x_149, 1, x_148); +x_150 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_149, x_5, x_6, x_7, x_8, x_142); x_30 = x_150; goto block_37; } } +else +{ +lean_free_object(x_121); +lean_dec(x_123); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +x_30 = x_125; +goto block_37; } } else { -lean_object* x_151; lean_object* x_152; lean_object* x_153; -x_151 = lean_ctor_get(x_104, 0); -x_152 = lean_ctor_get(x_104, 1); +lean_free_object(x_121); +lean_dec(x_123); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +x_30 = x_125; +goto block_37; +} +} +else +{ +lean_object* x_151; lean_object* x_152; uint8_t x_153; +x_151 = lean_ctor_get(x_125, 0); +x_152 = lean_ctor_get(x_125, 1); lean_inc(x_152); lean_inc(x_151); -lean_dec(x_104); +lean_dec(x_125); +x_153 = l_Lean_Exception_isInterrupt(x_151); +if (x_153 == 0) +{ +uint8_t x_154; +x_154 = l_Lean_Exception_isRuntime(x_151); +if (x_154 == 0) +{ +lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_151); +x_155 = l_Lean_Meta_SavedState_restore(x_123, x_5, x_6, x_7, x_8, x_152); +lean_dec(x_123); +x_156 = lean_ctor_get(x_155, 1); +lean_inc(x_156); +if (lean_is_exclusive(x_155)) { + lean_ctor_release(x_155, 0); + lean_ctor_release(x_155, 1); + x_157 = x_155; +} else { + lean_dec_ref(x_155); + x_157 = lean_box(0); +} +lean_inc(x_2); +x_158 = l_Lean_MessageData_ofName(x_2); +x_159 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_157)) { + x_160 = lean_alloc_ctor(7, 2, 0); +} else { + x_160 = x_157; + lean_ctor_set_tag(x_160, 7); +} +lean_ctor_set(x_160, 0, x_159); +lean_ctor_set(x_160, 1, x_158); +x_161 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +lean_ctor_set_tag(x_121, 7); +lean_ctor_set(x_121, 1, x_161); +lean_ctor_set(x_121, 0, x_160); +x_162 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_162, 0, x_12); +lean_ctor_set_tag(x_117, 7); +lean_ctor_set(x_117, 1, x_162); +lean_ctor_set(x_117, 0, x_121); +x_163 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_107)) { + x_164 = lean_alloc_ctor(7, 2, 0); +} else { + x_164 = x_107; + lean_ctor_set_tag(x_164, 7); +} +lean_ctor_set(x_164, 0, x_117); +lean_ctor_set(x_164, 1, x_163); +x_165 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_164, x_5, x_6, x_7, x_8, x_156); +x_30 = x_165; +goto block_37; +} +else +{ +lean_object* x_166; +lean_free_object(x_121); +lean_dec(x_123); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +x_166 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_166, 0, x_151); +lean_ctor_set(x_166, 1, x_152); +x_30 = x_166; +goto block_37; +} +} +else +{ +lean_object* x_167; +lean_free_object(x_121); +lean_dec(x_123); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +x_167 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_167, 0, x_151); +lean_ctor_set(x_167, 1, x_152); +x_30 = x_167; +goto block_37; +} +} +} +} +else +{ +lean_object* x_168; lean_object* x_169; lean_object* x_170; +x_168 = lean_ctor_get(x_121, 0); +x_169 = lean_ctor_get(x_121, 1); +lean_inc(x_169); +lean_inc(x_168); +lean_dec(x_121); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_153 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_152); -if (lean_obj_tag(x_153) == 0) +x_170 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_169); +if (lean_obj_tag(x_170) == 0) { -lean_dec(x_151); -lean_free_object(x_100); -lean_dec(x_90); +lean_dec(x_168); +lean_free_object(x_117); +lean_dec(x_107); lean_dec(x_12); -x_30 = x_153; -goto block_37; -} -else -{ -lean_object* x_154; lean_object* x_155; lean_object* x_156; uint8_t x_157; -x_154 = lean_ctor_get(x_153, 0); -lean_inc(x_154); -x_155 = lean_ctor_get(x_153, 1); -lean_inc(x_155); -if (lean_is_exclusive(x_153)) { - lean_ctor_release(x_153, 0); - lean_ctor_release(x_153, 1); - x_156 = x_153; -} else { - lean_dec_ref(x_153); - x_156 = lean_box(0); -} -x_157 = l_Lean_Exception_isInterrupt(x_154); -if (x_157 == 0) -{ -uint8_t x_158; -x_158 = l_Lean_Exception_isRuntime(x_154); -if (x_158 == 0) -{ -lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; -lean_dec(x_156); -lean_dec(x_154); -x_159 = l_Lean_Meta_SavedState_restore(x_151, x_5, x_6, x_7, x_8, x_155); -lean_dec(x_151); -x_160 = lean_ctor_get(x_159, 1); -lean_inc(x_160); -if (lean_is_exclusive(x_159)) { - lean_ctor_release(x_159, 0); - lean_ctor_release(x_159, 1); - x_161 = x_159; -} else { - lean_dec_ref(x_159); - x_161 = lean_box(0); -} -lean_inc(x_2); -x_162 = l_Lean_MessageData_ofName(x_2); -x_163 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_161)) { - x_164 = lean_alloc_ctor(7, 2, 0); -} else { - x_164 = x_161; - lean_ctor_set_tag(x_164, 7); -} -lean_ctor_set(x_164, 0, x_163); -lean_ctor_set(x_164, 1, x_162); -x_165 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -x_166 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_166, 0, x_164); -lean_ctor_set(x_166, 1, x_165); -x_167 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_167, 0, x_12); -lean_ctor_set_tag(x_100, 7); -lean_ctor_set(x_100, 1, x_167); -lean_ctor_set(x_100, 0, x_166); -x_168 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_90)) { - x_169 = lean_alloc_ctor(7, 2, 0); -} else { - x_169 = x_90; - lean_ctor_set_tag(x_169, 7); -} -lean_ctor_set(x_169, 0, x_100); -lean_ctor_set(x_169, 1, x_168); -x_170 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_169, x_5, x_6, x_7, x_8, x_160); x_30 = x_170; goto block_37; } else { -lean_object* x_171; -lean_dec(x_151); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -if (lean_is_scalar(x_156)) { - x_171 = lean_alloc_ctor(1, 2, 0); +lean_object* x_171; lean_object* x_172; lean_object* x_173; uint8_t x_174; +x_171 = lean_ctor_get(x_170, 0); +lean_inc(x_171); +x_172 = lean_ctor_get(x_170, 1); +lean_inc(x_172); +if (lean_is_exclusive(x_170)) { + lean_ctor_release(x_170, 0); + lean_ctor_release(x_170, 1); + x_173 = x_170; } else { - x_171 = x_156; + lean_dec_ref(x_170); + x_173 = lean_box(0); } -lean_ctor_set(x_171, 0, x_154); -lean_ctor_set(x_171, 1, x_155); -x_30 = x_171; -goto block_37; -} -} -else +x_174 = l_Lean_Exception_isInterrupt(x_171); +if (x_174 == 0) { -lean_object* x_172; -lean_dec(x_151); -lean_free_object(x_100); -lean_dec(x_90); -lean_dec(x_12); -if (lean_is_scalar(x_156)) { - x_172 = lean_alloc_ctor(1, 2, 0); +uint8_t x_175; +x_175 = l_Lean_Exception_isRuntime(x_171); +if (x_175 == 0) +{ +lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; +lean_dec(x_173); +lean_dec(x_171); +x_176 = l_Lean_Meta_SavedState_restore(x_168, x_5, x_6, x_7, x_8, x_172); +lean_dec(x_168); +x_177 = lean_ctor_get(x_176, 1); +lean_inc(x_177); +if (lean_is_exclusive(x_176)) { + lean_ctor_release(x_176, 0); + lean_ctor_release(x_176, 1); + x_178 = x_176; } else { - x_172 = x_156; + lean_dec_ref(x_176); + x_178 = lean_box(0); } -lean_ctor_set(x_172, 0, x_154); -lean_ctor_set(x_172, 1, x_155); -x_30 = x_172; -goto block_37; -} -} -} -} -else -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; -x_173 = lean_ctor_get(x_100, 1); -lean_inc(x_173); -lean_dec(x_100); -x_174 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_173); -x_175 = lean_ctor_get(x_174, 0); -lean_inc(x_175); -x_176 = lean_ctor_get(x_174, 1); -lean_inc(x_176); -if (lean_is_exclusive(x_174)) { - lean_ctor_release(x_174, 0); - lean_ctor_release(x_174, 1); - x_177 = x_174; +lean_inc(x_2); +x_179 = l_Lean_MessageData_ofName(x_2); +x_180 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_178)) { + x_181 = lean_alloc_ctor(7, 2, 0); } else { - lean_dec_ref(x_174); - x_177 = lean_box(0); -} -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_178 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_176); -if (lean_obj_tag(x_178) == 0) -{ -lean_dec(x_177); -lean_dec(x_175); -lean_dec(x_90); -lean_dec(x_12); -x_30 = x_178; -goto block_37; -} -else -{ -lean_object* x_179; lean_object* x_180; lean_object* x_181; uint8_t x_182; -x_179 = lean_ctor_get(x_178, 0); -lean_inc(x_179); -x_180 = lean_ctor_get(x_178, 1); -lean_inc(x_180); -if (lean_is_exclusive(x_178)) { - lean_ctor_release(x_178, 0); - lean_ctor_release(x_178, 1); x_181 = x_178; -} else { - lean_dec_ref(x_178); - x_181 = lean_box(0); + lean_ctor_set_tag(x_181, 7); } -x_182 = l_Lean_Exception_isInterrupt(x_179); -if (x_182 == 0) -{ -uint8_t x_183; -x_183 = l_Lean_Exception_isRuntime(x_179); -if (x_183 == 0) -{ -lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; -lean_dec(x_181); -lean_dec(x_179); -x_184 = l_Lean_Meta_SavedState_restore(x_175, x_5, x_6, x_7, x_8, x_180); -lean_dec(x_175); -x_185 = lean_ctor_get(x_184, 1); -lean_inc(x_185); -if (lean_is_exclusive(x_184)) { - lean_ctor_release(x_184, 0); - lean_ctor_release(x_184, 1); - x_186 = x_184; +lean_ctor_set(x_181, 0, x_180); +lean_ctor_set(x_181, 1, x_179); +x_182 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +x_183 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_183, 0, x_181); +lean_ctor_set(x_183, 1, x_182); +x_184 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_184, 0, x_12); +lean_ctor_set_tag(x_117, 7); +lean_ctor_set(x_117, 1, x_184); +lean_ctor_set(x_117, 0, x_183); +x_185 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_107)) { + x_186 = lean_alloc_ctor(7, 2, 0); } else { - lean_dec_ref(x_184); - x_186 = lean_box(0); + x_186 = x_107; + lean_ctor_set_tag(x_186, 7); +} +lean_ctor_set(x_186, 0, x_117); +lean_ctor_set(x_186, 1, x_185); +x_187 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_186, x_5, x_6, x_7, x_8, x_177); +x_30 = x_187; +goto block_37; +} +else +{ +lean_object* x_188; +lean_dec(x_168); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +if (lean_is_scalar(x_173)) { + x_188 = lean_alloc_ctor(1, 2, 0); +} else { + x_188 = x_173; +} +lean_ctor_set(x_188, 0, x_171); +lean_ctor_set(x_188, 1, x_172); +x_30 = x_188; +goto block_37; +} +} +else +{ +lean_object* x_189; +lean_dec(x_168); +lean_free_object(x_117); +lean_dec(x_107); +lean_dec(x_12); +if (lean_is_scalar(x_173)) { + x_189 = lean_alloc_ctor(1, 2, 0); +} else { + x_189 = x_173; +} +lean_ctor_set(x_189, 0, x_171); +lean_ctor_set(x_189, 1, x_172); +x_30 = x_189; +goto block_37; +} +} +} +} +else +{ +lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_190 = lean_ctor_get(x_117, 1); +lean_inc(x_190); +lean_dec(x_117); +x_191 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_190); +x_192 = lean_ctor_get(x_191, 0); +lean_inc(x_192); +x_193 = lean_ctor_get(x_191, 1); +lean_inc(x_193); +if (lean_is_exclusive(x_191)) { + lean_ctor_release(x_191, 0); + lean_ctor_release(x_191, 1); + x_194 = x_191; +} else { + lean_dec_ref(x_191); + x_194 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_195 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_193); +if (lean_obj_tag(x_195) == 0) +{ +lean_dec(x_194); +lean_dec(x_192); +lean_dec(x_107); +lean_dec(x_12); +x_30 = x_195; +goto block_37; +} +else +{ +lean_object* x_196; lean_object* x_197; lean_object* x_198; uint8_t x_199; +x_196 = lean_ctor_get(x_195, 0); +lean_inc(x_196); +x_197 = lean_ctor_get(x_195, 1); +lean_inc(x_197); +if (lean_is_exclusive(x_195)) { + lean_ctor_release(x_195, 0); + lean_ctor_release(x_195, 1); + x_198 = x_195; +} else { + lean_dec_ref(x_195); + x_198 = lean_box(0); +} +x_199 = l_Lean_Exception_isInterrupt(x_196); +if (x_199 == 0) +{ +uint8_t x_200; +x_200 = l_Lean_Exception_isRuntime(x_196); +if (x_200 == 0) +{ +lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; +lean_dec(x_198); +lean_dec(x_196); +x_201 = l_Lean_Meta_SavedState_restore(x_192, x_5, x_6, x_7, x_8, x_197); +lean_dec(x_192); +x_202 = lean_ctor_get(x_201, 1); +lean_inc(x_202); +if (lean_is_exclusive(x_201)) { + lean_ctor_release(x_201, 0); + lean_ctor_release(x_201, 1); + x_203 = x_201; +} else { + lean_dec_ref(x_201); + x_203 = lean_box(0); } lean_inc(x_2); -x_187 = l_Lean_MessageData_ofName(x_2); -x_188 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_186)) { - x_189 = lean_alloc_ctor(7, 2, 0); +x_204 = l_Lean_MessageData_ofName(x_2); +x_205 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_203)) { + x_206 = lean_alloc_ctor(7, 2, 0); } else { - x_189 = x_186; - lean_ctor_set_tag(x_189, 7); + x_206 = x_203; + lean_ctor_set_tag(x_206, 7); } -lean_ctor_set(x_189, 0, x_188); -lean_ctor_set(x_189, 1, x_187); -x_190 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -if (lean_is_scalar(x_177)) { - x_191 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_206, 0, x_205); +lean_ctor_set(x_206, 1, x_204); +x_207 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_194)) { + x_208 = lean_alloc_ctor(7, 2, 0); } else { - x_191 = x_177; - lean_ctor_set_tag(x_191, 7); + x_208 = x_194; + lean_ctor_set_tag(x_208, 7); } -lean_ctor_set(x_191, 0, x_189); -lean_ctor_set(x_191, 1, x_190); -x_192 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_192, 0, x_12); -x_193 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_193, 0, x_191); -lean_ctor_set(x_193, 1, x_192); -x_194 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_90)) { - x_195 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_208, 0, x_206); +lean_ctor_set(x_208, 1, x_207); +x_209 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_209, 0, x_12); +x_210 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_210, 0, x_208); +lean_ctor_set(x_210, 1, x_209); +x_211 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_107)) { + x_212 = lean_alloc_ctor(7, 2, 0); } else { - x_195 = x_90; - lean_ctor_set_tag(x_195, 7); + x_212 = x_107; + lean_ctor_set_tag(x_212, 7); } -lean_ctor_set(x_195, 0, x_193); -lean_ctor_set(x_195, 1, x_194); -x_196 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_195, x_5, x_6, x_7, x_8, x_185); -x_30 = x_196; +lean_ctor_set(x_212, 0, x_210); +lean_ctor_set(x_212, 1, x_211); +x_213 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_212, x_5, x_6, x_7, x_8, x_202); +x_30 = x_213; goto block_37; } else { -lean_object* x_197; -lean_dec(x_177); -lean_dec(x_175); -lean_dec(x_90); +lean_object* x_214; +lean_dec(x_194); +lean_dec(x_192); +lean_dec(x_107); lean_dec(x_12); -if (lean_is_scalar(x_181)) { - x_197 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_198)) { + x_214 = lean_alloc_ctor(1, 2, 0); } else { - x_197 = x_181; + x_214 = x_198; } -lean_ctor_set(x_197, 0, x_179); -lean_ctor_set(x_197, 1, x_180); -x_30 = x_197; +lean_ctor_set(x_214, 0, x_196); +lean_ctor_set(x_214, 1, x_197); +x_30 = x_214; goto block_37; } } else { -lean_object* x_198; -lean_dec(x_177); -lean_dec(x_175); -lean_dec(x_90); +lean_object* x_215; +lean_dec(x_194); +lean_dec(x_192); +lean_dec(x_107); lean_dec(x_12); -if (lean_is_scalar(x_181)) { - x_198 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_198)) { + x_215 = lean_alloc_ctor(1, 2, 0); } else { - x_198 = x_181; + x_215 = x_198; } -lean_ctor_set(x_198, 0, x_179); -lean_ctor_set(x_198, 1, x_180); -x_30 = x_198; +lean_ctor_set(x_215, 0, x_196); +lean_ctor_set(x_215, 1, x_197); +x_30 = x_215; goto block_37; } } @@ -18154,1539 +18427,1404 @@ goto block_37; } else { -lean_object* x_199; -lean_dec(x_93); -lean_dec(x_90); +lean_object* x_216; +lean_dec(x_110); +lean_dec(x_107); lean_dec(x_12); -if (lean_is_scalar(x_95)) { - x_199 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_112)) { + x_216 = lean_alloc_ctor(1, 2, 0); } else { - x_199 = x_95; - lean_ctor_set_tag(x_199, 1); + x_216 = x_112; + lean_ctor_set_tag(x_216, 1); } -lean_ctor_set(x_199, 0, x_96); -lean_ctor_set(x_199, 1, x_97); -x_30 = x_199; +lean_ctor_set(x_216, 0, x_113); +lean_ctor_set(x_216, 1, x_114); +x_30 = x_216; goto block_37; } } else { -lean_object* x_200; -lean_dec(x_93); -lean_dec(x_90); +lean_object* x_217; +lean_dec(x_110); +lean_dec(x_107); lean_dec(x_12); -if (lean_is_scalar(x_95)) { - x_200 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_112)) { + x_217 = lean_alloc_ctor(1, 2, 0); } else { - x_200 = x_95; - lean_ctor_set_tag(x_200, 1); + x_217 = x_112; + lean_ctor_set_tag(x_217, 1); } -lean_ctor_set(x_200, 0, x_96); -lean_ctor_set(x_200, 1, x_97); -x_30 = x_200; +lean_ctor_set(x_217, 0, x_113); +lean_ctor_set(x_217, 1, x_114); +x_30 = x_217; goto block_37; } } } else { -lean_object* x_257; -lean_dec(x_81); +lean_object* x_274; +lean_dec(x_98); lean_dec(x_12); -if (lean_is_scalar(x_83)) { - x_257 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_100)) { + x_274 = lean_alloc_ctor(1, 2, 0); } else { - x_257 = x_83; - lean_ctor_set_tag(x_257, 1); + x_274 = x_100; + lean_ctor_set_tag(x_274, 1); } -lean_ctor_set(x_257, 0, x_84); -lean_ctor_set(x_257, 1, x_85); -x_30 = x_257; +lean_ctor_set(x_274, 0, x_101); +lean_ctor_set(x_274, 1, x_102); +x_30 = x_274; goto block_37; } } else { -lean_object* x_258; -lean_dec(x_81); +lean_object* x_275; +lean_dec(x_98); lean_dec(x_12); -if (lean_is_scalar(x_83)) { - x_258 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_100)) { + x_275 = lean_alloc_ctor(1, 2, 0); } else { - x_258 = x_83; - lean_ctor_set_tag(x_258, 1); + x_275 = x_100; + lean_ctor_set_tag(x_275, 1); } -lean_ctor_set(x_258, 0, x_84); -lean_ctor_set(x_258, 1, x_85); -x_30 = x_258; +lean_ctor_set(x_275, 0, x_101); +lean_ctor_set(x_275, 1, x_102); +x_30 = x_275; goto block_37; } } } else { -lean_dec(x_70); +lean_dec(x_87); lean_dec(x_12); -x_30 = x_72; +x_30 = x_89; goto block_37; } } else { -lean_dec(x_70); +lean_dec(x_87); lean_dec(x_12); -x_30 = x_72; +x_30 = x_89; goto block_37; } } else { -lean_object* x_273; lean_object* x_274; uint8_t x_275; -x_273 = lean_ctor_get(x_72, 0); -x_274 = lean_ctor_get(x_72, 1); -lean_inc(x_274); -lean_inc(x_273); -lean_dec(x_72); -x_275 = l_Lean_Exception_isInterrupt(x_273); -if (x_275 == 0) +lean_object* x_290; lean_object* x_291; uint8_t x_292; +x_290 = lean_ctor_get(x_89, 0); +x_291 = lean_ctor_get(x_89, 1); +lean_inc(x_291); +lean_inc(x_290); +lean_dec(x_89); +x_292 = l_Lean_Exception_isInterrupt(x_290); +if (x_292 == 0) { -uint8_t x_276; -x_276 = l_Lean_Exception_isRuntime(x_273); -if (x_276 == 0) +uint8_t x_293; +x_293 = l_Lean_Exception_isRuntime(x_290); +if (x_293 == 0) { -lean_object* x_277; lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; uint8_t x_362; lean_object* x_363; -lean_dec(x_273); -x_277 = l_Lean_Meta_SavedState_restore(x_70, x_5, x_6, x_7, x_8, x_274); -lean_dec(x_70); -x_278 = lean_ctor_get(x_277, 1); -lean_inc(x_278); -lean_dec(x_277); -x_279 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_278); -x_280 = lean_ctor_get(x_279, 0); -lean_inc(x_280); -x_281 = lean_ctor_get(x_279, 1); -lean_inc(x_281); -if (lean_is_exclusive(x_279)) { - lean_ctor_release(x_279, 0); - lean_ctor_release(x_279, 1); - x_282 = x_279; -} else { - lean_dec_ref(x_279); - x_282 = lean_box(0); -} -x_362 = 1; -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_363 = l_Lean_Meta_simpIfTarget(x_12, x_362, x_5, x_6, x_7, x_8, x_281); -if (lean_obj_tag(x_363) == 0) -{ -lean_object* x_364; lean_object* x_365; uint8_t x_366; -x_364 = lean_ctor_get(x_363, 0); -lean_inc(x_364); -x_365 = lean_ctor_get(x_363, 1); -lean_inc(x_365); -lean_dec(x_363); -x_366 = lean_name_eq(x_364, x_12); -if (x_366 == 0) -{ -lean_object* x_367; lean_object* x_368; -lean_dec(x_282); -lean_dec(x_280); -lean_dec(x_12); -x_367 = lean_box(0); -x_368 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_364, x_367, x_5, x_6, x_7, x_8, x_365); -x_30 = x_368; -goto block_37; -} -else -{ -lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; -lean_dec(x_364); -x_369 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; -x_370 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_369, x_5, x_6, x_7, x_8, x_365); -x_371 = lean_ctor_get(x_370, 0); -lean_inc(x_371); -x_372 = lean_ctor_get(x_370, 1); -lean_inc(x_372); -lean_dec(x_370); -x_283 = x_371; -x_284 = x_372; -goto block_361; -} -} -else -{ -lean_object* x_373; lean_object* x_374; -x_373 = lean_ctor_get(x_363, 0); -lean_inc(x_373); -x_374 = lean_ctor_get(x_363, 1); -lean_inc(x_374); -lean_dec(x_363); -x_283 = x_373; -x_284 = x_374; -goto block_361; -} -block_361: -{ -uint8_t x_285; -x_285 = l_Lean_Exception_isInterrupt(x_283); -if (x_285 == 0) -{ -uint8_t x_286; -x_286 = l_Lean_Exception_isRuntime(x_283); -if (x_286 == 0) -{ -lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_330; -lean_dec(x_283); -lean_dec(x_282); -x_287 = l_Lean_Meta_SavedState_restore(x_280, x_5, x_6, x_7, x_8, x_284); -lean_dec(x_280); -x_288 = lean_ctor_get(x_287, 1); -lean_inc(x_288); -if (lean_is_exclusive(x_287)) { - lean_ctor_release(x_287, 0); - lean_ctor_release(x_287, 1); - x_289 = x_287; -} else { - lean_dec_ref(x_287); - x_289 = lean_box(0); -} -x_290 = lean_box(0); -x_291 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_288); -x_292 = lean_ctor_get(x_291, 0); -lean_inc(x_292); -x_293 = lean_ctor_get(x_291, 1); -lean_inc(x_293); -if (lean_is_exclusive(x_291)) { - lean_ctor_release(x_291, 0); - lean_ctor_release(x_291, 1); - x_294 = x_291; -} else { - lean_dec_ref(x_291); - x_294 = lean_box(0); -} -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_330 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_290, x_5, x_6, x_7, x_8, x_293); -if (lean_obj_tag(x_330) == 0) -{ -lean_object* x_331; -x_331 = lean_ctor_get(x_330, 0); -lean_inc(x_331); -if (lean_obj_tag(x_331) == 0) -{ -lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; -x_332 = lean_ctor_get(x_330, 1); -lean_inc(x_332); -lean_dec(x_330); -x_333 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; -x_334 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_333, x_5, x_6, x_7, x_8, x_332); -x_335 = lean_ctor_get(x_334, 0); -lean_inc(x_335); -x_336 = lean_ctor_get(x_334, 1); -lean_inc(x_336); -lean_dec(x_334); -x_295 = x_335; -x_296 = x_336; -goto block_329; -} -else -{ -lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; lean_object* x_344; -x_337 = lean_ctor_get(x_331, 0); -lean_inc(x_337); -lean_dec(x_331); -x_338 = lean_ctor_get(x_330, 1); -lean_inc(x_338); -lean_dec(x_330); -x_339 = lean_ctor_get(x_337, 0); -lean_inc(x_339); -x_340 = lean_ctor_get(x_337, 1); -lean_inc(x_340); -if (lean_is_exclusive(x_337)) { - lean_ctor_release(x_337, 0); - lean_ctor_release(x_337, 1); - x_341 = x_337; -} else { - lean_dec_ref(x_337); - x_341 = lean_box(0); -} -x_342 = lean_ctor_get(x_339, 0); -lean_inc(x_342); -x_343 = lean_ctor_get(x_339, 1); -lean_inc(x_343); -lean_dec(x_339); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_344 = l_Lean_Meta_trySubst(x_342, x_343, x_5, x_6, x_7, x_8, x_338); -if (lean_obj_tag(x_344) == 0) -{ -lean_object* x_345; lean_object* x_346; lean_object* x_347; lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_object* x_354; +lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; uint8_t x_379; lean_object* x_380; +lean_dec(x_290); +x_294 = l_Lean_Meta_SavedState_restore(x_87, x_5, x_6, x_7, x_8, x_291); +lean_dec(x_87); +x_295 = lean_ctor_get(x_294, 1); +lean_inc(x_295); lean_dec(x_294); -lean_dec(x_292); -lean_dec(x_289); -lean_dec(x_12); -x_345 = lean_ctor_get(x_344, 0); -lean_inc(x_345); -x_346 = lean_ctor_get(x_344, 1); -lean_inc(x_346); -if (lean_is_exclusive(x_344)) { - lean_ctor_release(x_344, 0); - lean_ctor_release(x_344, 1); - x_347 = x_344; +x_296 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_295); +x_297 = lean_ctor_get(x_296, 0); +lean_inc(x_297); +x_298 = lean_ctor_get(x_296, 1); +lean_inc(x_298); +if (lean_is_exclusive(x_296)) { + lean_ctor_release(x_296, 0); + lean_ctor_release(x_296, 1); + x_299 = x_296; } else { - lean_dec_ref(x_344); - x_347 = lean_box(0); + lean_dec_ref(x_296); + x_299 = lean_box(0); } -x_348 = lean_ctor_get(x_340, 0); +x_379 = 1; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_380 = l_Lean_Meta_simpIfTarget(x_12, x_379, x_5, x_6, x_7, x_8, x_298); +if (lean_obj_tag(x_380) == 0) +{ +lean_object* x_381; lean_object* x_382; uint8_t x_383; +x_381 = lean_ctor_get(x_380, 0); +lean_inc(x_381); +x_382 = lean_ctor_get(x_380, 1); +lean_inc(x_382); +lean_dec(x_380); +x_383 = lean_name_eq(x_381, x_12); +if (x_383 == 0) +{ +lean_object* x_384; lean_object* x_385; +lean_dec(x_299); +lean_dec(x_297); +lean_dec(x_12); +x_384 = lean_box(0); +x_385 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_381, x_384, x_5, x_6, x_7, x_8, x_382); +x_30 = x_385; +goto block_37; +} +else +{ +lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; +lean_dec(x_381); +x_386 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_387 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_386, x_5, x_6, x_7, x_8, x_382); +x_388 = lean_ctor_get(x_387, 0); +lean_inc(x_388); +x_389 = lean_ctor_get(x_387, 1); +lean_inc(x_389); +lean_dec(x_387); +x_300 = x_388; +x_301 = x_389; +goto block_378; +} +} +else +{ +lean_object* x_390; lean_object* x_391; +x_390 = lean_ctor_get(x_380, 0); +lean_inc(x_390); +x_391 = lean_ctor_get(x_380, 1); +lean_inc(x_391); +lean_dec(x_380); +x_300 = x_390; +x_301 = x_391; +goto block_378; +} +block_378: +{ +uint8_t x_302; +x_302 = l_Lean_Exception_isInterrupt(x_300); +if (x_302 == 0) +{ +uint8_t x_303; +x_303 = l_Lean_Exception_isRuntime(x_300); +if (x_303 == 0) +{ +lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_347; +lean_dec(x_300); +lean_dec(x_299); +x_304 = l_Lean_Meta_SavedState_restore(x_297, x_5, x_6, x_7, x_8, x_301); +lean_dec(x_297); +x_305 = lean_ctor_get(x_304, 1); +lean_inc(x_305); +if (lean_is_exclusive(x_304)) { + lean_ctor_release(x_304, 0); + lean_ctor_release(x_304, 1); + x_306 = x_304; +} else { + lean_dec_ref(x_304); + x_306 = lean_box(0); +} +x_307 = lean_box(0); +x_308 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_305); +x_309 = lean_ctor_get(x_308, 0); +lean_inc(x_309); +x_310 = lean_ctor_get(x_308, 1); +lean_inc(x_310); +if (lean_is_exclusive(x_308)) { + lean_ctor_release(x_308, 0); + lean_ctor_release(x_308, 1); + x_311 = x_308; +} else { + lean_dec_ref(x_308); + x_311 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_347 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_307, x_5, x_6, x_7, x_8, x_310); +if (lean_obj_tag(x_347) == 0) +{ +lean_object* x_348; +x_348 = lean_ctor_get(x_347, 0); lean_inc(x_348); -if (lean_is_exclusive(x_340)) { - lean_ctor_release(x_340, 0); - lean_ctor_release(x_340, 1); - x_349 = x_340; -} else { - lean_dec_ref(x_340); - x_349 = lean_box(0); +if (lean_obj_tag(x_348) == 0) +{ +lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +lean_dec(x_347); +x_350 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_351 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_350, x_5, x_6, x_7, x_8, x_349); +x_352 = lean_ctor_get(x_351, 0); +lean_inc(x_352); +x_353 = lean_ctor_get(x_351, 1); +lean_inc(x_353); +lean_dec(x_351); +x_312 = x_352; +x_313 = x_353; +goto block_346; } -x_350 = lean_box(0); -if (lean_is_scalar(x_349)) { - x_351 = lean_alloc_ctor(1, 2, 0); +else +{ +lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; +x_354 = lean_ctor_get(x_348, 0); +lean_inc(x_354); +lean_dec(x_348); +x_355 = lean_ctor_get(x_347, 1); +lean_inc(x_355); +lean_dec(x_347); +x_356 = lean_ctor_get(x_354, 0); +lean_inc(x_356); +x_357 = lean_ctor_get(x_354, 1); +lean_inc(x_357); +if (lean_is_exclusive(x_354)) { + lean_ctor_release(x_354, 0); + lean_ctor_release(x_354, 1); + x_358 = x_354; } else { - x_351 = x_349; - lean_ctor_set_tag(x_351, 1); + lean_dec_ref(x_354); + x_358 = lean_box(0); } -lean_ctor_set(x_351, 0, x_348); -lean_ctor_set(x_351, 1, x_350); -if (lean_is_scalar(x_341)) { - x_352 = lean_alloc_ctor(1, 2, 0); +x_359 = lean_ctor_get(x_356, 0); +lean_inc(x_359); +x_360 = lean_ctor_get(x_356, 1); +lean_inc(x_360); +lean_dec(x_356); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_361 = l_Lean_Meta_trySubst(x_359, x_360, x_5, x_6, x_7, x_8, x_355); +if (lean_obj_tag(x_361) == 0) +{ +lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; +lean_dec(x_311); +lean_dec(x_309); +lean_dec(x_306); +lean_dec(x_12); +x_362 = lean_ctor_get(x_361, 0); +lean_inc(x_362); +x_363 = lean_ctor_get(x_361, 1); +lean_inc(x_363); +if (lean_is_exclusive(x_361)) { + lean_ctor_release(x_361, 0); + lean_ctor_release(x_361, 1); + x_364 = x_361; } else { - x_352 = x_341; - lean_ctor_set_tag(x_352, 1); + lean_dec_ref(x_361); + x_364 = lean_box(0); } -lean_ctor_set(x_352, 0, x_345); -lean_ctor_set(x_352, 1, x_351); -x_353 = lean_array_mk(x_352); -if (lean_is_scalar(x_347)) { - x_354 = lean_alloc_ctor(0, 2, 0); +x_365 = lean_ctor_get(x_357, 0); +lean_inc(x_365); +if (lean_is_exclusive(x_357)) { + lean_ctor_release(x_357, 0); + lean_ctor_release(x_357, 1); + x_366 = x_357; } else { - x_354 = x_347; + lean_dec_ref(x_357); + x_366 = lean_box(0); } -lean_ctor_set(x_354, 0, x_353); -lean_ctor_set(x_354, 1, x_346); -x_30 = x_354; +x_367 = lean_box(0); +if (lean_is_scalar(x_366)) { + x_368 = lean_alloc_ctor(1, 2, 0); +} else { + x_368 = x_366; + lean_ctor_set_tag(x_368, 1); +} +lean_ctor_set(x_368, 0, x_365); +lean_ctor_set(x_368, 1, x_367); +if (lean_is_scalar(x_358)) { + x_369 = lean_alloc_ctor(1, 2, 0); +} else { + x_369 = x_358; + lean_ctor_set_tag(x_369, 1); +} +lean_ctor_set(x_369, 0, x_362); +lean_ctor_set(x_369, 1, x_368); +x_370 = lean_array_mk(x_369); +if (lean_is_scalar(x_364)) { + x_371 = lean_alloc_ctor(0, 2, 0); +} else { + x_371 = x_364; +} +lean_ctor_set(x_371, 0, x_370); +lean_ctor_set(x_371, 1, x_363); +x_30 = x_371; goto block_37; } else { -lean_object* x_355; lean_object* x_356; -lean_dec(x_341); -lean_dec(x_340); -x_355 = lean_ctor_get(x_344, 0); -lean_inc(x_355); -x_356 = lean_ctor_get(x_344, 1); -lean_inc(x_356); -lean_dec(x_344); -x_295 = x_355; -x_296 = x_356; -goto block_329; +lean_object* x_372; lean_object* x_373; +lean_dec(x_358); +lean_dec(x_357); +x_372 = lean_ctor_get(x_361, 0); +lean_inc(x_372); +x_373 = lean_ctor_get(x_361, 1); +lean_inc(x_373); +lean_dec(x_361); +x_312 = x_372; +x_313 = x_373; +goto block_346; } } } else { -lean_object* x_357; lean_object* x_358; -x_357 = lean_ctor_get(x_330, 0); -lean_inc(x_357); -x_358 = lean_ctor_get(x_330, 1); -lean_inc(x_358); -lean_dec(x_330); -x_295 = x_357; -x_296 = x_358; -goto block_329; +lean_object* x_374; lean_object* x_375; +x_374 = lean_ctor_get(x_347, 0); +lean_inc(x_374); +x_375 = lean_ctor_get(x_347, 1); +lean_inc(x_375); +lean_dec(x_347); +x_312 = x_374; +x_313 = x_375; +goto block_346; } -block_329: +block_346: { -uint8_t x_297; -x_297 = l_Lean_Exception_isInterrupt(x_295); -if (x_297 == 0) +uint8_t x_314; +x_314 = l_Lean_Exception_isInterrupt(x_312); +if (x_314 == 0) { -uint8_t x_298; -x_298 = l_Lean_Exception_isRuntime(x_295); -if (x_298 == 0) +uint8_t x_315; +x_315 = l_Lean_Exception_isRuntime(x_312); +if (x_315 == 0) { -lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; -lean_dec(x_295); -lean_dec(x_294); -x_299 = l_Lean_Meta_SavedState_restore(x_292, x_5, x_6, x_7, x_8, x_296); -lean_dec(x_292); -x_300 = lean_ctor_get(x_299, 1); -lean_inc(x_300); -if (lean_is_exclusive(x_299)) { - lean_ctor_release(x_299, 0); - lean_ctor_release(x_299, 1); - x_301 = x_299; +lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; +lean_dec(x_312); +lean_dec(x_311); +x_316 = l_Lean_Meta_SavedState_restore(x_309, x_5, x_6, x_7, x_8, x_313); +lean_dec(x_309); +x_317 = lean_ctor_get(x_316, 1); +lean_inc(x_317); +if (lean_is_exclusive(x_316)) { + lean_ctor_release(x_316, 0); + lean_ctor_release(x_316, 1); + x_318 = x_316; } else { - lean_dec_ref(x_299); - x_301 = lean_box(0); + lean_dec_ref(x_316); + x_318 = lean_box(0); } -x_302 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_300); -x_303 = lean_ctor_get(x_302, 0); -lean_inc(x_303); -x_304 = lean_ctor_get(x_302, 1); -lean_inc(x_304); -if (lean_is_exclusive(x_302)) { - lean_ctor_release(x_302, 0); - lean_ctor_release(x_302, 1); - x_305 = x_302; +x_319 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_317); +x_320 = lean_ctor_get(x_319, 0); +lean_inc(x_320); +x_321 = lean_ctor_get(x_319, 1); +lean_inc(x_321); +if (lean_is_exclusive(x_319)) { + lean_ctor_release(x_319, 0); + lean_ctor_release(x_319, 1); + x_322 = x_319; } else { - lean_dec_ref(x_302); - x_305 = lean_box(0); + lean_dec_ref(x_319); + x_322 = lean_box(0); } lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_306 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_304); -if (lean_obj_tag(x_306) == 0) +x_323 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_321); +if (lean_obj_tag(x_323) == 0) { -lean_dec(x_305); -lean_dec(x_303); -lean_dec(x_301); -lean_dec(x_289); +lean_dec(x_322); +lean_dec(x_320); +lean_dec(x_318); +lean_dec(x_306); lean_dec(x_12); -x_30 = x_306; +x_30 = x_323; goto block_37; } else { -lean_object* x_307; lean_object* x_308; lean_object* x_309; uint8_t x_310; -x_307 = lean_ctor_get(x_306, 0); -lean_inc(x_307); -x_308 = lean_ctor_get(x_306, 1); -lean_inc(x_308); -if (lean_is_exclusive(x_306)) { - lean_ctor_release(x_306, 0); - lean_ctor_release(x_306, 1); - x_309 = x_306; +lean_object* x_324; lean_object* x_325; lean_object* x_326; uint8_t x_327; +x_324 = lean_ctor_get(x_323, 0); +lean_inc(x_324); +x_325 = lean_ctor_get(x_323, 1); +lean_inc(x_325); +if (lean_is_exclusive(x_323)) { + lean_ctor_release(x_323, 0); + lean_ctor_release(x_323, 1); + x_326 = x_323; } else { - lean_dec_ref(x_306); - x_309 = lean_box(0); + lean_dec_ref(x_323); + x_326 = lean_box(0); } -x_310 = l_Lean_Exception_isInterrupt(x_307); -if (x_310 == 0) +x_327 = l_Lean_Exception_isInterrupt(x_324); +if (x_327 == 0) { -uint8_t x_311; -x_311 = l_Lean_Exception_isRuntime(x_307); -if (x_311 == 0) +uint8_t x_328; +x_328 = l_Lean_Exception_isRuntime(x_324); +if (x_328 == 0) { -lean_object* x_312; lean_object* x_313; lean_object* x_314; lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_318; lean_object* x_319; lean_object* x_320; lean_object* x_321; lean_object* x_322; lean_object* x_323; lean_object* x_324; -lean_dec(x_309); -lean_dec(x_307); -x_312 = l_Lean_Meta_SavedState_restore(x_303, x_5, x_6, x_7, x_8, x_308); -lean_dec(x_303); -x_313 = lean_ctor_get(x_312, 1); -lean_inc(x_313); -if (lean_is_exclusive(x_312)) { - lean_ctor_release(x_312, 0); - lean_ctor_release(x_312, 1); - x_314 = x_312; +lean_object* x_329; lean_object* x_330; lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; lean_object* x_336; lean_object* x_337; lean_object* x_338; lean_object* x_339; lean_object* x_340; lean_object* x_341; +lean_dec(x_326); +lean_dec(x_324); +x_329 = l_Lean_Meta_SavedState_restore(x_320, x_5, x_6, x_7, x_8, x_325); +lean_dec(x_320); +x_330 = lean_ctor_get(x_329, 1); +lean_inc(x_330); +if (lean_is_exclusive(x_329)) { + lean_ctor_release(x_329, 0); + lean_ctor_release(x_329, 1); + x_331 = x_329; } else { - lean_dec_ref(x_312); - x_314 = lean_box(0); + lean_dec_ref(x_329); + x_331 = lean_box(0); } lean_inc(x_2); -x_315 = l_Lean_MessageData_ofName(x_2); -x_316 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_314)) { - x_317 = lean_alloc_ctor(7, 2, 0); +x_332 = l_Lean_MessageData_ofName(x_2); +x_333 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_331)) { + x_334 = lean_alloc_ctor(7, 2, 0); } else { - x_317 = x_314; - lean_ctor_set_tag(x_317, 7); + x_334 = x_331; + lean_ctor_set_tag(x_334, 7); } -lean_ctor_set(x_317, 0, x_316); -lean_ctor_set(x_317, 1, x_315); -x_318 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -if (lean_is_scalar(x_305)) { - x_319 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_334, 0, x_333); +lean_ctor_set(x_334, 1, x_332); +x_335 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_322)) { + x_336 = lean_alloc_ctor(7, 2, 0); } else { - x_319 = x_305; - lean_ctor_set_tag(x_319, 7); + x_336 = x_322; + lean_ctor_set_tag(x_336, 7); } -lean_ctor_set(x_319, 0, x_317); -lean_ctor_set(x_319, 1, x_318); -x_320 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_320, 0, x_12); -if (lean_is_scalar(x_301)) { - x_321 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_336, 0, x_334); +lean_ctor_set(x_336, 1, x_335); +x_337 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_337, 0, x_12); +if (lean_is_scalar(x_318)) { + x_338 = lean_alloc_ctor(7, 2, 0); } else { - x_321 = x_301; - lean_ctor_set_tag(x_321, 7); + x_338 = x_318; + lean_ctor_set_tag(x_338, 7); } -lean_ctor_set(x_321, 0, x_319); -lean_ctor_set(x_321, 1, x_320); -x_322 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_289)) { - x_323 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_338, 0, x_336); +lean_ctor_set(x_338, 1, x_337); +x_339 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_306)) { + x_340 = lean_alloc_ctor(7, 2, 0); } else { - x_323 = x_289; - lean_ctor_set_tag(x_323, 7); + x_340 = x_306; + lean_ctor_set_tag(x_340, 7); } -lean_ctor_set(x_323, 0, x_321); -lean_ctor_set(x_323, 1, x_322); -x_324 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_323, x_5, x_6, x_7, x_8, x_313); -x_30 = x_324; +lean_ctor_set(x_340, 0, x_338); +lean_ctor_set(x_340, 1, x_339); +x_341 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_340, x_5, x_6, x_7, x_8, x_330); +x_30 = x_341; goto block_37; } else { -lean_object* x_325; -lean_dec(x_305); -lean_dec(x_303); -lean_dec(x_301); -lean_dec(x_289); +lean_object* x_342; +lean_dec(x_322); +lean_dec(x_320); +lean_dec(x_318); +lean_dec(x_306); lean_dec(x_12); -if (lean_is_scalar(x_309)) { - x_325 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_326)) { + x_342 = lean_alloc_ctor(1, 2, 0); } else { - x_325 = x_309; + x_342 = x_326; } -lean_ctor_set(x_325, 0, x_307); -lean_ctor_set(x_325, 1, x_308); -x_30 = x_325; +lean_ctor_set(x_342, 0, x_324); +lean_ctor_set(x_342, 1, x_325); +x_30 = x_342; goto block_37; } } else { -lean_object* x_326; -lean_dec(x_305); -lean_dec(x_303); -lean_dec(x_301); -lean_dec(x_289); +lean_object* x_343; +lean_dec(x_322); +lean_dec(x_320); +lean_dec(x_318); +lean_dec(x_306); lean_dec(x_12); -if (lean_is_scalar(x_309)) { - x_326 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_326)) { + x_343 = lean_alloc_ctor(1, 2, 0); } else { - x_326 = x_309; + x_343 = x_326; } -lean_ctor_set(x_326, 0, x_307); -lean_ctor_set(x_326, 1, x_308); -x_30 = x_326; +lean_ctor_set(x_343, 0, x_324); +lean_ctor_set(x_343, 1, x_325); +x_30 = x_343; goto block_37; } } } else { -lean_object* x_327; -lean_dec(x_292); -lean_dec(x_289); +lean_object* x_344; +lean_dec(x_309); +lean_dec(x_306); lean_dec(x_12); -if (lean_is_scalar(x_294)) { - x_327 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_311)) { + x_344 = lean_alloc_ctor(1, 2, 0); } else { - x_327 = x_294; - lean_ctor_set_tag(x_327, 1); + x_344 = x_311; + lean_ctor_set_tag(x_344, 1); } -lean_ctor_set(x_327, 0, x_295); -lean_ctor_set(x_327, 1, x_296); -x_30 = x_327; +lean_ctor_set(x_344, 0, x_312); +lean_ctor_set(x_344, 1, x_313); +x_30 = x_344; goto block_37; } } else { -lean_object* x_328; -lean_dec(x_292); -lean_dec(x_289); +lean_object* x_345; +lean_dec(x_309); +lean_dec(x_306); lean_dec(x_12); -if (lean_is_scalar(x_294)) { - x_328 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_311)) { + x_345 = lean_alloc_ctor(1, 2, 0); } else { - x_328 = x_294; - lean_ctor_set_tag(x_328, 1); + x_345 = x_311; + lean_ctor_set_tag(x_345, 1); } -lean_ctor_set(x_328, 0, x_295); -lean_ctor_set(x_328, 1, x_296); -x_30 = x_328; +lean_ctor_set(x_345, 0, x_312); +lean_ctor_set(x_345, 1, x_313); +x_30 = x_345; goto block_37; } } } else { -lean_object* x_359; -lean_dec(x_280); -lean_dec(x_12); -if (lean_is_scalar(x_282)) { - x_359 = lean_alloc_ctor(1, 2, 0); -} else { - x_359 = x_282; - lean_ctor_set_tag(x_359, 1); -} -lean_ctor_set(x_359, 0, x_283); -lean_ctor_set(x_359, 1, x_284); -x_30 = x_359; -goto block_37; -} -} -else -{ -lean_object* x_360; -lean_dec(x_280); -lean_dec(x_12); -if (lean_is_scalar(x_282)) { - x_360 = lean_alloc_ctor(1, 2, 0); -} else { - x_360 = x_282; - lean_ctor_set_tag(x_360, 1); -} -lean_ctor_set(x_360, 0, x_283); -lean_ctor_set(x_360, 1, x_284); -x_30 = x_360; -goto block_37; -} -} -} -else -{ -lean_object* x_375; -lean_dec(x_70); -lean_dec(x_12); -x_375 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_375, 0, x_273); -lean_ctor_set(x_375, 1, x_274); -x_30 = x_375; -goto block_37; -} -} -else -{ lean_object* x_376; -lean_dec(x_70); +lean_dec(x_297); lean_dec(x_12); -x_376 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_376, 0, x_273); -lean_ctor_set(x_376, 1, x_274); +if (lean_is_scalar(x_299)) { + x_376 = lean_alloc_ctor(1, 2, 0); +} else { + x_376 = x_299; + lean_ctor_set_tag(x_376, 1); +} +lean_ctor_set(x_376, 0, x_300); +lean_ctor_set(x_376, 1, x_301); x_30 = x_376; goto block_37; } } -} -} else { -lean_dec(x_52); +lean_object* x_377; +lean_dec(x_297); lean_dec(x_12); -x_30 = x_55; -goto block_37; -} -} -else -{ -lean_dec(x_52); -lean_dec(x_12); -x_30 = x_55; -goto block_37; -} -} -else -{ -lean_object* x_377; lean_object* x_378; uint8_t x_379; -x_377 = lean_ctor_get(x_55, 0); -x_378 = lean_ctor_get(x_55, 1); -lean_inc(x_378); -lean_inc(x_377); -lean_dec(x_55); -x_379 = l_Lean_Exception_isInterrupt(x_377); -if (x_379 == 0) -{ -uint8_t x_380; -x_380 = l_Lean_Exception_isRuntime(x_377); -if (x_380 == 0) -{ -lean_object* x_381; lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; lean_object* x_386; -lean_dec(x_377); -x_381 = l_Lean_Meta_SavedState_restore(x_52, x_5, x_6, x_7, x_8, x_378); -lean_dec(x_52); -x_382 = lean_ctor_get(x_381, 1); -lean_inc(x_382); -lean_dec(x_381); -x_383 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_382); -x_384 = lean_ctor_get(x_383, 0); -lean_inc(x_384); -x_385 = lean_ctor_get(x_383, 1); -lean_inc(x_385); -lean_dec(x_383); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_386 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_385); -if (lean_obj_tag(x_386) == 0) -{ -lean_dec(x_384); -lean_dec(x_12); -x_30 = x_386; -goto block_37; -} -else -{ -lean_object* x_387; lean_object* x_388; lean_object* x_389; uint8_t x_390; -x_387 = lean_ctor_get(x_386, 0); -lean_inc(x_387); -x_388 = lean_ctor_get(x_386, 1); -lean_inc(x_388); -if (lean_is_exclusive(x_386)) { - lean_ctor_release(x_386, 0); - lean_ctor_release(x_386, 1); - x_389 = x_386; +if (lean_is_scalar(x_299)) { + x_377 = lean_alloc_ctor(1, 2, 0); } else { - lean_dec_ref(x_386); - x_389 = lean_box(0); + x_377 = x_299; + lean_ctor_set_tag(x_377, 1); } -x_390 = l_Lean_Exception_isInterrupt(x_387); -if (x_390 == 0) +lean_ctor_set(x_377, 0, x_300); +lean_ctor_set(x_377, 1, x_301); +x_30 = x_377; +goto block_37; +} +} +} +else { -uint8_t x_391; -x_391 = l_Lean_Exception_isRuntime(x_387); -if (x_391 == 0) +lean_object* x_392; +lean_dec(x_87); +lean_dec(x_12); +x_392 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_392, 0, x_290); +lean_ctor_set(x_392, 1, x_291); +x_30 = x_392; +goto block_37; +} +} +else { -lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; lean_object* x_399; uint8_t x_477; lean_object* x_478; -lean_dec(x_389); -lean_dec(x_387); -x_392 = l_Lean_Meta_SavedState_restore(x_384, x_5, x_6, x_7, x_8, x_388); -lean_dec(x_384); -x_393 = lean_ctor_get(x_392, 1); -lean_inc(x_393); -lean_dec(x_392); -x_394 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_393); -x_395 = lean_ctor_get(x_394, 0); +lean_object* x_393; +lean_dec(x_87); +lean_dec(x_12); +x_393 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_393, 0, x_290); +lean_ctor_set(x_393, 1, x_291); +x_30 = x_393; +goto block_37; +} +} +} +} +else +{ +lean_dec(x_67); +lean_dec(x_12); +x_30 = x_69; +goto block_37; +} +} +else +{ +lean_dec(x_67); +lean_dec(x_12); +x_30 = x_69; +goto block_37; +} +} +else +{ +lean_object* x_394; lean_object* x_395; uint8_t x_396; +x_394 = lean_ctor_get(x_69, 0); +x_395 = lean_ctor_get(x_69, 1); lean_inc(x_395); -x_396 = lean_ctor_get(x_394, 1); -lean_inc(x_396); -if (lean_is_exclusive(x_394)) { - lean_ctor_release(x_394, 0); - lean_ctor_release(x_394, 1); - x_397 = x_394; -} else { - lean_dec_ref(x_394); - x_397 = lean_box(0); -} -x_477 = 1; -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_478 = l_Lean_Meta_simpIfTarget(x_12, x_477, x_5, x_6, x_7, x_8, x_396); -if (lean_obj_tag(x_478) == 0) +lean_inc(x_394); +lean_dec(x_69); +x_396 = l_Lean_Exception_isInterrupt(x_394); +if (x_396 == 0) { -lean_object* x_479; lean_object* x_480; uint8_t x_481; -x_479 = lean_ctor_get(x_478, 0); -lean_inc(x_479); -x_480 = lean_ctor_get(x_478, 1); -lean_inc(x_480); -lean_dec(x_478); -x_481 = lean_name_eq(x_479, x_12); -if (x_481 == 0) +uint8_t x_397; +x_397 = l_Lean_Exception_isRuntime(x_394); +if (x_397 == 0) { -lean_object* x_482; lean_object* x_483; -lean_dec(x_397); -lean_dec(x_395); -lean_dec(x_12); -x_482 = lean_box(0); -x_483 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_479, x_482, x_5, x_6, x_7, x_8, x_480); -x_30 = x_483; -goto block_37; -} -else -{ -lean_object* x_484; lean_object* x_485; lean_object* x_486; lean_object* x_487; -lean_dec(x_479); -x_484 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; -x_485 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_484, x_5, x_6, x_7, x_8, x_480); -x_486 = lean_ctor_get(x_485, 0); -lean_inc(x_486); -x_487 = lean_ctor_get(x_485, 1); -lean_inc(x_487); -lean_dec(x_485); -x_398 = x_486; -x_399 = x_487; -goto block_476; -} -} -else -{ -lean_object* x_488; lean_object* x_489; -x_488 = lean_ctor_get(x_478, 0); -lean_inc(x_488); -x_489 = lean_ctor_get(x_478, 1); -lean_inc(x_489); -lean_dec(x_478); -x_398 = x_488; -x_399 = x_489; -goto block_476; -} -block_476: -{ -uint8_t x_400; -x_400 = l_Lean_Exception_isInterrupt(x_398); -if (x_400 == 0) -{ -uint8_t x_401; -x_401 = l_Lean_Exception_isRuntime(x_398); -if (x_401 == 0) -{ -lean_object* x_402; lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_445; +lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; lean_object* x_402; lean_object* x_403; +lean_dec(x_394); +x_398 = l_Lean_Meta_SavedState_restore(x_67, x_5, x_6, x_7, x_8, x_395); +lean_dec(x_67); +x_399 = lean_ctor_get(x_398, 1); +lean_inc(x_399); lean_dec(x_398); -lean_dec(x_397); -x_402 = l_Lean_Meta_SavedState_restore(x_395, x_5, x_6, x_7, x_8, x_399); -lean_dec(x_395); -x_403 = lean_ctor_get(x_402, 1); -lean_inc(x_403); -if (lean_is_exclusive(x_402)) { - lean_ctor_release(x_402, 0); - lean_ctor_release(x_402, 1); - x_404 = x_402; -} else { - lean_dec_ref(x_402); - x_404 = lean_box(0); +x_400 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_399); +x_401 = lean_ctor_get(x_400, 0); +lean_inc(x_401); +x_402 = lean_ctor_get(x_400, 1); +lean_inc(x_402); +lean_dec(x_400); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_403 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_402); +if (lean_obj_tag(x_403) == 0) +{ +lean_dec(x_401); +lean_dec(x_12); +x_30 = x_403; +goto block_37; } -x_405 = lean_box(0); -x_406 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_403); -x_407 = lean_ctor_get(x_406, 0); -lean_inc(x_407); -x_408 = lean_ctor_get(x_406, 1); -lean_inc(x_408); -if (lean_is_exclusive(x_406)) { - lean_ctor_release(x_406, 0); - lean_ctor_release(x_406, 1); - x_409 = x_406; +else +{ +lean_object* x_404; lean_object* x_405; lean_object* x_406; uint8_t x_407; +x_404 = lean_ctor_get(x_403, 0); +lean_inc(x_404); +x_405 = lean_ctor_get(x_403, 1); +lean_inc(x_405); +if (lean_is_exclusive(x_403)) { + lean_ctor_release(x_403, 0); + lean_ctor_release(x_403, 1); + x_406 = x_403; } else { - lean_dec_ref(x_406); - x_409 = lean_box(0); + lean_dec_ref(x_403); + x_406 = lean_box(0); +} +x_407 = l_Lean_Exception_isInterrupt(x_404); +if (x_407 == 0) +{ +uint8_t x_408; +x_408 = l_Lean_Exception_isRuntime(x_404); +if (x_408 == 0) +{ +lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; lean_object* x_413; lean_object* x_414; lean_object* x_415; lean_object* x_416; uint8_t x_494; lean_object* x_495; +lean_dec(x_406); +lean_dec(x_404); +x_409 = l_Lean_Meta_SavedState_restore(x_401, x_5, x_6, x_7, x_8, x_405); +lean_dec(x_401); +x_410 = lean_ctor_get(x_409, 1); +lean_inc(x_410); +lean_dec(x_409); +x_411 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_410); +x_412 = lean_ctor_get(x_411, 0); +lean_inc(x_412); +x_413 = lean_ctor_get(x_411, 1); +lean_inc(x_413); +if (lean_is_exclusive(x_411)) { + lean_ctor_release(x_411, 0); + lean_ctor_release(x_411, 1); + x_414 = x_411; +} else { + lean_dec_ref(x_411); + x_414 = lean_box(0); +} +x_494 = 1; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_495 = l_Lean_Meta_simpIfTarget(x_12, x_494, x_5, x_6, x_7, x_8, x_413); +if (lean_obj_tag(x_495) == 0) +{ +lean_object* x_496; lean_object* x_497; uint8_t x_498; +x_496 = lean_ctor_get(x_495, 0); +lean_inc(x_496); +x_497 = lean_ctor_get(x_495, 1); +lean_inc(x_497); +lean_dec(x_495); +x_498 = lean_name_eq(x_496, x_12); +if (x_498 == 0) +{ +lean_object* x_499; lean_object* x_500; +lean_dec(x_414); +lean_dec(x_412); +lean_dec(x_12); +x_499 = lean_box(0); +x_500 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_496, x_499, x_5, x_6, x_7, x_8, x_497); +x_30 = x_500; +goto block_37; +} +else +{ +lean_object* x_501; lean_object* x_502; lean_object* x_503; lean_object* x_504; +lean_dec(x_496); +x_501 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_502 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_501, x_5, x_6, x_7, x_8, x_497); +x_503 = lean_ctor_get(x_502, 0); +lean_inc(x_503); +x_504 = lean_ctor_get(x_502, 1); +lean_inc(x_504); +lean_dec(x_502); +x_415 = x_503; +x_416 = x_504; +goto block_493; +} +} +else +{ +lean_object* x_505; lean_object* x_506; +x_505 = lean_ctor_get(x_495, 0); +lean_inc(x_505); +x_506 = lean_ctor_get(x_495, 1); +lean_inc(x_506); +lean_dec(x_495); +x_415 = x_505; +x_416 = x_506; +goto block_493; +} +block_493: +{ +uint8_t x_417; +x_417 = l_Lean_Exception_isInterrupt(x_415); +if (x_417 == 0) +{ +uint8_t x_418; +x_418 = l_Lean_Exception_isRuntime(x_415); +if (x_418 == 0) +{ +lean_object* x_419; lean_object* x_420; lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; lean_object* x_462; +lean_dec(x_415); +lean_dec(x_414); +x_419 = l_Lean_Meta_SavedState_restore(x_412, x_5, x_6, x_7, x_8, x_416); +lean_dec(x_412); +x_420 = lean_ctor_get(x_419, 1); +lean_inc(x_420); +if (lean_is_exclusive(x_419)) { + lean_ctor_release(x_419, 0); + lean_ctor_release(x_419, 1); + x_421 = x_419; +} else { + lean_dec_ref(x_419); + x_421 = lean_box(0); +} +x_422 = lean_box(0); +x_423 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_420); +x_424 = lean_ctor_get(x_423, 0); +lean_inc(x_424); +x_425 = lean_ctor_get(x_423, 1); +lean_inc(x_425); +if (lean_is_exclusive(x_423)) { + lean_ctor_release(x_423, 0); + lean_ctor_release(x_423, 1); + x_426 = x_423; +} else { + lean_dec_ref(x_423); + x_426 = lean_box(0); } lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_445 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_405, x_5, x_6, x_7, x_8, x_408); -if (lean_obj_tag(x_445) == 0) +x_462 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_422, x_5, x_6, x_7, x_8, x_425); +if (lean_obj_tag(x_462) == 0) { -lean_object* x_446; -x_446 = lean_ctor_get(x_445, 0); -lean_inc(x_446); -if (lean_obj_tag(x_446) == 0) -{ -lean_object* x_447; lean_object* x_448; lean_object* x_449; lean_object* x_450; lean_object* x_451; -x_447 = lean_ctor_get(x_445, 1); -lean_inc(x_447); -lean_dec(x_445); -x_448 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; -x_449 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_448, x_5, x_6, x_7, x_8, x_447); -x_450 = lean_ctor_get(x_449, 0); -lean_inc(x_450); -x_451 = lean_ctor_get(x_449, 1); -lean_inc(x_451); -lean_dec(x_449); -x_410 = x_450; -x_411 = x_451; -goto block_444; -} -else -{ -lean_object* x_452; lean_object* x_453; lean_object* x_454; lean_object* x_455; lean_object* x_456; lean_object* x_457; lean_object* x_458; lean_object* x_459; -x_452 = lean_ctor_get(x_446, 0); -lean_inc(x_452); -lean_dec(x_446); -x_453 = lean_ctor_get(x_445, 1); -lean_inc(x_453); -lean_dec(x_445); -x_454 = lean_ctor_get(x_452, 0); -lean_inc(x_454); -x_455 = lean_ctor_get(x_452, 1); -lean_inc(x_455); -if (lean_is_exclusive(x_452)) { - lean_ctor_release(x_452, 0); - lean_ctor_release(x_452, 1); - x_456 = x_452; -} else { - lean_dec_ref(x_452); - x_456 = lean_box(0); -} -x_457 = lean_ctor_get(x_454, 0); -lean_inc(x_457); -x_458 = lean_ctor_get(x_454, 1); -lean_inc(x_458); -lean_dec(x_454); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_459 = l_Lean_Meta_trySubst(x_457, x_458, x_5, x_6, x_7, x_8, x_453); -if (lean_obj_tag(x_459) == 0) -{ -lean_object* x_460; lean_object* x_461; lean_object* x_462; lean_object* x_463; lean_object* x_464; lean_object* x_465; lean_object* x_466; lean_object* x_467; lean_object* x_468; lean_object* x_469; -lean_dec(x_409); -lean_dec(x_407); -lean_dec(x_404); -lean_dec(x_12); -x_460 = lean_ctor_get(x_459, 0); -lean_inc(x_460); -x_461 = lean_ctor_get(x_459, 1); -lean_inc(x_461); -if (lean_is_exclusive(x_459)) { - lean_ctor_release(x_459, 0); - lean_ctor_release(x_459, 1); - x_462 = x_459; -} else { - lean_dec_ref(x_459); - x_462 = lean_box(0); -} -x_463 = lean_ctor_get(x_455, 0); +lean_object* x_463; +x_463 = lean_ctor_get(x_462, 0); lean_inc(x_463); -if (lean_is_exclusive(x_455)) { - lean_ctor_release(x_455, 0); - lean_ctor_release(x_455, 1); - x_464 = x_455; -} else { - lean_dec_ref(x_455); - x_464 = lean_box(0); +if (lean_obj_tag(x_463) == 0) +{ +lean_object* x_464; lean_object* x_465; lean_object* x_466; lean_object* x_467; lean_object* x_468; +x_464 = lean_ctor_get(x_462, 1); +lean_inc(x_464); +lean_dec(x_462); +x_465 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_466 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_465, x_5, x_6, x_7, x_8, x_464); +x_467 = lean_ctor_get(x_466, 0); +lean_inc(x_467); +x_468 = lean_ctor_get(x_466, 1); +lean_inc(x_468); +lean_dec(x_466); +x_427 = x_467; +x_428 = x_468; +goto block_461; } -x_465 = lean_box(0); -if (lean_is_scalar(x_464)) { - x_466 = lean_alloc_ctor(1, 2, 0); +else +{ +lean_object* x_469; lean_object* x_470; lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_object* x_474; lean_object* x_475; lean_object* x_476; +x_469 = lean_ctor_get(x_463, 0); +lean_inc(x_469); +lean_dec(x_463); +x_470 = lean_ctor_get(x_462, 1); +lean_inc(x_470); +lean_dec(x_462); +x_471 = lean_ctor_get(x_469, 0); +lean_inc(x_471); +x_472 = lean_ctor_get(x_469, 1); +lean_inc(x_472); +if (lean_is_exclusive(x_469)) { + lean_ctor_release(x_469, 0); + lean_ctor_release(x_469, 1); + x_473 = x_469; } else { - x_466 = x_464; - lean_ctor_set_tag(x_466, 1); + lean_dec_ref(x_469); + x_473 = lean_box(0); } -lean_ctor_set(x_466, 0, x_463); -lean_ctor_set(x_466, 1, x_465); -if (lean_is_scalar(x_456)) { - x_467 = lean_alloc_ctor(1, 2, 0); +x_474 = lean_ctor_get(x_471, 0); +lean_inc(x_474); +x_475 = lean_ctor_get(x_471, 1); +lean_inc(x_475); +lean_dec(x_471); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_476 = l_Lean_Meta_trySubst(x_474, x_475, x_5, x_6, x_7, x_8, x_470); +if (lean_obj_tag(x_476) == 0) +{ +lean_object* x_477; lean_object* x_478; lean_object* x_479; lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; lean_object* x_484; lean_object* x_485; lean_object* x_486; +lean_dec(x_426); +lean_dec(x_424); +lean_dec(x_421); +lean_dec(x_12); +x_477 = lean_ctor_get(x_476, 0); +lean_inc(x_477); +x_478 = lean_ctor_get(x_476, 1); +lean_inc(x_478); +if (lean_is_exclusive(x_476)) { + lean_ctor_release(x_476, 0); + lean_ctor_release(x_476, 1); + x_479 = x_476; } else { - x_467 = x_456; - lean_ctor_set_tag(x_467, 1); + lean_dec_ref(x_476); + x_479 = lean_box(0); } -lean_ctor_set(x_467, 0, x_460); -lean_ctor_set(x_467, 1, x_466); -x_468 = lean_array_mk(x_467); -if (lean_is_scalar(x_462)) { - x_469 = lean_alloc_ctor(0, 2, 0); +x_480 = lean_ctor_get(x_472, 0); +lean_inc(x_480); +if (lean_is_exclusive(x_472)) { + lean_ctor_release(x_472, 0); + lean_ctor_release(x_472, 1); + x_481 = x_472; } else { - x_469 = x_462; + lean_dec_ref(x_472); + x_481 = lean_box(0); } -lean_ctor_set(x_469, 0, x_468); -lean_ctor_set(x_469, 1, x_461); -x_30 = x_469; +x_482 = lean_box(0); +if (lean_is_scalar(x_481)) { + x_483 = lean_alloc_ctor(1, 2, 0); +} else { + x_483 = x_481; + lean_ctor_set_tag(x_483, 1); +} +lean_ctor_set(x_483, 0, x_480); +lean_ctor_set(x_483, 1, x_482); +if (lean_is_scalar(x_473)) { + x_484 = lean_alloc_ctor(1, 2, 0); +} else { + x_484 = x_473; + lean_ctor_set_tag(x_484, 1); +} +lean_ctor_set(x_484, 0, x_477); +lean_ctor_set(x_484, 1, x_483); +x_485 = lean_array_mk(x_484); +if (lean_is_scalar(x_479)) { + x_486 = lean_alloc_ctor(0, 2, 0); +} else { + x_486 = x_479; +} +lean_ctor_set(x_486, 0, x_485); +lean_ctor_set(x_486, 1, x_478); +x_30 = x_486; goto block_37; } else { -lean_object* x_470; lean_object* x_471; -lean_dec(x_456); -lean_dec(x_455); -x_470 = lean_ctor_get(x_459, 0); -lean_inc(x_470); -x_471 = lean_ctor_get(x_459, 1); -lean_inc(x_471); -lean_dec(x_459); -x_410 = x_470; -x_411 = x_471; -goto block_444; +lean_object* x_487; lean_object* x_488; +lean_dec(x_473); +lean_dec(x_472); +x_487 = lean_ctor_get(x_476, 0); +lean_inc(x_487); +x_488 = lean_ctor_get(x_476, 1); +lean_inc(x_488); +lean_dec(x_476); +x_427 = x_487; +x_428 = x_488; +goto block_461; } } } else { -lean_object* x_472; lean_object* x_473; -x_472 = lean_ctor_get(x_445, 0); -lean_inc(x_472); -x_473 = lean_ctor_get(x_445, 1); -lean_inc(x_473); -lean_dec(x_445); -x_410 = x_472; -x_411 = x_473; -goto block_444; +lean_object* x_489; lean_object* x_490; +x_489 = lean_ctor_get(x_462, 0); +lean_inc(x_489); +x_490 = lean_ctor_get(x_462, 1); +lean_inc(x_490); +lean_dec(x_462); +x_427 = x_489; +x_428 = x_490; +goto block_461; } -block_444: +block_461: { -uint8_t x_412; -x_412 = l_Lean_Exception_isInterrupt(x_410); -if (x_412 == 0) +uint8_t x_429; +x_429 = l_Lean_Exception_isInterrupt(x_427); +if (x_429 == 0) { -uint8_t x_413; -x_413 = l_Lean_Exception_isRuntime(x_410); -if (x_413 == 0) +uint8_t x_430; +x_430 = l_Lean_Exception_isRuntime(x_427); +if (x_430 == 0) { -lean_object* x_414; lean_object* x_415; lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; lean_object* x_421; -lean_dec(x_410); -lean_dec(x_409); -x_414 = l_Lean_Meta_SavedState_restore(x_407, x_5, x_6, x_7, x_8, x_411); -lean_dec(x_407); -x_415 = lean_ctor_get(x_414, 1); -lean_inc(x_415); -if (lean_is_exclusive(x_414)) { - lean_ctor_release(x_414, 0); - lean_ctor_release(x_414, 1); - x_416 = x_414; +lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; lean_object* x_436; lean_object* x_437; lean_object* x_438; +lean_dec(x_427); +lean_dec(x_426); +x_431 = l_Lean_Meta_SavedState_restore(x_424, x_5, x_6, x_7, x_8, x_428); +lean_dec(x_424); +x_432 = lean_ctor_get(x_431, 1); +lean_inc(x_432); +if (lean_is_exclusive(x_431)) { + lean_ctor_release(x_431, 0); + lean_ctor_release(x_431, 1); + x_433 = x_431; } else { - lean_dec_ref(x_414); - x_416 = lean_box(0); + lean_dec_ref(x_431); + x_433 = lean_box(0); } -x_417 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_415); -x_418 = lean_ctor_get(x_417, 0); -lean_inc(x_418); -x_419 = lean_ctor_get(x_417, 1); -lean_inc(x_419); -if (lean_is_exclusive(x_417)) { - lean_ctor_release(x_417, 0); - lean_ctor_release(x_417, 1); - x_420 = x_417; +x_434 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_432); +x_435 = lean_ctor_get(x_434, 0); +lean_inc(x_435); +x_436 = lean_ctor_get(x_434, 1); +lean_inc(x_436); +if (lean_is_exclusive(x_434)) { + lean_ctor_release(x_434, 0); + lean_ctor_release(x_434, 1); + x_437 = x_434; } else { - lean_dec_ref(x_417); - x_420 = lean_box(0); + lean_dec_ref(x_434); + x_437 = lean_box(0); } lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_421 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_419); -if (lean_obj_tag(x_421) == 0) +x_438 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_436); +if (lean_obj_tag(x_438) == 0) { -lean_dec(x_420); -lean_dec(x_418); -lean_dec(x_416); -lean_dec(x_404); +lean_dec(x_437); +lean_dec(x_435); +lean_dec(x_433); +lean_dec(x_421); lean_dec(x_12); -x_30 = x_421; +x_30 = x_438; goto block_37; } else { -lean_object* x_422; lean_object* x_423; lean_object* x_424; uint8_t x_425; -x_422 = lean_ctor_get(x_421, 0); -lean_inc(x_422); -x_423 = lean_ctor_get(x_421, 1); -lean_inc(x_423); -if (lean_is_exclusive(x_421)) { - lean_ctor_release(x_421, 0); - lean_ctor_release(x_421, 1); - x_424 = x_421; +lean_object* x_439; lean_object* x_440; lean_object* x_441; uint8_t x_442; +x_439 = lean_ctor_get(x_438, 0); +lean_inc(x_439); +x_440 = lean_ctor_get(x_438, 1); +lean_inc(x_440); +if (lean_is_exclusive(x_438)) { + lean_ctor_release(x_438, 0); + lean_ctor_release(x_438, 1); + x_441 = x_438; } else { - lean_dec_ref(x_421); - x_424 = lean_box(0); + lean_dec_ref(x_438); + x_441 = lean_box(0); } -x_425 = l_Lean_Exception_isInterrupt(x_422); -if (x_425 == 0) +x_442 = l_Lean_Exception_isInterrupt(x_439); +if (x_442 == 0) { -uint8_t x_426; -x_426 = l_Lean_Exception_isRuntime(x_422); -if (x_426 == 0) +uint8_t x_443; +x_443 = l_Lean_Exception_isRuntime(x_439); +if (x_443 == 0) { -lean_object* x_427; lean_object* x_428; lean_object* x_429; lean_object* x_430; lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; lean_object* x_436; lean_object* x_437; lean_object* x_438; lean_object* x_439; -lean_dec(x_424); -lean_dec(x_422); -x_427 = l_Lean_Meta_SavedState_restore(x_418, x_5, x_6, x_7, x_8, x_423); -lean_dec(x_418); -x_428 = lean_ctor_get(x_427, 1); -lean_inc(x_428); -if (lean_is_exclusive(x_427)) { - lean_ctor_release(x_427, 0); - lean_ctor_release(x_427, 1); - x_429 = x_427; +lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; lean_object* x_448; lean_object* x_449; lean_object* x_450; lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; lean_object* x_455; lean_object* x_456; +lean_dec(x_441); +lean_dec(x_439); +x_444 = l_Lean_Meta_SavedState_restore(x_435, x_5, x_6, x_7, x_8, x_440); +lean_dec(x_435); +x_445 = lean_ctor_get(x_444, 1); +lean_inc(x_445); +if (lean_is_exclusive(x_444)) { + lean_ctor_release(x_444, 0); + lean_ctor_release(x_444, 1); + x_446 = x_444; } else { - lean_dec_ref(x_427); - x_429 = lean_box(0); + lean_dec_ref(x_444); + x_446 = lean_box(0); } lean_inc(x_2); -x_430 = l_Lean_MessageData_ofName(x_2); -x_431 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_429)) { - x_432 = lean_alloc_ctor(7, 2, 0); +x_447 = l_Lean_MessageData_ofName(x_2); +x_448 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_446)) { + x_449 = lean_alloc_ctor(7, 2, 0); } else { - x_432 = x_429; - lean_ctor_set_tag(x_432, 7); + x_449 = x_446; + lean_ctor_set_tag(x_449, 7); } -lean_ctor_set(x_432, 0, x_431); -lean_ctor_set(x_432, 1, x_430); -x_433 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -if (lean_is_scalar(x_420)) { - x_434 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_449, 0, x_448); +lean_ctor_set(x_449, 1, x_447); +x_450 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_437)) { + x_451 = lean_alloc_ctor(7, 2, 0); } else { - x_434 = x_420; - lean_ctor_set_tag(x_434, 7); + x_451 = x_437; + lean_ctor_set_tag(x_451, 7); } -lean_ctor_set(x_434, 0, x_432); -lean_ctor_set(x_434, 1, x_433); -x_435 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_435, 0, x_12); -if (lean_is_scalar(x_416)) { - x_436 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_451, 0, x_449); +lean_ctor_set(x_451, 1, x_450); +x_452 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_452, 0, x_12); +if (lean_is_scalar(x_433)) { + x_453 = lean_alloc_ctor(7, 2, 0); } else { - x_436 = x_416; - lean_ctor_set_tag(x_436, 7); + x_453 = x_433; + lean_ctor_set_tag(x_453, 7); } -lean_ctor_set(x_436, 0, x_434); -lean_ctor_set(x_436, 1, x_435); -x_437 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_404)) { - x_438 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_453, 0, x_451); +lean_ctor_set(x_453, 1, x_452); +x_454 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_421)) { + x_455 = lean_alloc_ctor(7, 2, 0); } else { - x_438 = x_404; - lean_ctor_set_tag(x_438, 7); + x_455 = x_421; + lean_ctor_set_tag(x_455, 7); } -lean_ctor_set(x_438, 0, x_436); -lean_ctor_set(x_438, 1, x_437); -x_439 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_438, x_5, x_6, x_7, x_8, x_428); -x_30 = x_439; +lean_ctor_set(x_455, 0, x_453); +lean_ctor_set(x_455, 1, x_454); +x_456 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_455, x_5, x_6, x_7, x_8, x_445); +x_30 = x_456; goto block_37; } else { -lean_object* x_440; -lean_dec(x_420); -lean_dec(x_418); -lean_dec(x_416); -lean_dec(x_404); +lean_object* x_457; +lean_dec(x_437); +lean_dec(x_435); +lean_dec(x_433); +lean_dec(x_421); lean_dec(x_12); -if (lean_is_scalar(x_424)) { - x_440 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_441)) { + x_457 = lean_alloc_ctor(1, 2, 0); } else { - x_440 = x_424; + x_457 = x_441; } -lean_ctor_set(x_440, 0, x_422); -lean_ctor_set(x_440, 1, x_423); -x_30 = x_440; +lean_ctor_set(x_457, 0, x_439); +lean_ctor_set(x_457, 1, x_440); +x_30 = x_457; goto block_37; } } else { -lean_object* x_441; -lean_dec(x_420); -lean_dec(x_418); -lean_dec(x_416); -lean_dec(x_404); +lean_object* x_458; +lean_dec(x_437); +lean_dec(x_435); +lean_dec(x_433); +lean_dec(x_421); lean_dec(x_12); -if (lean_is_scalar(x_424)) { - x_441 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_441)) { + x_458 = lean_alloc_ctor(1, 2, 0); } else { - x_441 = x_424; + x_458 = x_441; } -lean_ctor_set(x_441, 0, x_422); -lean_ctor_set(x_441, 1, x_423); -x_30 = x_441; +lean_ctor_set(x_458, 0, x_439); +lean_ctor_set(x_458, 1, x_440); +x_30 = x_458; goto block_37; } } } else { -lean_object* x_442; -lean_dec(x_407); -lean_dec(x_404); +lean_object* x_459; +lean_dec(x_424); +lean_dec(x_421); lean_dec(x_12); -if (lean_is_scalar(x_409)) { - x_442 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_426)) { + x_459 = lean_alloc_ctor(1, 2, 0); } else { - x_442 = x_409; - lean_ctor_set_tag(x_442, 1); + x_459 = x_426; + lean_ctor_set_tag(x_459, 1); } -lean_ctor_set(x_442, 0, x_410); -lean_ctor_set(x_442, 1, x_411); -x_30 = x_442; +lean_ctor_set(x_459, 0, x_427); +lean_ctor_set(x_459, 1, x_428); +x_30 = x_459; goto block_37; } } else { -lean_object* x_443; -lean_dec(x_407); -lean_dec(x_404); +lean_object* x_460; +lean_dec(x_424); +lean_dec(x_421); lean_dec(x_12); -if (lean_is_scalar(x_409)) { - x_443 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_426)) { + x_460 = lean_alloc_ctor(1, 2, 0); } else { - x_443 = x_409; - lean_ctor_set_tag(x_443, 1); + x_460 = x_426; + lean_ctor_set_tag(x_460, 1); } -lean_ctor_set(x_443, 0, x_410); -lean_ctor_set(x_443, 1, x_411); -x_30 = x_443; +lean_ctor_set(x_460, 0, x_427); +lean_ctor_set(x_460, 1, x_428); +x_30 = x_460; goto block_37; } } } else { -lean_object* x_474; -lean_dec(x_395); -lean_dec(x_12); -if (lean_is_scalar(x_397)) { - x_474 = lean_alloc_ctor(1, 2, 0); -} else { - x_474 = x_397; - lean_ctor_set_tag(x_474, 1); -} -lean_ctor_set(x_474, 0, x_398); -lean_ctor_set(x_474, 1, x_399); -x_30 = x_474; -goto block_37; -} -} -else -{ -lean_object* x_475; -lean_dec(x_395); -lean_dec(x_12); -if (lean_is_scalar(x_397)) { - x_475 = lean_alloc_ctor(1, 2, 0); -} else { - x_475 = x_397; - lean_ctor_set_tag(x_475, 1); -} -lean_ctor_set(x_475, 0, x_398); -lean_ctor_set(x_475, 1, x_399); -x_30 = x_475; -goto block_37; -} -} -} -else -{ -lean_object* x_490; -lean_dec(x_384); -lean_dec(x_12); -if (lean_is_scalar(x_389)) { - x_490 = lean_alloc_ctor(1, 2, 0); -} else { - x_490 = x_389; -} -lean_ctor_set(x_490, 0, x_387); -lean_ctor_set(x_490, 1, x_388); -x_30 = x_490; -goto block_37; -} -} -else -{ lean_object* x_491; -lean_dec(x_384); +lean_dec(x_412); lean_dec(x_12); -if (lean_is_scalar(x_389)) { +if (lean_is_scalar(x_414)) { x_491 = lean_alloc_ctor(1, 2, 0); } else { - x_491 = x_389; + x_491 = x_414; + lean_ctor_set_tag(x_491, 1); } -lean_ctor_set(x_491, 0, x_387); -lean_ctor_set(x_491, 1, x_388); +lean_ctor_set(x_491, 0, x_415); +lean_ctor_set(x_491, 1, x_416); x_30 = x_491; goto block_37; } } -} else { lean_object* x_492; -lean_dec(x_52); +lean_dec(x_412); lean_dec(x_12); -x_492 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_492, 0, x_377); -lean_ctor_set(x_492, 1, x_378); +if (lean_is_scalar(x_414)) { + x_492 = lean_alloc_ctor(1, 2, 0); +} else { + x_492 = x_414; + lean_ctor_set_tag(x_492, 1); +} +lean_ctor_set(x_492, 0, x_415); +lean_ctor_set(x_492, 1, x_416); x_30 = x_492; goto block_37; } } +} else { -lean_object* x_493; -lean_dec(x_52); +lean_object* x_507; +lean_dec(x_401); lean_dec(x_12); -x_493 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_493, 0, x_377); -lean_ctor_set(x_493, 1, x_378); -x_30 = x_493; +if (lean_is_scalar(x_406)) { + x_507 = lean_alloc_ctor(1, 2, 0); +} else { + x_507 = x_406; +} +lean_ctor_set(x_507, 0, x_404); +lean_ctor_set(x_507, 1, x_405); +x_30 = x_507; goto block_37; } } -} -} else { -lean_dec(x_39); -lean_dec(x_14); +lean_object* x_508; +lean_dec(x_401); lean_dec(x_12); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -return x_41; -} -} -else -{ -lean_dec(x_39); -lean_dec(x_14); -lean_dec(x_12); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -return x_41; -} -} -else -{ -lean_object* x_494; lean_object* x_495; uint8_t x_496; -x_494 = lean_ctor_get(x_41, 0); -x_495 = lean_ctor_get(x_41, 1); -lean_inc(x_495); -lean_inc(x_494); -lean_dec(x_41); -x_496 = l_Lean_Exception_isInterrupt(x_494); -if (x_496 == 0) -{ -uint8_t x_497; -x_497 = l_Lean_Exception_isRuntime(x_494); -if (x_497 == 0) -{ -lean_object* x_498; lean_object* x_499; lean_object* x_500; lean_object* x_501; lean_object* x_502; lean_object* x_503; lean_object* x_504; -lean_dec(x_494); -x_498 = l_Lean_Meta_SavedState_restore(x_39, x_5, x_6, x_7, x_8, x_495); -lean_dec(x_39); -x_499 = lean_ctor_get(x_498, 1); -lean_inc(x_499); -lean_dec(x_498); -x_500 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_499); -x_501 = lean_ctor_get(x_500, 0); -lean_inc(x_501); -x_502 = lean_ctor_get(x_500, 1); -lean_inc(x_502); -lean_dec(x_500); -x_503 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__2; -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_12); -x_504 = l_Lean_MVarId_contradiction(x_12, x_503, x_5, x_6, x_7, x_8, x_502); -if (lean_obj_tag(x_504) == 0) -{ -lean_object* x_505; lean_object* x_506; lean_object* x_507; lean_object* x_508; -lean_dec(x_501); -lean_dec(x_12); -x_505 = lean_ctor_get(x_504, 1); -lean_inc(x_505); -if (lean_is_exclusive(x_504)) { - lean_ctor_release(x_504, 0); - lean_ctor_release(x_504, 1); - x_506 = x_504; +if (lean_is_scalar(x_406)) { + x_508 = lean_alloc_ctor(1, 2, 0); } else { - lean_dec_ref(x_504); - x_506 = lean_box(0); + x_508 = x_406; } -x_507 = l_Lean_Meta_casesOnStuckLHS___closed__2; -if (lean_is_scalar(x_506)) { - x_508 = lean_alloc_ctor(0, 2, 0); -} else { - x_508 = x_506; -} -lean_ctor_set(x_508, 0, x_507); -lean_ctor_set(x_508, 1, x_505); +lean_ctor_set(x_508, 0, x_404); +lean_ctor_set(x_508, 1, x_405); x_30 = x_508; goto block_37; } +} +} else { -lean_object* x_509; lean_object* x_510; lean_object* x_511; uint8_t x_512; -x_509 = lean_ctor_get(x_504, 0); -lean_inc(x_509); -x_510 = lean_ctor_get(x_504, 1); -lean_inc(x_510); -if (lean_is_exclusive(x_504)) { - lean_ctor_release(x_504, 0); - lean_ctor_release(x_504, 1); - x_511 = x_504; -} else { - lean_dec_ref(x_504); - x_511 = lean_box(0); +lean_object* x_509; +lean_dec(x_67); +lean_dec(x_12); +x_509 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_509, 0, x_394); +lean_ctor_set(x_509, 1, x_395); +x_30 = x_509; +goto block_37; } -x_512 = l_Lean_Exception_isInterrupt(x_509); -if (x_512 == 0) +} +else { -uint8_t x_513; -x_513 = l_Lean_Exception_isRuntime(x_509); -if (x_513 == 0) +lean_object* x_510; +lean_dec(x_67); +lean_dec(x_12); +x_510 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_510, 0, x_394); +lean_ctor_set(x_510, 1, x_395); +x_30 = x_510; +goto block_37; +} +} +} +} +else { -lean_object* x_514; lean_object* x_515; lean_object* x_516; lean_object* x_517; lean_object* x_518; lean_object* x_519; -lean_dec(x_511); -lean_dec(x_509); -x_514 = l_Lean_Meta_SavedState_restore(x_501, x_5, x_6, x_7, x_8, x_510); -lean_dec(x_501); -x_515 = lean_ctor_get(x_514, 1); -lean_inc(x_515); -lean_dec(x_514); -x_516 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_515); -x_517 = lean_ctor_get(x_516, 0); -lean_inc(x_517); -x_518 = lean_ctor_get(x_516, 1); -lean_inc(x_518); -lean_dec(x_516); +lean_object* x_511; lean_object* x_512; lean_object* x_513; +x_511 = lean_ctor_get(x_65, 0); +x_512 = lean_ctor_get(x_65, 1); +lean_inc(x_512); +lean_inc(x_511); +lean_dec(x_65); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_519 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_518); -if (lean_obj_tag(x_519) == 0) +x_513 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(x_12, x_5, x_6, x_7, x_8, x_512); +if (lean_obj_tag(x_513) == 0) { -lean_dec(x_517); +lean_object* x_514; lean_object* x_515; lean_object* x_516; lean_object* x_517; lean_object* x_518; lean_object* x_519; lean_object* x_520; +lean_dec(x_511); lean_dec(x_12); -x_30 = x_519; +x_514 = lean_ctor_get(x_513, 0); +lean_inc(x_514); +x_515 = lean_ctor_get(x_513, 1); +lean_inc(x_515); +if (lean_is_exclusive(x_513)) { + lean_ctor_release(x_513, 0); + lean_ctor_release(x_513, 1); + x_516 = x_513; +} else { + lean_dec_ref(x_513); + x_516 = lean_box(0); +} +x_517 = lean_box(0); +x_518 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_518, 0, x_514); +lean_ctor_set(x_518, 1, x_517); +x_519 = lean_array_mk(x_518); +if (lean_is_scalar(x_516)) { + x_520 = lean_alloc_ctor(0, 2, 0); +} else { + x_520 = x_516; +} +lean_ctor_set(x_520, 0, x_519); +lean_ctor_set(x_520, 1, x_515); +x_30 = x_520; goto block_37; } else { -lean_object* x_520; lean_object* x_521; lean_object* x_522; uint8_t x_523; -x_520 = lean_ctor_get(x_519, 0); -lean_inc(x_520); -x_521 = lean_ctor_get(x_519, 1); +lean_object* x_521; lean_object* x_522; lean_object* x_523; uint8_t x_524; +x_521 = lean_ctor_get(x_513, 0); lean_inc(x_521); -if (lean_is_exclusive(x_519)) { - lean_ctor_release(x_519, 0); - lean_ctor_release(x_519, 1); - x_522 = x_519; +x_522 = lean_ctor_get(x_513, 1); +lean_inc(x_522); +if (lean_is_exclusive(x_513)) { + lean_ctor_release(x_513, 0); + lean_ctor_release(x_513, 1); + x_523 = x_513; } else { - lean_dec_ref(x_519); - x_522 = lean_box(0); + lean_dec_ref(x_513); + x_523 = lean_box(0); } -x_523 = l_Lean_Exception_isInterrupt(x_520); -if (x_523 == 0) -{ -uint8_t x_524; -x_524 = l_Lean_Exception_isRuntime(x_520); +x_524 = l_Lean_Exception_isInterrupt(x_521); if (x_524 == 0) { -lean_object* x_525; lean_object* x_526; lean_object* x_527; lean_object* x_528; lean_object* x_529; lean_object* x_530; lean_object* x_531; lean_object* x_532; uint8_t x_610; lean_object* x_611; -lean_dec(x_522); -lean_dec(x_520); -x_525 = l_Lean_Meta_SavedState_restore(x_517, x_5, x_6, x_7, x_8, x_521); -lean_dec(x_517); -x_526 = lean_ctor_get(x_525, 1); -lean_inc(x_526); -lean_dec(x_525); -x_527 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_526); -x_528 = lean_ctor_get(x_527, 0); -lean_inc(x_528); -x_529 = lean_ctor_get(x_527, 1); +uint8_t x_525; +x_525 = l_Lean_Exception_isRuntime(x_521); +if (x_525 == 0) +{ +lean_object* x_526; lean_object* x_527; lean_object* x_528; lean_object* x_529; lean_object* x_530; lean_object* x_531; +lean_dec(x_523); +lean_dec(x_521); +x_526 = l_Lean_Meta_SavedState_restore(x_511, x_5, x_6, x_7, x_8, x_522); +lean_dec(x_511); +x_527 = lean_ctor_get(x_526, 1); +lean_inc(x_527); +lean_dec(x_526); +x_528 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_527); +x_529 = lean_ctor_get(x_528, 0); lean_inc(x_529); -if (lean_is_exclusive(x_527)) { - lean_ctor_release(x_527, 0); - lean_ctor_release(x_527, 1); - x_530 = x_527; -} else { - lean_dec_ref(x_527); - x_530 = lean_box(0); -} -x_610 = 1; +x_530 = lean_ctor_get(x_528, 1); +lean_inc(x_530); +lean_dec(x_528); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_611 = l_Lean_Meta_simpIfTarget(x_12, x_610, x_5, x_6, x_7, x_8, x_529); -if (lean_obj_tag(x_611) == 0) +x_531 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_530); +if (lean_obj_tag(x_531) == 0) { -lean_object* x_612; lean_object* x_613; uint8_t x_614; -x_612 = lean_ctor_get(x_611, 0); -lean_inc(x_612); -x_613 = lean_ctor_get(x_611, 1); -lean_inc(x_613); -lean_dec(x_611); -x_614 = lean_name_eq(x_612, x_12); -if (x_614 == 0) -{ -lean_object* x_615; lean_object* x_616; -lean_dec(x_530); -lean_dec(x_528); +lean_dec(x_529); lean_dec(x_12); -x_615 = lean_box(0); -x_616 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_612, x_615, x_5, x_6, x_7, x_8, x_613); -x_30 = x_616; +x_30 = x_531; goto block_37; } else { -lean_object* x_617; lean_object* x_618; lean_object* x_619; lean_object* x_620; -lean_dec(x_612); -x_617 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; -x_618 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_617, x_5, x_6, x_7, x_8, x_613); -x_619 = lean_ctor_get(x_618, 0); -lean_inc(x_619); -x_620 = lean_ctor_get(x_618, 1); -lean_inc(x_620); -lean_dec(x_618); -x_531 = x_619; -x_532 = x_620; -goto block_609; -} -} -else -{ -lean_object* x_621; lean_object* x_622; -x_621 = lean_ctor_get(x_611, 0); -lean_inc(x_621); -x_622 = lean_ctor_get(x_611, 1); -lean_inc(x_622); -lean_dec(x_611); -x_531 = x_621; -x_532 = x_622; -goto block_609; -} -block_609: -{ -uint8_t x_533; -x_533 = l_Lean_Exception_isInterrupt(x_531); -if (x_533 == 0) -{ -uint8_t x_534; -x_534 = l_Lean_Exception_isRuntime(x_531); -if (x_534 == 0) -{ -lean_object* x_535; lean_object* x_536; lean_object* x_537; lean_object* x_538; lean_object* x_539; lean_object* x_540; lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_578; -lean_dec(x_531); -lean_dec(x_530); -x_535 = l_Lean_Meta_SavedState_restore(x_528, x_5, x_6, x_7, x_8, x_532); -lean_dec(x_528); -x_536 = lean_ctor_get(x_535, 1); -lean_inc(x_536); -if (lean_is_exclusive(x_535)) { - lean_ctor_release(x_535, 0); - lean_ctor_release(x_535, 1); - x_537 = x_535; +lean_object* x_532; lean_object* x_533; lean_object* x_534; uint8_t x_535; +x_532 = lean_ctor_get(x_531, 0); +lean_inc(x_532); +x_533 = lean_ctor_get(x_531, 1); +lean_inc(x_533); +if (lean_is_exclusive(x_531)) { + lean_ctor_release(x_531, 0); + lean_ctor_release(x_531, 1); + x_534 = x_531; } else { - lean_dec_ref(x_535); - x_537 = lean_box(0); + lean_dec_ref(x_531); + x_534 = lean_box(0); } -x_538 = lean_box(0); -x_539 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_536); +x_535 = l_Lean_Exception_isInterrupt(x_532); +if (x_535 == 0) +{ +uint8_t x_536; +x_536 = l_Lean_Exception_isRuntime(x_532); +if (x_536 == 0) +{ +lean_object* x_537; lean_object* x_538; lean_object* x_539; lean_object* x_540; lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_object* x_544; uint8_t x_622; lean_object* x_623; +lean_dec(x_534); +lean_dec(x_532); +x_537 = l_Lean_Meta_SavedState_restore(x_529, x_5, x_6, x_7, x_8, x_533); +lean_dec(x_529); +x_538 = lean_ctor_get(x_537, 1); +lean_inc(x_538); +lean_dec(x_537); +x_539 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_538); x_540 = lean_ctor_get(x_539, 0); lean_inc(x_540); x_541 = lean_ctor_get(x_539, 1); @@ -19699,151 +19837,62 @@ if (lean_is_exclusive(x_539)) { lean_dec_ref(x_539); x_542 = lean_box(0); } +x_622 = 1; lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_578 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_538, x_5, x_6, x_7, x_8, x_541); -if (lean_obj_tag(x_578) == 0) +x_623 = l_Lean_Meta_simpIfTarget(x_12, x_622, x_5, x_6, x_7, x_8, x_541); +if (lean_obj_tag(x_623) == 0) { -lean_object* x_579; -x_579 = lean_ctor_get(x_578, 0); -lean_inc(x_579); -if (lean_obj_tag(x_579) == 0) +lean_object* x_624; lean_object* x_625; uint8_t x_626; +x_624 = lean_ctor_get(x_623, 0); +lean_inc(x_624); +x_625 = lean_ctor_get(x_623, 1); +lean_inc(x_625); +lean_dec(x_623); +x_626 = lean_name_eq(x_624, x_12); +if (x_626 == 0) { -lean_object* x_580; lean_object* x_581; lean_object* x_582; lean_object* x_583; lean_object* x_584; -x_580 = lean_ctor_get(x_578, 1); -lean_inc(x_580); -lean_dec(x_578); -x_581 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; -x_582 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_581, x_5, x_6, x_7, x_8, x_580); -x_583 = lean_ctor_get(x_582, 0); -lean_inc(x_583); -x_584 = lean_ctor_get(x_582, 1); -lean_inc(x_584); -lean_dec(x_582); -x_543 = x_583; -x_544 = x_584; -goto block_577; -} -else -{ -lean_object* x_585; lean_object* x_586; lean_object* x_587; lean_object* x_588; lean_object* x_589; lean_object* x_590; lean_object* x_591; lean_object* x_592; -x_585 = lean_ctor_get(x_579, 0); -lean_inc(x_585); -lean_dec(x_579); -x_586 = lean_ctor_get(x_578, 1); -lean_inc(x_586); -lean_dec(x_578); -x_587 = lean_ctor_get(x_585, 0); -lean_inc(x_587); -x_588 = lean_ctor_get(x_585, 1); -lean_inc(x_588); -if (lean_is_exclusive(x_585)) { - lean_ctor_release(x_585, 0); - lean_ctor_release(x_585, 1); - x_589 = x_585; -} else { - lean_dec_ref(x_585); - x_589 = lean_box(0); -} -x_590 = lean_ctor_get(x_587, 0); -lean_inc(x_590); -x_591 = lean_ctor_get(x_587, 1); -lean_inc(x_591); -lean_dec(x_587); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_592 = l_Lean_Meta_trySubst(x_590, x_591, x_5, x_6, x_7, x_8, x_586); -if (lean_obj_tag(x_592) == 0) -{ -lean_object* x_593; lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_object* x_598; lean_object* x_599; lean_object* x_600; lean_object* x_601; lean_object* x_602; +lean_object* x_627; lean_object* x_628; lean_dec(x_542); lean_dec(x_540); -lean_dec(x_537); lean_dec(x_12); -x_593 = lean_ctor_get(x_592, 0); -lean_inc(x_593); -x_594 = lean_ctor_get(x_592, 1); -lean_inc(x_594); -if (lean_is_exclusive(x_592)) { - lean_ctor_release(x_592, 0); - lean_ctor_release(x_592, 1); - x_595 = x_592; -} else { - lean_dec_ref(x_592); - x_595 = lean_box(0); -} -x_596 = lean_ctor_get(x_588, 0); -lean_inc(x_596); -if (lean_is_exclusive(x_588)) { - lean_ctor_release(x_588, 0); - lean_ctor_release(x_588, 1); - x_597 = x_588; -} else { - lean_dec_ref(x_588); - x_597 = lean_box(0); -} -x_598 = lean_box(0); -if (lean_is_scalar(x_597)) { - x_599 = lean_alloc_ctor(1, 2, 0); -} else { - x_599 = x_597; - lean_ctor_set_tag(x_599, 1); -} -lean_ctor_set(x_599, 0, x_596); -lean_ctor_set(x_599, 1, x_598); -if (lean_is_scalar(x_589)) { - x_600 = lean_alloc_ctor(1, 2, 0); -} else { - x_600 = x_589; - lean_ctor_set_tag(x_600, 1); -} -lean_ctor_set(x_600, 0, x_593); -lean_ctor_set(x_600, 1, x_599); -x_601 = lean_array_mk(x_600); -if (lean_is_scalar(x_595)) { - x_602 = lean_alloc_ctor(0, 2, 0); -} else { - x_602 = x_595; -} -lean_ctor_set(x_602, 0, x_601); -lean_ctor_set(x_602, 1, x_594); -x_30 = x_602; +x_627 = lean_box(0); +x_628 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_624, x_627, x_5, x_6, x_7, x_8, x_625); +x_30 = x_628; goto block_37; } else { -lean_object* x_603; lean_object* x_604; -lean_dec(x_589); -lean_dec(x_588); -x_603 = lean_ctor_get(x_592, 0); -lean_inc(x_603); -x_604 = lean_ctor_get(x_592, 1); -lean_inc(x_604); -lean_dec(x_592); -x_543 = x_603; -x_544 = x_604; -goto block_577; -} +lean_object* x_629; lean_object* x_630; lean_object* x_631; lean_object* x_632; +lean_dec(x_624); +x_629 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_630 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_629, x_5, x_6, x_7, x_8, x_625); +x_631 = lean_ctor_get(x_630, 0); +lean_inc(x_631); +x_632 = lean_ctor_get(x_630, 1); +lean_inc(x_632); +lean_dec(x_630); +x_543 = x_631; +x_544 = x_632; +goto block_621; } } else { -lean_object* x_605; lean_object* x_606; -x_605 = lean_ctor_get(x_578, 0); -lean_inc(x_605); -x_606 = lean_ctor_get(x_578, 1); -lean_inc(x_606); -lean_dec(x_578); -x_543 = x_605; -x_544 = x_606; -goto block_577; +lean_object* x_633; lean_object* x_634; +x_633 = lean_ctor_get(x_623, 0); +lean_inc(x_633); +x_634 = lean_ctor_get(x_623, 1); +lean_inc(x_634); +lean_dec(x_623); +x_543 = x_633; +x_544 = x_634; +goto block_621; } -block_577: +block_621: { uint8_t x_545; x_545 = l_Lean_Exception_isInterrupt(x_543); @@ -19853,7 +19902,7 @@ uint8_t x_546; x_546 = l_Lean_Exception_isRuntime(x_543); if (x_546 == 0) { -lean_object* x_547; lean_object* x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; lean_object* x_552; lean_object* x_553; lean_object* x_554; +lean_object* x_547; lean_object* x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; lean_object* x_590; lean_dec(x_543); lean_dec(x_542); x_547 = l_Lean_Meta_SavedState_restore(x_540, x_5, x_6, x_7, x_8, x_544); @@ -19868,295 +19917,1260 @@ if (lean_is_exclusive(x_547)) { lean_dec_ref(x_547); x_549 = lean_box(0); } -x_550 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_548); -x_551 = lean_ctor_get(x_550, 0); -lean_inc(x_551); -x_552 = lean_ctor_get(x_550, 1); +x_550 = lean_box(0); +x_551 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_548); +x_552 = lean_ctor_get(x_551, 0); lean_inc(x_552); -if (lean_is_exclusive(x_550)) { - lean_ctor_release(x_550, 0); - lean_ctor_release(x_550, 1); - x_553 = x_550; +x_553 = lean_ctor_get(x_551, 1); +lean_inc(x_553); +if (lean_is_exclusive(x_551)) { + lean_ctor_release(x_551, 0); + lean_ctor_release(x_551, 1); + x_554 = x_551; } else { - lean_dec_ref(x_550); - x_553 = lean_box(0); + lean_dec_ref(x_551); + x_554 = lean_box(0); } lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_12); -x_554 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_552); -if (lean_obj_tag(x_554) == 0) +x_590 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_550, x_5, x_6, x_7, x_8, x_553); +if (lean_obj_tag(x_590) == 0) { -lean_dec(x_553); -lean_dec(x_551); +lean_object* x_591; +x_591 = lean_ctor_get(x_590, 0); +lean_inc(x_591); +if (lean_obj_tag(x_591) == 0) +{ +lean_object* x_592; lean_object* x_593; lean_object* x_594; lean_object* x_595; lean_object* x_596; +x_592 = lean_ctor_get(x_590, 1); +lean_inc(x_592); +lean_dec(x_590); +x_593 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_594 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_593, x_5, x_6, x_7, x_8, x_592); +x_595 = lean_ctor_get(x_594, 0); +lean_inc(x_595); +x_596 = lean_ctor_get(x_594, 1); +lean_inc(x_596); +lean_dec(x_594); +x_555 = x_595; +x_556 = x_596; +goto block_589; +} +else +{ +lean_object* x_597; lean_object* x_598; lean_object* x_599; lean_object* x_600; lean_object* x_601; lean_object* x_602; lean_object* x_603; lean_object* x_604; +x_597 = lean_ctor_get(x_591, 0); +lean_inc(x_597); +lean_dec(x_591); +x_598 = lean_ctor_get(x_590, 1); +lean_inc(x_598); +lean_dec(x_590); +x_599 = lean_ctor_get(x_597, 0); +lean_inc(x_599); +x_600 = lean_ctor_get(x_597, 1); +lean_inc(x_600); +if (lean_is_exclusive(x_597)) { + lean_ctor_release(x_597, 0); + lean_ctor_release(x_597, 1); + x_601 = x_597; +} else { + lean_dec_ref(x_597); + x_601 = lean_box(0); +} +x_602 = lean_ctor_get(x_599, 0); +lean_inc(x_602); +x_603 = lean_ctor_get(x_599, 1); +lean_inc(x_603); +lean_dec(x_599); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_604 = l_Lean_Meta_trySubst(x_602, x_603, x_5, x_6, x_7, x_8, x_598); +if (lean_obj_tag(x_604) == 0) +{ +lean_object* x_605; lean_object* x_606; lean_object* x_607; lean_object* x_608; lean_object* x_609; lean_object* x_610; lean_object* x_611; lean_object* x_612; lean_object* x_613; lean_object* x_614; +lean_dec(x_554); +lean_dec(x_552); lean_dec(x_549); -lean_dec(x_537); lean_dec(x_12); -x_30 = x_554; +x_605 = lean_ctor_get(x_604, 0); +lean_inc(x_605); +x_606 = lean_ctor_get(x_604, 1); +lean_inc(x_606); +if (lean_is_exclusive(x_604)) { + lean_ctor_release(x_604, 0); + lean_ctor_release(x_604, 1); + x_607 = x_604; +} else { + lean_dec_ref(x_604); + x_607 = lean_box(0); +} +x_608 = lean_ctor_get(x_600, 0); +lean_inc(x_608); +if (lean_is_exclusive(x_600)) { + lean_ctor_release(x_600, 0); + lean_ctor_release(x_600, 1); + x_609 = x_600; +} else { + lean_dec_ref(x_600); + x_609 = lean_box(0); +} +x_610 = lean_box(0); +if (lean_is_scalar(x_609)) { + x_611 = lean_alloc_ctor(1, 2, 0); +} else { + x_611 = x_609; + lean_ctor_set_tag(x_611, 1); +} +lean_ctor_set(x_611, 0, x_608); +lean_ctor_set(x_611, 1, x_610); +if (lean_is_scalar(x_601)) { + x_612 = lean_alloc_ctor(1, 2, 0); +} else { + x_612 = x_601; + lean_ctor_set_tag(x_612, 1); +} +lean_ctor_set(x_612, 0, x_605); +lean_ctor_set(x_612, 1, x_611); +x_613 = lean_array_mk(x_612); +if (lean_is_scalar(x_607)) { + x_614 = lean_alloc_ctor(0, 2, 0); +} else { + x_614 = x_607; +} +lean_ctor_set(x_614, 0, x_613); +lean_ctor_set(x_614, 1, x_606); +x_30 = x_614; goto block_37; } else { -lean_object* x_555; lean_object* x_556; lean_object* x_557; uint8_t x_558; -x_555 = lean_ctor_get(x_554, 0); -lean_inc(x_555); -x_556 = lean_ctor_get(x_554, 1); -lean_inc(x_556); -if (lean_is_exclusive(x_554)) { - lean_ctor_release(x_554, 0); - lean_ctor_release(x_554, 1); - x_557 = x_554; -} else { - lean_dec_ref(x_554); - x_557 = lean_box(0); +lean_object* x_615; lean_object* x_616; +lean_dec(x_601); +lean_dec(x_600); +x_615 = lean_ctor_get(x_604, 0); +lean_inc(x_615); +x_616 = lean_ctor_get(x_604, 1); +lean_inc(x_616); +lean_dec(x_604); +x_555 = x_615; +x_556 = x_616; +goto block_589; } -x_558 = l_Lean_Exception_isInterrupt(x_555); +} +} +else +{ +lean_object* x_617; lean_object* x_618; +x_617 = lean_ctor_get(x_590, 0); +lean_inc(x_617); +x_618 = lean_ctor_get(x_590, 1); +lean_inc(x_618); +lean_dec(x_590); +x_555 = x_617; +x_556 = x_618; +goto block_589; +} +block_589: +{ +uint8_t x_557; +x_557 = l_Lean_Exception_isInterrupt(x_555); +if (x_557 == 0) +{ +uint8_t x_558; +x_558 = l_Lean_Exception_isRuntime(x_555); if (x_558 == 0) { -uint8_t x_559; -x_559 = l_Lean_Exception_isRuntime(x_555); -if (x_559 == 0) -{ -lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_object* x_567; lean_object* x_568; lean_object* x_569; lean_object* x_570; lean_object* x_571; lean_object* x_572; -lean_dec(x_557); +lean_object* x_559; lean_object* x_560; lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_dec(x_555); -x_560 = l_Lean_Meta_SavedState_restore(x_551, x_5, x_6, x_7, x_8, x_556); -lean_dec(x_551); -x_561 = lean_ctor_get(x_560, 1); -lean_inc(x_561); -if (lean_is_exclusive(x_560)) { - lean_ctor_release(x_560, 0); - lean_ctor_release(x_560, 1); - x_562 = x_560; +lean_dec(x_554); +x_559 = l_Lean_Meta_SavedState_restore(x_552, x_5, x_6, x_7, x_8, x_556); +lean_dec(x_552); +x_560 = lean_ctor_get(x_559, 1); +lean_inc(x_560); +if (lean_is_exclusive(x_559)) { + lean_ctor_release(x_559, 0); + lean_ctor_release(x_559, 1); + x_561 = x_559; } else { - lean_dec_ref(x_560); - x_562 = lean_box(0); + lean_dec_ref(x_559); + x_561 = lean_box(0); +} +x_562 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_560); +x_563 = lean_ctor_get(x_562, 0); +lean_inc(x_563); +x_564 = lean_ctor_get(x_562, 1); +lean_inc(x_564); +if (lean_is_exclusive(x_562)) { + lean_ctor_release(x_562, 0); + lean_ctor_release(x_562, 1); + x_565 = x_562; +} else { + lean_dec_ref(x_562); + x_565 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_566 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_564); +if (lean_obj_tag(x_566) == 0) +{ +lean_dec(x_565); +lean_dec(x_563); +lean_dec(x_561); +lean_dec(x_549); +lean_dec(x_12); +x_30 = x_566; +goto block_37; +} +else +{ +lean_object* x_567; lean_object* x_568; lean_object* x_569; uint8_t x_570; +x_567 = lean_ctor_get(x_566, 0); +lean_inc(x_567); +x_568 = lean_ctor_get(x_566, 1); +lean_inc(x_568); +if (lean_is_exclusive(x_566)) { + lean_ctor_release(x_566, 0); + lean_ctor_release(x_566, 1); + x_569 = x_566; +} else { + lean_dec_ref(x_566); + x_569 = lean_box(0); +} +x_570 = l_Lean_Exception_isInterrupt(x_567); +if (x_570 == 0) +{ +uint8_t x_571; +x_571 = l_Lean_Exception_isRuntime(x_567); +if (x_571 == 0) +{ +lean_object* x_572; lean_object* x_573; lean_object* x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; lean_object* x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; lean_object* x_582; lean_object* x_583; lean_object* x_584; +lean_dec(x_569); +lean_dec(x_567); +x_572 = l_Lean_Meta_SavedState_restore(x_563, x_5, x_6, x_7, x_8, x_568); +lean_dec(x_563); +x_573 = lean_ctor_get(x_572, 1); +lean_inc(x_573); +if (lean_is_exclusive(x_572)) { + lean_ctor_release(x_572, 0); + lean_ctor_release(x_572, 1); + x_574 = x_572; +} else { + lean_dec_ref(x_572); + x_574 = lean_box(0); } lean_inc(x_2); -x_563 = l_Lean_MessageData_ofName(x_2); -x_564 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; -if (lean_is_scalar(x_562)) { - x_565 = lean_alloc_ctor(7, 2, 0); +x_575 = l_Lean_MessageData_ofName(x_2); +x_576 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_574)) { + x_577 = lean_alloc_ctor(7, 2, 0); } else { - x_565 = x_562; - lean_ctor_set_tag(x_565, 7); + x_577 = x_574; + lean_ctor_set_tag(x_577, 7); } -lean_ctor_set(x_565, 0, x_564); -lean_ctor_set(x_565, 1, x_563); -x_566 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; -if (lean_is_scalar(x_553)) { - x_567 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_577, 0, x_576); +lean_ctor_set(x_577, 1, x_575); +x_578 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_565)) { + x_579 = lean_alloc_ctor(7, 2, 0); } else { - x_567 = x_553; - lean_ctor_set_tag(x_567, 7); + x_579 = x_565; + lean_ctor_set_tag(x_579, 7); } -lean_ctor_set(x_567, 0, x_565); -lean_ctor_set(x_567, 1, x_566); -x_568 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_568, 0, x_12); +lean_ctor_set(x_579, 0, x_577); +lean_ctor_set(x_579, 1, x_578); +x_580 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_580, 0, x_12); +if (lean_is_scalar(x_561)) { + x_581 = lean_alloc_ctor(7, 2, 0); +} else { + x_581 = x_561; + lean_ctor_set_tag(x_581, 7); +} +lean_ctor_set(x_581, 0, x_579); +lean_ctor_set(x_581, 1, x_580); +x_582 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; if (lean_is_scalar(x_549)) { - x_569 = lean_alloc_ctor(7, 2, 0); + x_583 = lean_alloc_ctor(7, 2, 0); } else { - x_569 = x_549; - lean_ctor_set_tag(x_569, 7); + x_583 = x_549; + lean_ctor_set_tag(x_583, 7); } -lean_ctor_set(x_569, 0, x_567); -lean_ctor_set(x_569, 1, x_568); -x_570 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; -if (lean_is_scalar(x_537)) { - x_571 = lean_alloc_ctor(7, 2, 0); -} else { - x_571 = x_537; - lean_ctor_set_tag(x_571, 7); -} -lean_ctor_set(x_571, 0, x_569); -lean_ctor_set(x_571, 1, x_570); -x_572 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_571, x_5, x_6, x_7, x_8, x_561); -x_30 = x_572; +lean_ctor_set(x_583, 0, x_581); +lean_ctor_set(x_583, 1, x_582); +x_584 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_583, x_5, x_6, x_7, x_8, x_573); +x_30 = x_584; goto block_37; } else { -lean_object* x_573; -lean_dec(x_553); -lean_dec(x_551); +lean_object* x_585; +lean_dec(x_565); +lean_dec(x_563); +lean_dec(x_561); lean_dec(x_549); -lean_dec(x_537); lean_dec(x_12); -if (lean_is_scalar(x_557)) { - x_573 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_569)) { + x_585 = lean_alloc_ctor(1, 2, 0); } else { - x_573 = x_557; + x_585 = x_569; } -lean_ctor_set(x_573, 0, x_555); -lean_ctor_set(x_573, 1, x_556); -x_30 = x_573; +lean_ctor_set(x_585, 0, x_567); +lean_ctor_set(x_585, 1, x_568); +x_30 = x_585; goto block_37; } } else { -lean_object* x_574; -lean_dec(x_553); -lean_dec(x_551); +lean_object* x_586; +lean_dec(x_565); +lean_dec(x_563); +lean_dec(x_561); lean_dec(x_549); -lean_dec(x_537); lean_dec(x_12); -if (lean_is_scalar(x_557)) { - x_574 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_569)) { + x_586 = lean_alloc_ctor(1, 2, 0); } else { - x_574 = x_557; + x_586 = x_569; } -lean_ctor_set(x_574, 0, x_555); -lean_ctor_set(x_574, 1, x_556); -x_30 = x_574; +lean_ctor_set(x_586, 0, x_567); +lean_ctor_set(x_586, 1, x_568); +x_30 = x_586; goto block_37; } } } else { -lean_object* x_575; +lean_object* x_587; +lean_dec(x_552); +lean_dec(x_549); +lean_dec(x_12); +if (lean_is_scalar(x_554)) { + x_587 = lean_alloc_ctor(1, 2, 0); +} else { + x_587 = x_554; + lean_ctor_set_tag(x_587, 1); +} +lean_ctor_set(x_587, 0, x_555); +lean_ctor_set(x_587, 1, x_556); +x_30 = x_587; +goto block_37; +} +} +else +{ +lean_object* x_588; +lean_dec(x_552); +lean_dec(x_549); +lean_dec(x_12); +if (lean_is_scalar(x_554)) { + x_588 = lean_alloc_ctor(1, 2, 0); +} else { + x_588 = x_554; + lean_ctor_set_tag(x_588, 1); +} +lean_ctor_set(x_588, 0, x_555); +lean_ctor_set(x_588, 1, x_556); +x_30 = x_588; +goto block_37; +} +} +} +else +{ +lean_object* x_619; lean_dec(x_540); -lean_dec(x_537); lean_dec(x_12); if (lean_is_scalar(x_542)) { - x_575 = lean_alloc_ctor(1, 2, 0); + x_619 = lean_alloc_ctor(1, 2, 0); } else { - x_575 = x_542; - lean_ctor_set_tag(x_575, 1); + x_619 = x_542; + lean_ctor_set_tag(x_619, 1); } -lean_ctor_set(x_575, 0, x_543); -lean_ctor_set(x_575, 1, x_544); -x_30 = x_575; +lean_ctor_set(x_619, 0, x_543); +lean_ctor_set(x_619, 1, x_544); +x_30 = x_619; goto block_37; } } else { -lean_object* x_576; +lean_object* x_620; lean_dec(x_540); -lean_dec(x_537); lean_dec(x_12); if (lean_is_scalar(x_542)) { - x_576 = lean_alloc_ctor(1, 2, 0); + x_620 = lean_alloc_ctor(1, 2, 0); } else { - x_576 = x_542; - lean_ctor_set_tag(x_576, 1); + x_620 = x_542; + lean_ctor_set_tag(x_620, 1); } -lean_ctor_set(x_576, 0, x_543); -lean_ctor_set(x_576, 1, x_544); -x_30 = x_576; +lean_ctor_set(x_620, 0, x_543); +lean_ctor_set(x_620, 1, x_544); +x_30 = x_620; goto block_37; } } } else { -lean_object* x_607; -lean_dec(x_528); +lean_object* x_635; +lean_dec(x_529); lean_dec(x_12); -if (lean_is_scalar(x_530)) { - x_607 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_534)) { + x_635 = lean_alloc_ctor(1, 2, 0); } else { - x_607 = x_530; - lean_ctor_set_tag(x_607, 1); + x_635 = x_534; } -lean_ctor_set(x_607, 0, x_531); -lean_ctor_set(x_607, 1, x_532); -x_30 = x_607; +lean_ctor_set(x_635, 0, x_532); +lean_ctor_set(x_635, 1, x_533); +x_30 = x_635; goto block_37; } } else { -lean_object* x_608; -lean_dec(x_528); +lean_object* x_636; +lean_dec(x_529); lean_dec(x_12); -if (lean_is_scalar(x_530)) { - x_608 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_534)) { + x_636 = lean_alloc_ctor(1, 2, 0); } else { - x_608 = x_530; - lean_ctor_set_tag(x_608, 1); + x_636 = x_534; } -lean_ctor_set(x_608, 0, x_531); -lean_ctor_set(x_608, 1, x_532); -x_30 = x_608; +lean_ctor_set(x_636, 0, x_532); +lean_ctor_set(x_636, 1, x_533); +x_30 = x_636; goto block_37; } } } else { -lean_object* x_623; -lean_dec(x_517); +lean_object* x_637; +lean_dec(x_511); lean_dec(x_12); -if (lean_is_scalar(x_522)) { - x_623 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_523)) { + x_637 = lean_alloc_ctor(1, 2, 0); } else { - x_623 = x_522; + x_637 = x_523; } -lean_ctor_set(x_623, 0, x_520); -lean_ctor_set(x_623, 1, x_521); -x_30 = x_623; +lean_ctor_set(x_637, 0, x_521); +lean_ctor_set(x_637, 1, x_522); +x_30 = x_637; goto block_37; } } else { -lean_object* x_624; -lean_dec(x_517); +lean_object* x_638; +lean_dec(x_511); lean_dec(x_12); -if (lean_is_scalar(x_522)) { - x_624 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_523)) { + x_638 = lean_alloc_ctor(1, 2, 0); } else { - x_624 = x_522; + x_638 = x_523; } -lean_ctor_set(x_624, 0, x_520); -lean_ctor_set(x_624, 1, x_521); -x_30 = x_624; +lean_ctor_set(x_638, 0, x_521); +lean_ctor_set(x_638, 1, x_522); +x_30 = x_638; goto block_37; } } } +} else { -lean_object* x_625; -lean_dec(x_501); +lean_dec(x_52); +lean_dec(x_14); lean_dec(x_12); -if (lean_is_scalar(x_511)) { - x_625 = lean_alloc_ctor(1, 2, 0); -} else { - x_625 = x_511; -} -lean_ctor_set(x_625, 0, x_509); -lean_ctor_set(x_625, 1, x_510); -x_30 = x_625; -goto block_37; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +return x_55; } } else { -lean_object* x_626; -lean_dec(x_501); +lean_dec(x_52); +lean_dec(x_14); lean_dec(x_12); -if (lean_is_scalar(x_511)) { - x_626 = lean_alloc_ctor(1, 2, 0); -} else { - x_626 = x_511; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +return x_55; } -lean_ctor_set(x_626, 0, x_509); -lean_ctor_set(x_626, 1, x_510); -x_30 = x_626; +} +else +{ +lean_object* x_639; lean_object* x_640; uint8_t x_641; +x_639 = lean_ctor_get(x_55, 0); +x_640 = lean_ctor_get(x_55, 1); +lean_inc(x_640); +lean_inc(x_639); +lean_dec(x_55); +x_641 = l_Lean_Exception_isInterrupt(x_639); +if (x_641 == 0) +{ +uint8_t x_642; +x_642 = l_Lean_Exception_isRuntime(x_639); +if (x_642 == 0) +{ +lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; lean_object* x_647; lean_object* x_648; lean_object* x_649; +lean_dec(x_639); +x_643 = l_Lean_Meta_SavedState_restore(x_52, x_5, x_6, x_7, x_8, x_640); +lean_dec(x_52); +x_644 = lean_ctor_get(x_643, 1); +lean_inc(x_644); +lean_dec(x_643); +x_645 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_644); +x_646 = lean_ctor_get(x_645, 0); +lean_inc(x_646); +x_647 = lean_ctor_get(x_645, 1); +lean_inc(x_647); +if (lean_is_exclusive(x_645)) { + lean_ctor_release(x_645, 0); + lean_ctor_release(x_645, 1); + x_648 = x_645; +} else { + lean_dec_ref(x_645); + x_648 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_649 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(x_12, x_5, x_6, x_7, x_8, x_647); +if (lean_obj_tag(x_649) == 0) +{ +lean_object* x_650; lean_object* x_651; lean_object* x_652; lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; +lean_dec(x_646); +lean_dec(x_12); +x_650 = lean_ctor_get(x_649, 0); +lean_inc(x_650); +x_651 = lean_ctor_get(x_649, 1); +lean_inc(x_651); +if (lean_is_exclusive(x_649)) { + lean_ctor_release(x_649, 0); + lean_ctor_release(x_649, 1); + x_652 = x_649; +} else { + lean_dec_ref(x_649); + x_652 = lean_box(0); +} +x_653 = lean_box(0); +if (lean_is_scalar(x_648)) { + x_654 = lean_alloc_ctor(1, 2, 0); +} else { + x_654 = x_648; + lean_ctor_set_tag(x_654, 1); +} +lean_ctor_set(x_654, 0, x_650); +lean_ctor_set(x_654, 1, x_653); +x_655 = lean_array_mk(x_654); +if (lean_is_scalar(x_652)) { + x_656 = lean_alloc_ctor(0, 2, 0); +} else { + x_656 = x_652; +} +lean_ctor_set(x_656, 0, x_655); +lean_ctor_set(x_656, 1, x_651); +x_30 = x_656; +goto block_37; +} +else +{ +lean_object* x_657; lean_object* x_658; lean_object* x_659; uint8_t x_660; +lean_dec(x_648); +x_657 = lean_ctor_get(x_649, 0); +lean_inc(x_657); +x_658 = lean_ctor_get(x_649, 1); +lean_inc(x_658); +if (lean_is_exclusive(x_649)) { + lean_ctor_release(x_649, 0); + lean_ctor_release(x_649, 1); + x_659 = x_649; +} else { + lean_dec_ref(x_649); + x_659 = lean_box(0); +} +x_660 = l_Lean_Exception_isInterrupt(x_657); +if (x_660 == 0) +{ +uint8_t x_661; +x_661 = l_Lean_Exception_isRuntime(x_657); +if (x_661 == 0) +{ +lean_object* x_662; lean_object* x_663; lean_object* x_664; lean_object* x_665; lean_object* x_666; lean_object* x_667; +lean_dec(x_659); +lean_dec(x_657); +x_662 = l_Lean_Meta_SavedState_restore(x_646, x_5, x_6, x_7, x_8, x_658); +lean_dec(x_646); +x_663 = lean_ctor_get(x_662, 1); +lean_inc(x_663); +lean_dec(x_662); +x_664 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_663); +x_665 = lean_ctor_get(x_664, 0); +lean_inc(x_665); +x_666 = lean_ctor_get(x_664, 1); +lean_inc(x_666); +lean_dec(x_664); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_667 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_666); +if (lean_obj_tag(x_667) == 0) +{ +lean_dec(x_665); +lean_dec(x_12); +x_30 = x_667; +goto block_37; +} +else +{ +lean_object* x_668; lean_object* x_669; lean_object* x_670; uint8_t x_671; +x_668 = lean_ctor_get(x_667, 0); +lean_inc(x_668); +x_669 = lean_ctor_get(x_667, 1); +lean_inc(x_669); +if (lean_is_exclusive(x_667)) { + lean_ctor_release(x_667, 0); + lean_ctor_release(x_667, 1); + x_670 = x_667; +} else { + lean_dec_ref(x_667); + x_670 = lean_box(0); +} +x_671 = l_Lean_Exception_isInterrupt(x_668); +if (x_671 == 0) +{ +uint8_t x_672; +x_672 = l_Lean_Exception_isRuntime(x_668); +if (x_672 == 0) +{ +lean_object* x_673; lean_object* x_674; lean_object* x_675; lean_object* x_676; lean_object* x_677; lean_object* x_678; lean_object* x_679; lean_object* x_680; uint8_t x_758; lean_object* x_759; +lean_dec(x_670); +lean_dec(x_668); +x_673 = l_Lean_Meta_SavedState_restore(x_665, x_5, x_6, x_7, x_8, x_669); +lean_dec(x_665); +x_674 = lean_ctor_get(x_673, 1); +lean_inc(x_674); +lean_dec(x_673); +x_675 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_674); +x_676 = lean_ctor_get(x_675, 0); +lean_inc(x_676); +x_677 = lean_ctor_get(x_675, 1); +lean_inc(x_677); +if (lean_is_exclusive(x_675)) { + lean_ctor_release(x_675, 0); + lean_ctor_release(x_675, 1); + x_678 = x_675; +} else { + lean_dec_ref(x_675); + x_678 = lean_box(0); +} +x_758 = 1; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_759 = l_Lean_Meta_simpIfTarget(x_12, x_758, x_5, x_6, x_7, x_8, x_677); +if (lean_obj_tag(x_759) == 0) +{ +lean_object* x_760; lean_object* x_761; uint8_t x_762; +x_760 = lean_ctor_get(x_759, 0); +lean_inc(x_760); +x_761 = lean_ctor_get(x_759, 1); +lean_inc(x_761); +lean_dec(x_759); +x_762 = lean_name_eq(x_760, x_12); +if (x_762 == 0) +{ +lean_object* x_763; lean_object* x_764; +lean_dec(x_678); +lean_dec(x_676); +lean_dec(x_12); +x_763 = lean_box(0); +x_764 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_760, x_763, x_5, x_6, x_7, x_8, x_761); +x_30 = x_764; +goto block_37; +} +else +{ +lean_object* x_765; lean_object* x_766; lean_object* x_767; lean_object* x_768; +lean_dec(x_760); +x_765 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_766 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_765, x_5, x_6, x_7, x_8, x_761); +x_767 = lean_ctor_get(x_766, 0); +lean_inc(x_767); +x_768 = lean_ctor_get(x_766, 1); +lean_inc(x_768); +lean_dec(x_766); +x_679 = x_767; +x_680 = x_768; +goto block_757; +} +} +else +{ +lean_object* x_769; lean_object* x_770; +x_769 = lean_ctor_get(x_759, 0); +lean_inc(x_769); +x_770 = lean_ctor_get(x_759, 1); +lean_inc(x_770); +lean_dec(x_759); +x_679 = x_769; +x_680 = x_770; +goto block_757; +} +block_757: +{ +uint8_t x_681; +x_681 = l_Lean_Exception_isInterrupt(x_679); +if (x_681 == 0) +{ +uint8_t x_682; +x_682 = l_Lean_Exception_isRuntime(x_679); +if (x_682 == 0) +{ +lean_object* x_683; lean_object* x_684; lean_object* x_685; lean_object* x_686; lean_object* x_687; lean_object* x_688; lean_object* x_689; lean_object* x_690; lean_object* x_691; lean_object* x_692; lean_object* x_726; +lean_dec(x_679); +lean_dec(x_678); +x_683 = l_Lean_Meta_SavedState_restore(x_676, x_5, x_6, x_7, x_8, x_680); +lean_dec(x_676); +x_684 = lean_ctor_get(x_683, 1); +lean_inc(x_684); +if (lean_is_exclusive(x_683)) { + lean_ctor_release(x_683, 0); + lean_ctor_release(x_683, 1); + x_685 = x_683; +} else { + lean_dec_ref(x_683); + x_685 = lean_box(0); +} +x_686 = lean_box(0); +x_687 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_684); +x_688 = lean_ctor_get(x_687, 0); +lean_inc(x_688); +x_689 = lean_ctor_get(x_687, 1); +lean_inc(x_689); +if (lean_is_exclusive(x_687)) { + lean_ctor_release(x_687, 0); + lean_ctor_release(x_687, 1); + x_690 = x_687; +} else { + lean_dec_ref(x_687); + x_690 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_726 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_686, x_5, x_6, x_7, x_8, x_689); +if (lean_obj_tag(x_726) == 0) +{ +lean_object* x_727; +x_727 = lean_ctor_get(x_726, 0); +lean_inc(x_727); +if (lean_obj_tag(x_727) == 0) +{ +lean_object* x_728; lean_object* x_729; lean_object* x_730; lean_object* x_731; lean_object* x_732; +x_728 = lean_ctor_get(x_726, 1); +lean_inc(x_728); +lean_dec(x_726); +x_729 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_730 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_729, x_5, x_6, x_7, x_8, x_728); +x_731 = lean_ctor_get(x_730, 0); +lean_inc(x_731); +x_732 = lean_ctor_get(x_730, 1); +lean_inc(x_732); +lean_dec(x_730); +x_691 = x_731; +x_692 = x_732; +goto block_725; +} +else +{ +lean_object* x_733; lean_object* x_734; lean_object* x_735; lean_object* x_736; lean_object* x_737; lean_object* x_738; lean_object* x_739; lean_object* x_740; +x_733 = lean_ctor_get(x_727, 0); +lean_inc(x_733); +lean_dec(x_727); +x_734 = lean_ctor_get(x_726, 1); +lean_inc(x_734); +lean_dec(x_726); +x_735 = lean_ctor_get(x_733, 0); +lean_inc(x_735); +x_736 = lean_ctor_get(x_733, 1); +lean_inc(x_736); +if (lean_is_exclusive(x_733)) { + lean_ctor_release(x_733, 0); + lean_ctor_release(x_733, 1); + x_737 = x_733; +} else { + lean_dec_ref(x_733); + x_737 = lean_box(0); +} +x_738 = lean_ctor_get(x_735, 0); +lean_inc(x_738); +x_739 = lean_ctor_get(x_735, 1); +lean_inc(x_739); +lean_dec(x_735); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_740 = l_Lean_Meta_trySubst(x_738, x_739, x_5, x_6, x_7, x_8, x_734); +if (lean_obj_tag(x_740) == 0) +{ +lean_object* x_741; lean_object* x_742; lean_object* x_743; lean_object* x_744; lean_object* x_745; lean_object* x_746; lean_object* x_747; lean_object* x_748; lean_object* x_749; lean_object* x_750; +lean_dec(x_690); +lean_dec(x_688); +lean_dec(x_685); +lean_dec(x_12); +x_741 = lean_ctor_get(x_740, 0); +lean_inc(x_741); +x_742 = lean_ctor_get(x_740, 1); +lean_inc(x_742); +if (lean_is_exclusive(x_740)) { + lean_ctor_release(x_740, 0); + lean_ctor_release(x_740, 1); + x_743 = x_740; +} else { + lean_dec_ref(x_740); + x_743 = lean_box(0); +} +x_744 = lean_ctor_get(x_736, 0); +lean_inc(x_744); +if (lean_is_exclusive(x_736)) { + lean_ctor_release(x_736, 0); + lean_ctor_release(x_736, 1); + x_745 = x_736; +} else { + lean_dec_ref(x_736); + x_745 = lean_box(0); +} +x_746 = lean_box(0); +if (lean_is_scalar(x_745)) { + x_747 = lean_alloc_ctor(1, 2, 0); +} else { + x_747 = x_745; + lean_ctor_set_tag(x_747, 1); +} +lean_ctor_set(x_747, 0, x_744); +lean_ctor_set(x_747, 1, x_746); +if (lean_is_scalar(x_737)) { + x_748 = lean_alloc_ctor(1, 2, 0); +} else { + x_748 = x_737; + lean_ctor_set_tag(x_748, 1); +} +lean_ctor_set(x_748, 0, x_741); +lean_ctor_set(x_748, 1, x_747); +x_749 = lean_array_mk(x_748); +if (lean_is_scalar(x_743)) { + x_750 = lean_alloc_ctor(0, 2, 0); +} else { + x_750 = x_743; +} +lean_ctor_set(x_750, 0, x_749); +lean_ctor_set(x_750, 1, x_742); +x_30 = x_750; +goto block_37; +} +else +{ +lean_object* x_751; lean_object* x_752; +lean_dec(x_737); +lean_dec(x_736); +x_751 = lean_ctor_get(x_740, 0); +lean_inc(x_751); +x_752 = lean_ctor_get(x_740, 1); +lean_inc(x_752); +lean_dec(x_740); +x_691 = x_751; +x_692 = x_752; +goto block_725; +} +} +} +else +{ +lean_object* x_753; lean_object* x_754; +x_753 = lean_ctor_get(x_726, 0); +lean_inc(x_753); +x_754 = lean_ctor_get(x_726, 1); +lean_inc(x_754); +lean_dec(x_726); +x_691 = x_753; +x_692 = x_754; +goto block_725; +} +block_725: +{ +uint8_t x_693; +x_693 = l_Lean_Exception_isInterrupt(x_691); +if (x_693 == 0) +{ +uint8_t x_694; +x_694 = l_Lean_Exception_isRuntime(x_691); +if (x_694 == 0) +{ +lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; lean_object* x_699; lean_object* x_700; lean_object* x_701; lean_object* x_702; +lean_dec(x_691); +lean_dec(x_690); +x_695 = l_Lean_Meta_SavedState_restore(x_688, x_5, x_6, x_7, x_8, x_692); +lean_dec(x_688); +x_696 = lean_ctor_get(x_695, 1); +lean_inc(x_696); +if (lean_is_exclusive(x_695)) { + lean_ctor_release(x_695, 0); + lean_ctor_release(x_695, 1); + x_697 = x_695; +} else { + lean_dec_ref(x_695); + x_697 = lean_box(0); +} +x_698 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_696); +x_699 = lean_ctor_get(x_698, 0); +lean_inc(x_699); +x_700 = lean_ctor_get(x_698, 1); +lean_inc(x_700); +if (lean_is_exclusive(x_698)) { + lean_ctor_release(x_698, 0); + lean_ctor_release(x_698, 1); + x_701 = x_698; +} else { + lean_dec_ref(x_698); + x_701 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_702 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_700); +if (lean_obj_tag(x_702) == 0) +{ +lean_dec(x_701); +lean_dec(x_699); +lean_dec(x_697); +lean_dec(x_685); +lean_dec(x_12); +x_30 = x_702; +goto block_37; +} +else +{ +lean_object* x_703; lean_object* x_704; lean_object* x_705; uint8_t x_706; +x_703 = lean_ctor_get(x_702, 0); +lean_inc(x_703); +x_704 = lean_ctor_get(x_702, 1); +lean_inc(x_704); +if (lean_is_exclusive(x_702)) { + lean_ctor_release(x_702, 0); + lean_ctor_release(x_702, 1); + x_705 = x_702; +} else { + lean_dec_ref(x_702); + x_705 = lean_box(0); +} +x_706 = l_Lean_Exception_isInterrupt(x_703); +if (x_706 == 0) +{ +uint8_t x_707; +x_707 = l_Lean_Exception_isRuntime(x_703); +if (x_707 == 0) +{ +lean_object* x_708; lean_object* x_709; lean_object* x_710; lean_object* x_711; lean_object* x_712; lean_object* x_713; lean_object* x_714; lean_object* x_715; lean_object* x_716; lean_object* x_717; lean_object* x_718; lean_object* x_719; lean_object* x_720; +lean_dec(x_705); +lean_dec(x_703); +x_708 = l_Lean_Meta_SavedState_restore(x_699, x_5, x_6, x_7, x_8, x_704); +lean_dec(x_699); +x_709 = lean_ctor_get(x_708, 1); +lean_inc(x_709); +if (lean_is_exclusive(x_708)) { + lean_ctor_release(x_708, 0); + lean_ctor_release(x_708, 1); + x_710 = x_708; +} else { + lean_dec_ref(x_708); + x_710 = lean_box(0); +} +lean_inc(x_2); +x_711 = l_Lean_MessageData_ofName(x_2); +x_712 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_710)) { + x_713 = lean_alloc_ctor(7, 2, 0); +} else { + x_713 = x_710; + lean_ctor_set_tag(x_713, 7); +} +lean_ctor_set(x_713, 0, x_712); +lean_ctor_set(x_713, 1, x_711); +x_714 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_701)) { + x_715 = lean_alloc_ctor(7, 2, 0); +} else { + x_715 = x_701; + lean_ctor_set_tag(x_715, 7); +} +lean_ctor_set(x_715, 0, x_713); +lean_ctor_set(x_715, 1, x_714); +x_716 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_716, 0, x_12); +if (lean_is_scalar(x_697)) { + x_717 = lean_alloc_ctor(7, 2, 0); +} else { + x_717 = x_697; + lean_ctor_set_tag(x_717, 7); +} +lean_ctor_set(x_717, 0, x_715); +lean_ctor_set(x_717, 1, x_716); +x_718 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_685)) { + x_719 = lean_alloc_ctor(7, 2, 0); +} else { + x_719 = x_685; + lean_ctor_set_tag(x_719, 7); +} +lean_ctor_set(x_719, 0, x_717); +lean_ctor_set(x_719, 1, x_718); +x_720 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_719, x_5, x_6, x_7, x_8, x_709); +x_30 = x_720; +goto block_37; +} +else +{ +lean_object* x_721; +lean_dec(x_701); +lean_dec(x_699); +lean_dec(x_697); +lean_dec(x_685); +lean_dec(x_12); +if (lean_is_scalar(x_705)) { + x_721 = lean_alloc_ctor(1, 2, 0); +} else { + x_721 = x_705; +} +lean_ctor_set(x_721, 0, x_703); +lean_ctor_set(x_721, 1, x_704); +x_30 = x_721; +goto block_37; +} +} +else +{ +lean_object* x_722; +lean_dec(x_701); +lean_dec(x_699); +lean_dec(x_697); +lean_dec(x_685); +lean_dec(x_12); +if (lean_is_scalar(x_705)) { + x_722 = lean_alloc_ctor(1, 2, 0); +} else { + x_722 = x_705; +} +lean_ctor_set(x_722, 0, x_703); +lean_ctor_set(x_722, 1, x_704); +x_30 = x_722; goto block_37; } } } else { -lean_object* x_627; +lean_object* x_723; +lean_dec(x_688); +lean_dec(x_685); +lean_dec(x_12); +if (lean_is_scalar(x_690)) { + x_723 = lean_alloc_ctor(1, 2, 0); +} else { + x_723 = x_690; + lean_ctor_set_tag(x_723, 1); +} +lean_ctor_set(x_723, 0, x_691); +lean_ctor_set(x_723, 1, x_692); +x_30 = x_723; +goto block_37; +} +} +else +{ +lean_object* x_724; +lean_dec(x_688); +lean_dec(x_685); +lean_dec(x_12); +if (lean_is_scalar(x_690)) { + x_724 = lean_alloc_ctor(1, 2, 0); +} else { + x_724 = x_690; + lean_ctor_set_tag(x_724, 1); +} +lean_ctor_set(x_724, 0, x_691); +lean_ctor_set(x_724, 1, x_692); +x_30 = x_724; +goto block_37; +} +} +} +else +{ +lean_object* x_755; +lean_dec(x_676); +lean_dec(x_12); +if (lean_is_scalar(x_678)) { + x_755 = lean_alloc_ctor(1, 2, 0); +} else { + x_755 = x_678; + lean_ctor_set_tag(x_755, 1); +} +lean_ctor_set(x_755, 0, x_679); +lean_ctor_set(x_755, 1, x_680); +x_30 = x_755; +goto block_37; +} +} +else +{ +lean_object* x_756; +lean_dec(x_676); +lean_dec(x_12); +if (lean_is_scalar(x_678)) { + x_756 = lean_alloc_ctor(1, 2, 0); +} else { + x_756 = x_678; + lean_ctor_set_tag(x_756, 1); +} +lean_ctor_set(x_756, 0, x_679); +lean_ctor_set(x_756, 1, x_680); +x_30 = x_756; +goto block_37; +} +} +} +else +{ +lean_object* x_771; +lean_dec(x_665); +lean_dec(x_12); +if (lean_is_scalar(x_670)) { + x_771 = lean_alloc_ctor(1, 2, 0); +} else { + x_771 = x_670; +} +lean_ctor_set(x_771, 0, x_668); +lean_ctor_set(x_771, 1, x_669); +x_30 = x_771; +goto block_37; +} +} +else +{ +lean_object* x_772; +lean_dec(x_665); +lean_dec(x_12); +if (lean_is_scalar(x_670)) { + x_772 = lean_alloc_ctor(1, 2, 0); +} else { + x_772 = x_670; +} +lean_ctor_set(x_772, 0, x_668); +lean_ctor_set(x_772, 1, x_669); +x_30 = x_772; +goto block_37; +} +} +} +else +{ +lean_object* x_773; +lean_dec(x_646); +lean_dec(x_12); +if (lean_is_scalar(x_659)) { + x_773 = lean_alloc_ctor(1, 2, 0); +} else { + x_773 = x_659; +} +lean_ctor_set(x_773, 0, x_657); +lean_ctor_set(x_773, 1, x_658); +x_30 = x_773; +goto block_37; +} +} +else +{ +lean_object* x_774; +lean_dec(x_646); +lean_dec(x_12); +if (lean_is_scalar(x_659)) { + x_774 = lean_alloc_ctor(1, 2, 0); +} else { + x_774 = x_659; +} +lean_ctor_set(x_774, 0, x_657); +lean_ctor_set(x_774, 1, x_658); +x_30 = x_774; +goto block_37; +} +} +} +else +{ +lean_object* x_775; +lean_dec(x_52); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_775 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_775, 0, x_639); +lean_ctor_set(x_775, 1, x_640); +return x_775; +} +} +else +{ +lean_object* x_776; +lean_dec(x_52); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_776 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_776, 0, x_639); +lean_ctor_set(x_776, 1, x_640); +return x_776; +} +} +} +} +else +{ lean_dec(x_39); lean_dec(x_14); lean_dec(x_12); @@ -20165,15 +21179,11 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); -x_627 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_627, 0, x_494); -lean_ctor_set(x_627, 1, x_495); -return x_627; +return x_41; } } else { -lean_object* x_628; lean_dec(x_39); lean_dec(x_14); lean_dec(x_12); @@ -20182,10 +21192,860 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); -x_628 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_628, 0, x_494); -lean_ctor_set(x_628, 1, x_495); -return x_628; +return x_41; +} +} +else +{ +lean_object* x_777; lean_object* x_778; uint8_t x_779; +x_777 = lean_ctor_get(x_41, 0); +x_778 = lean_ctor_get(x_41, 1); +lean_inc(x_778); +lean_inc(x_777); +lean_dec(x_41); +x_779 = l_Lean_Exception_isInterrupt(x_777); +if (x_779 == 0) +{ +uint8_t x_780; +x_780 = l_Lean_Exception_isRuntime(x_777); +if (x_780 == 0) +{ +lean_object* x_781; lean_object* x_782; lean_object* x_783; lean_object* x_784; lean_object* x_785; lean_object* x_786; lean_object* x_787; +lean_dec(x_777); +x_781 = l_Lean_Meta_SavedState_restore(x_39, x_5, x_6, x_7, x_8, x_778); +lean_dec(x_39); +x_782 = lean_ctor_get(x_781, 1); +lean_inc(x_782); +lean_dec(x_781); +x_783 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_782); +x_784 = lean_ctor_get(x_783, 0); +lean_inc(x_784); +x_785 = lean_ctor_get(x_783, 1); +lean_inc(x_785); +lean_dec(x_783); +x_786 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__2; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_787 = l_Lean_MVarId_contradiction(x_12, x_786, x_5, x_6, x_7, x_8, x_785); +if (lean_obj_tag(x_787) == 0) +{ +lean_object* x_788; lean_object* x_789; +lean_dec(x_784); +lean_dec(x_12); +x_788 = lean_ctor_get(x_787, 1); +lean_inc(x_788); +lean_dec(x_787); +x_789 = l_Lean_Meta_casesOnStuckLHS___closed__2; +x_15 = x_789; +x_16 = x_788; +goto block_29; +} +else +{ +lean_object* x_790; lean_object* x_791; lean_object* x_792; uint8_t x_793; +x_790 = lean_ctor_get(x_787, 0); +lean_inc(x_790); +x_791 = lean_ctor_get(x_787, 1); +lean_inc(x_791); +if (lean_is_exclusive(x_787)) { + lean_ctor_release(x_787, 0); + lean_ctor_release(x_787, 1); + x_792 = x_787; +} else { + lean_dec_ref(x_787); + x_792 = lean_box(0); +} +x_793 = l_Lean_Exception_isInterrupt(x_790); +if (x_793 == 0) +{ +uint8_t x_794; +x_794 = l_Lean_Exception_isRuntime(x_790); +if (x_794 == 0) +{ +lean_object* x_795; lean_object* x_796; lean_object* x_797; lean_object* x_798; lean_object* x_799; lean_object* x_800; lean_object* x_801; +lean_dec(x_792); +lean_dec(x_790); +x_795 = l_Lean_Meta_SavedState_restore(x_784, x_5, x_6, x_7, x_8, x_791); +lean_dec(x_784); +x_796 = lean_ctor_get(x_795, 1); +lean_inc(x_796); +lean_dec(x_795); +x_797 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_796); +x_798 = lean_ctor_get(x_797, 0); +lean_inc(x_798); +x_799 = lean_ctor_get(x_797, 1); +lean_inc(x_799); +if (lean_is_exclusive(x_797)) { + lean_ctor_release(x_797, 0); + lean_ctor_release(x_797, 1); + x_800 = x_797; +} else { + lean_dec_ref(x_797); + x_800 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_801 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset(x_12, x_5, x_6, x_7, x_8, x_799); +if (lean_obj_tag(x_801) == 0) +{ +lean_object* x_802; lean_object* x_803; lean_object* x_804; lean_object* x_805; lean_object* x_806; lean_object* x_807; lean_object* x_808; +lean_dec(x_798); +lean_dec(x_12); +x_802 = lean_ctor_get(x_801, 0); +lean_inc(x_802); +x_803 = lean_ctor_get(x_801, 1); +lean_inc(x_803); +if (lean_is_exclusive(x_801)) { + lean_ctor_release(x_801, 0); + lean_ctor_release(x_801, 1); + x_804 = x_801; +} else { + lean_dec_ref(x_801); + x_804 = lean_box(0); +} +x_805 = lean_box(0); +if (lean_is_scalar(x_800)) { + x_806 = lean_alloc_ctor(1, 2, 0); +} else { + x_806 = x_800; + lean_ctor_set_tag(x_806, 1); +} +lean_ctor_set(x_806, 0, x_802); +lean_ctor_set(x_806, 1, x_805); +x_807 = lean_array_mk(x_806); +if (lean_is_scalar(x_804)) { + x_808 = lean_alloc_ctor(0, 2, 0); +} else { + x_808 = x_804; +} +lean_ctor_set(x_808, 0, x_807); +lean_ctor_set(x_808, 1, x_803); +x_30 = x_808; +goto block_37; +} +else +{ +lean_object* x_809; lean_object* x_810; lean_object* x_811; uint8_t x_812; +lean_dec(x_800); +x_809 = lean_ctor_get(x_801, 0); +lean_inc(x_809); +x_810 = lean_ctor_get(x_801, 1); +lean_inc(x_810); +if (lean_is_exclusive(x_801)) { + lean_ctor_release(x_801, 0); + lean_ctor_release(x_801, 1); + x_811 = x_801; +} else { + lean_dec_ref(x_801); + x_811 = lean_box(0); +} +x_812 = l_Lean_Exception_isInterrupt(x_809); +if (x_812 == 0) +{ +uint8_t x_813; +x_813 = l_Lean_Exception_isRuntime(x_809); +if (x_813 == 0) +{ +lean_object* x_814; lean_object* x_815; lean_object* x_816; lean_object* x_817; lean_object* x_818; lean_object* x_819; +lean_dec(x_811); +lean_dec(x_809); +x_814 = l_Lean_Meta_SavedState_restore(x_798, x_5, x_6, x_7, x_8, x_810); +lean_dec(x_798); +x_815 = lean_ctor_get(x_814, 1); +lean_inc(x_815); +lean_dec(x_814); +x_816 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_815); +x_817 = lean_ctor_get(x_816, 0); +lean_inc(x_817); +x_818 = lean_ctor_get(x_816, 1); +lean_inc(x_818); +lean_dec(x_816); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_819 = l_Lean_Meta_casesOnStuckLHS(x_12, x_5, x_6, x_7, x_8, x_818); +if (lean_obj_tag(x_819) == 0) +{ +lean_dec(x_817); +lean_dec(x_12); +x_30 = x_819; +goto block_37; +} +else +{ +lean_object* x_820; lean_object* x_821; lean_object* x_822; uint8_t x_823; +x_820 = lean_ctor_get(x_819, 0); +lean_inc(x_820); +x_821 = lean_ctor_get(x_819, 1); +lean_inc(x_821); +if (lean_is_exclusive(x_819)) { + lean_ctor_release(x_819, 0); + lean_ctor_release(x_819, 1); + x_822 = x_819; +} else { + lean_dec_ref(x_819); + x_822 = lean_box(0); +} +x_823 = l_Lean_Exception_isInterrupt(x_820); +if (x_823 == 0) +{ +uint8_t x_824; +x_824 = l_Lean_Exception_isRuntime(x_820); +if (x_824 == 0) +{ +lean_object* x_825; lean_object* x_826; lean_object* x_827; lean_object* x_828; lean_object* x_829; lean_object* x_830; lean_object* x_831; lean_object* x_832; uint8_t x_910; lean_object* x_911; +lean_dec(x_822); +lean_dec(x_820); +x_825 = l_Lean_Meta_SavedState_restore(x_817, x_5, x_6, x_7, x_8, x_821); +lean_dec(x_817); +x_826 = lean_ctor_get(x_825, 1); +lean_inc(x_826); +lean_dec(x_825); +x_827 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_826); +x_828 = lean_ctor_get(x_827, 0); +lean_inc(x_828); +x_829 = lean_ctor_get(x_827, 1); +lean_inc(x_829); +if (lean_is_exclusive(x_827)) { + lean_ctor_release(x_827, 0); + lean_ctor_release(x_827, 1); + x_830 = x_827; +} else { + lean_dec_ref(x_827); + x_830 = lean_box(0); +} +x_910 = 1; +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_911 = l_Lean_Meta_simpIfTarget(x_12, x_910, x_5, x_6, x_7, x_8, x_829); +if (lean_obj_tag(x_911) == 0) +{ +lean_object* x_912; lean_object* x_913; uint8_t x_914; +x_912 = lean_ctor_get(x_911, 0); +lean_inc(x_912); +x_913 = lean_ctor_get(x_911, 1); +lean_inc(x_913); +lean_dec(x_911); +x_914 = lean_name_eq(x_912, x_12); +if (x_914 == 0) +{ +lean_object* x_915; lean_object* x_916; +lean_dec(x_830); +lean_dec(x_828); +lean_dec(x_12); +x_915 = lean_box(0); +x_916 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__1(x_912, x_915, x_5, x_6, x_7, x_8, x_913); +x_30 = x_916; +goto block_37; +} +else +{ +lean_object* x_917; lean_object* x_918; lean_object* x_919; lean_object* x_920; +lean_dec(x_912); +x_917 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__10; +x_918 = l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(x_917, x_5, x_6, x_7, x_8, x_913); +x_919 = lean_ctor_get(x_918, 0); +lean_inc(x_919); +x_920 = lean_ctor_get(x_918, 1); +lean_inc(x_920); +lean_dec(x_918); +x_831 = x_919; +x_832 = x_920; +goto block_909; +} +} +else +{ +lean_object* x_921; lean_object* x_922; +x_921 = lean_ctor_get(x_911, 0); +lean_inc(x_921); +x_922 = lean_ctor_get(x_911, 1); +lean_inc(x_922); +lean_dec(x_911); +x_831 = x_921; +x_832 = x_922; +goto block_909; +} +block_909: +{ +uint8_t x_833; +x_833 = l_Lean_Exception_isInterrupt(x_831); +if (x_833 == 0) +{ +uint8_t x_834; +x_834 = l_Lean_Exception_isRuntime(x_831); +if (x_834 == 0) +{ +lean_object* x_835; lean_object* x_836; lean_object* x_837; lean_object* x_838; lean_object* x_839; lean_object* x_840; lean_object* x_841; lean_object* x_842; lean_object* x_843; lean_object* x_844; lean_object* x_878; +lean_dec(x_831); +lean_dec(x_830); +x_835 = l_Lean_Meta_SavedState_restore(x_828, x_5, x_6, x_7, x_8, x_832); +lean_dec(x_828); +x_836 = lean_ctor_get(x_835, 1); +lean_inc(x_836); +if (lean_is_exclusive(x_835)) { + lean_ctor_release(x_835, 0); + lean_ctor_release(x_835, 1); + x_837 = x_835; +} else { + lean_dec_ref(x_835); + x_837 = lean_box(0); +} +x_838 = lean_box(0); +x_839 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_836); +x_840 = lean_ctor_get(x_839, 0); +lean_inc(x_840); +x_841 = lean_ctor_get(x_839, 1); +lean_inc(x_841); +if (lean_is_exclusive(x_839)) { + lean_ctor_release(x_839, 0); + lean_ctor_release(x_839, 1); + x_842 = x_839; +} else { + lean_dec_ref(x_839); + x_842 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_878 = l_Lean_Meta_splitIfTarget_x3f(x_12, x_838, x_5, x_6, x_7, x_8, x_841); +if (lean_obj_tag(x_878) == 0) +{ +lean_object* x_879; +x_879 = lean_ctor_get(x_878, 0); +lean_inc(x_879); +if (lean_obj_tag(x_879) == 0) +{ +lean_object* x_880; lean_object* x_881; lean_object* x_882; lean_object* x_883; lean_object* x_884; +x_880 = lean_ctor_get(x_878, 1); +lean_inc(x_880); +lean_dec(x_878); +x_881 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__8; +x_882 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_881, x_5, x_6, x_7, x_8, x_880); +x_883 = lean_ctor_get(x_882, 0); +lean_inc(x_883); +x_884 = lean_ctor_get(x_882, 1); +lean_inc(x_884); +lean_dec(x_882); +x_843 = x_883; +x_844 = x_884; +goto block_877; +} +else +{ +lean_object* x_885; lean_object* x_886; lean_object* x_887; lean_object* x_888; lean_object* x_889; lean_object* x_890; lean_object* x_891; lean_object* x_892; +x_885 = lean_ctor_get(x_879, 0); +lean_inc(x_885); +lean_dec(x_879); +x_886 = lean_ctor_get(x_878, 1); +lean_inc(x_886); +lean_dec(x_878); +x_887 = lean_ctor_get(x_885, 0); +lean_inc(x_887); +x_888 = lean_ctor_get(x_885, 1); +lean_inc(x_888); +if (lean_is_exclusive(x_885)) { + lean_ctor_release(x_885, 0); + lean_ctor_release(x_885, 1); + x_889 = x_885; +} else { + lean_dec_ref(x_885); + x_889 = lean_box(0); +} +x_890 = lean_ctor_get(x_887, 0); +lean_inc(x_890); +x_891 = lean_ctor_get(x_887, 1); +lean_inc(x_891); +lean_dec(x_887); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_892 = l_Lean_Meta_trySubst(x_890, x_891, x_5, x_6, x_7, x_8, x_886); +if (lean_obj_tag(x_892) == 0) +{ +lean_object* x_893; lean_object* x_894; lean_object* x_895; lean_object* x_896; lean_object* x_897; lean_object* x_898; lean_object* x_899; lean_object* x_900; lean_object* x_901; lean_object* x_902; +lean_dec(x_842); +lean_dec(x_840); +lean_dec(x_837); +lean_dec(x_12); +x_893 = lean_ctor_get(x_892, 0); +lean_inc(x_893); +x_894 = lean_ctor_get(x_892, 1); +lean_inc(x_894); +if (lean_is_exclusive(x_892)) { + lean_ctor_release(x_892, 0); + lean_ctor_release(x_892, 1); + x_895 = x_892; +} else { + lean_dec_ref(x_892); + x_895 = lean_box(0); +} +x_896 = lean_ctor_get(x_888, 0); +lean_inc(x_896); +if (lean_is_exclusive(x_888)) { + lean_ctor_release(x_888, 0); + lean_ctor_release(x_888, 1); + x_897 = x_888; +} else { + lean_dec_ref(x_888); + x_897 = lean_box(0); +} +x_898 = lean_box(0); +if (lean_is_scalar(x_897)) { + x_899 = lean_alloc_ctor(1, 2, 0); +} else { + x_899 = x_897; + lean_ctor_set_tag(x_899, 1); +} +lean_ctor_set(x_899, 0, x_896); +lean_ctor_set(x_899, 1, x_898); +if (lean_is_scalar(x_889)) { + x_900 = lean_alloc_ctor(1, 2, 0); +} else { + x_900 = x_889; + lean_ctor_set_tag(x_900, 1); +} +lean_ctor_set(x_900, 0, x_893); +lean_ctor_set(x_900, 1, x_899); +x_901 = lean_array_mk(x_900); +if (lean_is_scalar(x_895)) { + x_902 = lean_alloc_ctor(0, 2, 0); +} else { + x_902 = x_895; +} +lean_ctor_set(x_902, 0, x_901); +lean_ctor_set(x_902, 1, x_894); +x_30 = x_902; +goto block_37; +} +else +{ +lean_object* x_903; lean_object* x_904; +lean_dec(x_889); +lean_dec(x_888); +x_903 = lean_ctor_get(x_892, 0); +lean_inc(x_903); +x_904 = lean_ctor_get(x_892, 1); +lean_inc(x_904); +lean_dec(x_892); +x_843 = x_903; +x_844 = x_904; +goto block_877; +} +} +} +else +{ +lean_object* x_905; lean_object* x_906; +x_905 = lean_ctor_get(x_878, 0); +lean_inc(x_905); +x_906 = lean_ctor_get(x_878, 1); +lean_inc(x_906); +lean_dec(x_878); +x_843 = x_905; +x_844 = x_906; +goto block_877; +} +block_877: +{ +uint8_t x_845; +x_845 = l_Lean_Exception_isInterrupt(x_843); +if (x_845 == 0) +{ +uint8_t x_846; +x_846 = l_Lean_Exception_isRuntime(x_843); +if (x_846 == 0) +{ +lean_object* x_847; lean_object* x_848; lean_object* x_849; lean_object* x_850; lean_object* x_851; lean_object* x_852; lean_object* x_853; lean_object* x_854; +lean_dec(x_843); +lean_dec(x_842); +x_847 = l_Lean_Meta_SavedState_restore(x_840, x_5, x_6, x_7, x_8, x_844); +lean_dec(x_840); +x_848 = lean_ctor_get(x_847, 1); +lean_inc(x_848); +if (lean_is_exclusive(x_847)) { + lean_ctor_release(x_847, 0); + lean_ctor_release(x_847, 1); + x_849 = x_847; +} else { + lean_dec_ref(x_847); + x_849 = lean_box(0); +} +x_850 = l_Lean_Meta_saveState___rarg(x_6, x_7, x_8, x_848); +x_851 = lean_ctor_get(x_850, 0); +lean_inc(x_851); +x_852 = lean_ctor_get(x_850, 1); +lean_inc(x_852); +if (lean_is_exclusive(x_850)) { + lean_ctor_release(x_850, 0); + lean_ctor_release(x_850, 1); + x_853 = x_850; +} else { + lean_dec_ref(x_850); + x_853 = lean_box(0); +} +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_12); +x_854 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar(x_12, x_5, x_6, x_7, x_8, x_852); +if (lean_obj_tag(x_854) == 0) +{ +lean_dec(x_853); +lean_dec(x_851); +lean_dec(x_849); +lean_dec(x_837); +lean_dec(x_12); +x_30 = x_854; +goto block_37; +} +else +{ +lean_object* x_855; lean_object* x_856; lean_object* x_857; uint8_t x_858; +x_855 = lean_ctor_get(x_854, 0); +lean_inc(x_855); +x_856 = lean_ctor_get(x_854, 1); +lean_inc(x_856); +if (lean_is_exclusive(x_854)) { + lean_ctor_release(x_854, 0); + lean_ctor_release(x_854, 1); + x_857 = x_854; +} else { + lean_dec_ref(x_854); + x_857 = lean_box(0); +} +x_858 = l_Lean_Exception_isInterrupt(x_855); +if (x_858 == 0) +{ +uint8_t x_859; +x_859 = l_Lean_Exception_isRuntime(x_855); +if (x_859 == 0) +{ +lean_object* x_860; lean_object* x_861; lean_object* x_862; lean_object* x_863; lean_object* x_864; lean_object* x_865; lean_object* x_866; lean_object* x_867; lean_object* x_868; lean_object* x_869; lean_object* x_870; lean_object* x_871; lean_object* x_872; +lean_dec(x_857); +lean_dec(x_855); +x_860 = l_Lean_Meta_SavedState_restore(x_851, x_5, x_6, x_7, x_8, x_856); +lean_dec(x_851); +x_861 = lean_ctor_get(x_860, 1); +lean_inc(x_861); +if (lean_is_exclusive(x_860)) { + lean_ctor_release(x_860, 0); + lean_ctor_release(x_860, 1); + x_862 = x_860; +} else { + lean_dec_ref(x_860); + x_862 = lean_box(0); +} +lean_inc(x_2); +x_863 = l_Lean_MessageData_ofName(x_2); +x_864 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__4; +if (lean_is_scalar(x_862)) { + x_865 = lean_alloc_ctor(7, 2, 0); +} else { + x_865 = x_862; + lean_ctor_set_tag(x_865, 7); +} +lean_ctor_set(x_865, 0, x_864); +lean_ctor_set(x_865, 1, x_863); +x_866 = l_Lean_Meta_Match_proveCondEqThm_go___lambda__2___closed__6; +if (lean_is_scalar(x_853)) { + x_867 = lean_alloc_ctor(7, 2, 0); +} else { + x_867 = x_853; + lean_ctor_set_tag(x_867, 7); +} +lean_ctor_set(x_867, 0, x_865); +lean_ctor_set(x_867, 1, x_866); +x_868 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_868, 0, x_12); +if (lean_is_scalar(x_849)) { + x_869 = lean_alloc_ctor(7, 2, 0); +} else { + x_869 = x_849; + lean_ctor_set_tag(x_869, 7); +} +lean_ctor_set(x_869, 0, x_867); +lean_ctor_set(x_869, 1, x_868); +x_870 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___closed__17; +if (lean_is_scalar(x_837)) { + x_871 = lean_alloc_ctor(7, 2, 0); +} else { + x_871 = x_837; + lean_ctor_set_tag(x_871, 7); +} +lean_ctor_set(x_871, 0, x_869); +lean_ctor_set(x_871, 1, x_870); +x_872 = l_Lean_throwError___at_Lean_Meta_casesOnStuckLHS___spec__1(x_871, x_5, x_6, x_7, x_8, x_861); +x_30 = x_872; +goto block_37; +} +else +{ +lean_object* x_873; +lean_dec(x_853); +lean_dec(x_851); +lean_dec(x_849); +lean_dec(x_837); +lean_dec(x_12); +if (lean_is_scalar(x_857)) { + x_873 = lean_alloc_ctor(1, 2, 0); +} else { + x_873 = x_857; +} +lean_ctor_set(x_873, 0, x_855); +lean_ctor_set(x_873, 1, x_856); +x_30 = x_873; +goto block_37; +} +} +else +{ +lean_object* x_874; +lean_dec(x_853); +lean_dec(x_851); +lean_dec(x_849); +lean_dec(x_837); +lean_dec(x_12); +if (lean_is_scalar(x_857)) { + x_874 = lean_alloc_ctor(1, 2, 0); +} else { + x_874 = x_857; +} +lean_ctor_set(x_874, 0, x_855); +lean_ctor_set(x_874, 1, x_856); +x_30 = x_874; +goto block_37; +} +} +} +else +{ +lean_object* x_875; +lean_dec(x_840); +lean_dec(x_837); +lean_dec(x_12); +if (lean_is_scalar(x_842)) { + x_875 = lean_alloc_ctor(1, 2, 0); +} else { + x_875 = x_842; + lean_ctor_set_tag(x_875, 1); +} +lean_ctor_set(x_875, 0, x_843); +lean_ctor_set(x_875, 1, x_844); +x_30 = x_875; +goto block_37; +} +} +else +{ +lean_object* x_876; +lean_dec(x_840); +lean_dec(x_837); +lean_dec(x_12); +if (lean_is_scalar(x_842)) { + x_876 = lean_alloc_ctor(1, 2, 0); +} else { + x_876 = x_842; + lean_ctor_set_tag(x_876, 1); +} +lean_ctor_set(x_876, 0, x_843); +lean_ctor_set(x_876, 1, x_844); +x_30 = x_876; +goto block_37; +} +} +} +else +{ +lean_object* x_907; +lean_dec(x_828); +lean_dec(x_12); +if (lean_is_scalar(x_830)) { + x_907 = lean_alloc_ctor(1, 2, 0); +} else { + x_907 = x_830; + lean_ctor_set_tag(x_907, 1); +} +lean_ctor_set(x_907, 0, x_831); +lean_ctor_set(x_907, 1, x_832); +x_30 = x_907; +goto block_37; +} +} +else +{ +lean_object* x_908; +lean_dec(x_828); +lean_dec(x_12); +if (lean_is_scalar(x_830)) { + x_908 = lean_alloc_ctor(1, 2, 0); +} else { + x_908 = x_830; + lean_ctor_set_tag(x_908, 1); +} +lean_ctor_set(x_908, 0, x_831); +lean_ctor_set(x_908, 1, x_832); +x_30 = x_908; +goto block_37; +} +} +} +else +{ +lean_object* x_923; +lean_dec(x_817); +lean_dec(x_12); +if (lean_is_scalar(x_822)) { + x_923 = lean_alloc_ctor(1, 2, 0); +} else { + x_923 = x_822; +} +lean_ctor_set(x_923, 0, x_820); +lean_ctor_set(x_923, 1, x_821); +x_30 = x_923; +goto block_37; +} +} +else +{ +lean_object* x_924; +lean_dec(x_817); +lean_dec(x_12); +if (lean_is_scalar(x_822)) { + x_924 = lean_alloc_ctor(1, 2, 0); +} else { + x_924 = x_822; +} +lean_ctor_set(x_924, 0, x_820); +lean_ctor_set(x_924, 1, x_821); +x_30 = x_924; +goto block_37; +} +} +} +else +{ +lean_object* x_925; +lean_dec(x_798); +lean_dec(x_12); +if (lean_is_scalar(x_811)) { + x_925 = lean_alloc_ctor(1, 2, 0); +} else { + x_925 = x_811; +} +lean_ctor_set(x_925, 0, x_809); +lean_ctor_set(x_925, 1, x_810); +x_30 = x_925; +goto block_37; +} +} +else +{ +lean_object* x_926; +lean_dec(x_798); +lean_dec(x_12); +if (lean_is_scalar(x_811)) { + x_926 = lean_alloc_ctor(1, 2, 0); +} else { + x_926 = x_811; +} +lean_ctor_set(x_926, 0, x_809); +lean_ctor_set(x_926, 1, x_810); +x_30 = x_926; +goto block_37; +} +} +} +else +{ +lean_object* x_927; +lean_dec(x_784); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +if (lean_is_scalar(x_792)) { + x_927 = lean_alloc_ctor(1, 2, 0); +} else { + x_927 = x_792; +} +lean_ctor_set(x_927, 0, x_790); +lean_ctor_set(x_927, 1, x_791); +return x_927; +} +} +else +{ +lean_object* x_928; +lean_dec(x_784); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +if (lean_is_scalar(x_792)) { + x_928 = lean_alloc_ctor(1, 2, 0); +} else { + x_928 = x_792; +} +lean_ctor_set(x_928, 0, x_790); +lean_ctor_set(x_928, 1, x_791); +return x_928; +} +} +} +else +{ +lean_object* x_929; +lean_dec(x_39); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_929 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_929, 0, x_777); +lean_ctor_set(x_929, 1, x_778); +return x_929; +} +} +else +{ +lean_object* x_930; +lean_dec(x_39); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +x_930 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_930, 0, x_777); +lean_ctor_set(x_930, 1, x_778); +return x_930; } } } @@ -20299,29 +22159,29 @@ return x_36; } else { -uint8_t x_629; +uint8_t x_931; lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); -x_629 = !lean_is_exclusive(x_11); -if (x_629 == 0) +x_931 = !lean_is_exclusive(x_11); +if (x_931 == 0) { return x_11; } else { -lean_object* x_630; lean_object* x_631; lean_object* x_632; -x_630 = lean_ctor_get(x_11, 0); -x_631 = lean_ctor_get(x_11, 1); -lean_inc(x_631); -lean_inc(x_630); +lean_object* x_932; lean_object* x_933; lean_object* x_934; +x_932 = lean_ctor_get(x_11, 0); +x_933 = lean_ctor_get(x_11, 1); +lean_inc(x_933); +lean_inc(x_932); lean_dec(x_11); -x_632 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_632, 0, x_630); -lean_ctor_set(x_632, 1, x_631); -return x_632; +x_934 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_934, 0, x_932); +lean_ctor_set(x_934, 1, x_933); +return x_934; } } } @@ -29967,7 +31827,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__1; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__3; -x_3 = lean_unsigned_to_nat(534u); +x_3 = lean_unsigned_to_nat(541u); x_4 = lean_unsigned_to_nat(12u); x_5 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec_go___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -31633,7 +33493,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__1; x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__6___closed__1; -x_3 = lean_unsigned_to_nat(572u); +x_3 = lean_unsigned_to_nat(579u); x_4 = lean_unsigned_to_nat(70u); x_5 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -33467,7 +35327,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__1; x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__6___closed__1; -x_3 = lean_unsigned_to_nat(561u); +x_3 = lean_unsigned_to_nat(568u); x_4 = lean_unsigned_to_nat(75u); x_5 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -33878,7 +35738,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__1; x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__6___closed__1; -x_3 = lean_unsigned_to_nat(522u); +x_3 = lean_unsigned_to_nat(529u); x_4 = lean_unsigned_to_nat(6u); x_5 = l_Lean_Expr_withAppAux___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__8___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -37217,7 +39077,7 @@ static lean_object* _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Matc _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("( __do_lift._@.Lean.Meta.Match.MatchEqs._hyg.7728.0 )\n ", 58, 58); +x_1 = lean_mk_string_unchecked("( __do_lift._@.Lean.Meta.Match.MatchEqs._hyg.7882.0 )\n ", 58, 58); return x_1; } } @@ -37237,7 +39097,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Match_forallAltTelescope_go___rarg___lambda__6___closed__1; x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___spec__6___closed__1; -x_3 = lean_unsigned_to_nat(504u); +x_3 = lean_unsigned_to_nat(511u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_mkSplitterProof_convertCastEqRec___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -50383,7 +52243,7 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1() { _start: { lean_object* x_1; @@ -50391,37 +52251,37 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5() { _start: { lean_object* x_1; @@ -50429,17 +52289,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4; -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7() { _start: { lean_object* x_1; @@ -50447,47 +52307,47 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6; -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8; -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12() { _start: { lean_object* x_1; @@ -50495,17 +52355,17 @@ x_1 = lean_mk_string_unchecked("MatchEqs", 8, 8); return x_1; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11; -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14() { _start: { lean_object* x_1; @@ -50513,33 +52373,33 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13; -x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14; +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13; +x_2 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16() { +static lean_object* _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15; -x_2 = lean_unsigned_to_nat(13934u); +x_1 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15; +x_2 = lean_unsigned_to_nat(14088u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_simpH_x3f___lambda__3___closed__4; x_3 = 0; -x_4 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16; +x_4 = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -50710,6 +52570,20 @@ l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2 lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2___closed__1); l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2___closed__2 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2___closed__2(); lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_substSomeVar___lambda__2___closed__2); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__1); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__2); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__1___closed__3); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___lambda__2___closed__1); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__1); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__2); +l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3 = _init_l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Match_MatchEqs_0__Lean_Meta_Match_unfoldElimOffset___closed__3); l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__1 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__1(); lean_mark_persistent(l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__1); l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__2 = _init_l_Lean_throwMaxRecDepthAt___at_Lean_Meta_Match_proveCondEqThm_go___spec__2___closed__2(); @@ -51021,39 +52895,39 @@ l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Match_getEquationsForImpl___spec l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Match_getEquationsForImpl___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Match_getEquationsForImpl___spec__2___closed__2(); l_Lean_Meta_Match_getEquationsForImpl___closed__1 = _init_l_Lean_Meta_Match_getEquationsForImpl___closed__1(); lean_mark_persistent(l_Lean_Meta_Match_getEquationsForImpl___closed__1); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__1); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__2); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__3); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__4); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__5); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__6); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__7); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__8); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__9); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__10); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__11); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__12); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__13); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__14); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__15); -l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16(); -lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934____closed__16); -if (builtin) {res = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_13934_(lean_io_mk_world()); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__1); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__2); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__3); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__4); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__5); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__6); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__7); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__8); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__9); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__10); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__11); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__12); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__13); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__14); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__15); +l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16 = _init_l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16(); +lean_mark_persistent(l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088____closed__16); +if (builtin) {res = l_Lean_Meta_Match_initFn____x40_Lean_Meta_Match_MatchEqs___hyg_14088_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/PProdN.c b/stage0/stdlib/Lean/Meta/PProdN.c index 7d3f7f7fd0..2ff12df8ad 100644 --- a/stage0/stdlib/Lean/Meta/PProdN.c +++ b/stage0/stdlib/Lean/Meta/PProdN.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.PProdN -// Imports: Lean.Meta.InferType +// Imports: Lean.Meta.InferType Lean.Meta.Transform #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -15,121 +15,162 @@ extern "C" { #endif lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_mkPProd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_mkPProdFst___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_pack___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Meta_mkPProdSnd___lambda__3___closed__2; static lean_object* l_Lean_Meta_mkPProd___closed__2; -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_mkPProdSnd___closed__2; +static lean_object* l_Lean_Meta_mkPProdFst___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_stripProjs___boxed(lean_object*); static lean_object* l_Lean_Meta_PProdN_pack___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd(lean_object*, lean_object*); lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_projExpr_x21(lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5; +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projs___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkPProdFst___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdMk(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_mkPProdFst___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_pack(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_mkPProdSnd___lambda__3___closed__1; +static lean_object* l_Lean_Meta_PProdN_genMk___rarg___closed__3; +lean_object* l_panicWithPosWithDecl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +static lean_object* l_Lean_Meta_PProdN_genMk___rarg___closed__2; lean_object* l_Lean_mkApp4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_string_dec_eq(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1; static lean_object* l_Lean_Meta_mkPProdMk___closed__5; +lean_object* l_Lean_Expr_appArg_x21(lean_object*); +extern lean_object* l_instInhabitedPUnit; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_mkLambdas___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkPProdSnd___closed__1; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isSort(lean_object*); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_mkPProdFst___closed__5; +static lean_object* l_Lean_Meta_PProdN_reduceProjs___closed__2; +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mkLambdas___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_projIdx_x21(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_genMk___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3; lean_object* l_Lean_Meta_getLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +static lean_object* l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1; +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_genMk___spec__3(lean_object*); lean_object* lean_array_pop(lean_object*); static lean_object* l_Lean_Meta_mkPProdMk___closed__3; +static lean_object* l_Lean_Meta_PProdN_proj___closed__3; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2(lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projs(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mkLambdas(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedExpr; +LEAN_EXPORT lean_object* l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_panic___at_Lean_Expr_appFn_x21___spec__1(lean_object*); static lean_object* l_Lean_Meta_mkPProd___closed__3; -static lean_object* l_Lean_Meta_mkPProdFst___lambda__3___closed__4; +static lean_object* l_Lean_Meta_PProdN_proj___closed__1; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_mk___lambda__1___closed__1; +static lean_object* l_Lean_Meta_PProdN_reduceProjs___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mk___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFstM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mkLambdas___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_packLambdas(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkPProd___closed__1; -static lean_object* l_Lean_Meta_mkPProdFst___lambda__3___closed__2; +lean_object* l_Lean_Expr_appFn_x21(lean_object*); +static lean_object* l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_PProdN_pack___closed__4; -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_genMk___rarg___closed__4; static lean_object* l_Lean_Meta_mkPProdMk___closed__4; +lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_pack___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkPProdMk___closed__2; static lean_object* l_Lean_Meta_mkPProd___closed__5; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +uint8_t l_Lean_Expr_isProj(lean_object*); static lean_object* l_Lean_Meta_PProdN_mk___closed__2; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_genMk___rarg___closed__5; +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mkLambdas___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Id_instMonad; lean_object* lean_panic_fn(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mk___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mk(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_proj___closed__4; lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_genMk(lean_object*); static lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1; static lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2; size_t lean_usize_sub(size_t, size_t); -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_stripProjs(lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_mkLambdas___spec__1(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Meta_mkPProd___closed__4; +static lean_object* l_Lean_Meta_PProdN_pack___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); +lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_mkPProdMk___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_PProdN_pack___closed__1; lean_object* lean_string_append(lean_object*, lean_object*); lean_object* l_Lean_Expr_sortLevel_x21(lean_object*); lean_object* lean_array_get_size(lean_object*); +static lean_object* l_Lean_Meta_PProdN_proj___closed__2; lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_PProdN_genMk___rarg___closed__1; static lean_object* l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4; uint8_t lean_usize_dec_lt(size_t, size_t); +lean_object* lean_expr_dbg_to_string(lean_object*); lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); -static lean_object* l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSndM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_PProdN_pack___closed__3; -static lean_object* l_Lean_Meta_mkPProdSnd___lambda__3___closed__3; +static lean_object* l_Lean_Meta_mkPProdFst___closed__3; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Meta_PProdN_mk___closed__3; static lean_object* l_Lean_Meta_PProdN_mk___closed__4; static lean_object* l_Lean_Meta_PProdN_mk___closed__1; -LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_mkPProdFst___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_PProdN_pack___closed__5; -static lean_object* l_Lean_Meta_mkPProdFst___lambda__3___closed__3; +uint8_t l_Array_isEmpty___rarg(lean_object*); static lean_object* _init_l_Lean_Meta_mkPProd___closed__1() { _start: { @@ -819,52 +860,31 @@ return x_74; } } } -static lean_object* _init_l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1() { +static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instInhabitedMetaM___boxed), 5, 1); -lean_closure_set(x_1, 0, lean_box(0)); +x_1 = lean_mk_string_unchecked("mkPProdFst: cannot handle ", 26, 26); return x_1; } } -LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_mkPProdFst___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__2() { _start: { -lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1; -x_8 = lean_panic_fn(x_7, x_1); -x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); -return x_9; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\nof type ", 9, 9); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__3() { _start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = l_Lean_Meta_mkPProd___closed__4; -x_9 = lean_unsigned_to_nat(0u); -x_10 = l_Lean_Expr_proj___override(x_8, x_9, x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = l_Lean_Meta_mkPProd___closed__2; -x_9 = lean_unsigned_to_nat(0u); -x_10 = l_Lean_Expr_proj___override(x_8, x_9, x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__4() { _start: { lean_object* x_1; @@ -872,7 +892,7 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.PProdN", 16, 16); return x_1; } } -static lean_object* _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__5() { _start: { lean_object* x_1; @@ -880,45 +900,102 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.mkPProdFst", 20, 20); return x_1; } } -static lean_object* _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__3() { +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("mkPProdFst: cannot handle{indentExpr e}\nof type{indentExpr t}", 61, 61); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__4() { -_start: +lean_object* x_3; lean_object* x_20; uint8_t x_21; +lean_inc(x_1); +x_20 = l_Lean_Expr_cleanupAnnotations(x_1); +x_21 = l_Lean_Expr_isApp(x_20); +if (x_21 == 0) { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Meta_mkPProdFst___lambda__3___closed__1; -x_2 = l_Lean_Meta_mkPProdFst___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(55u); -x_4 = lean_unsigned_to_nat(9u); -x_5 = l_Lean_Meta_mkPProdFst___lambda__3___closed__3; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_22; +lean_dec(x_20); +x_22 = lean_box(0); +x_3 = x_22; +goto block_19; } -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: +else { -lean_object* x_7; lean_object* x_8; -x_7 = l_Lean_Meta_mkPProdFst___lambda__3___closed__4; -x_8 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_7, x_2, x_3, x_4, x_5, x_6); -return x_8; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdFst___closed__1() { -_start: +lean_object* x_23; uint8_t x_24; +x_23 = l_Lean_Expr_appFnCleanup(x_20, lean_box(0)); +x_24 = l_Lean_Expr_isApp(x_23); +if (x_24 == 0) { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProdFst___lambda__3___boxed), 6, 0); -return x_1; +lean_object* x_25; +lean_dec(x_23); +x_25 = lean_box(0); +x_3 = x_25; +goto block_19; +} +else +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = l_Lean_Expr_appFnCleanup(x_23, lean_box(0)); +x_27 = l_Lean_Meta_mkPProd___closed__4; +x_28 = l_Lean_Expr_isConstOf(x_26, x_27); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; +x_29 = l_Lean_Meta_mkPProd___closed__2; +x_30 = l_Lean_Expr_isConstOf(x_26, x_29); +lean_dec(x_26); +if (x_30 == 0) +{ +lean_object* x_31; +x_31 = lean_box(0); +x_3 = x_31; +goto block_19; +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_1); +x_32 = lean_unsigned_to_nat(0u); +x_33 = l_Lean_Expr_proj___override(x_29, x_32, x_2); +return x_33; } } -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_26); +lean_dec(x_1); +x_34 = lean_unsigned_to_nat(0u); +x_35 = l_Lean_Expr_proj___override(x_27, x_34, x_2); +return x_35; +} +} +} +block_19: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_3); +x_4 = lean_expr_dbg_to_string(x_2); +lean_dec(x_2); +x_5 = l_Lean_Meta_mkPProdFst___closed__1; +x_6 = lean_string_append(x_5, x_4); +lean_dec(x_4); +x_7 = l_Lean_Meta_mkPProdFst___closed__2; +x_8 = lean_string_append(x_6, x_7); +x_9 = lean_expr_dbg_to_string(x_1); +lean_dec(x_1); +x_10 = lean_string_append(x_8, x_9); +lean_dec(x_9); +x_11 = l_Lean_Meta_mkPProdFst___closed__3; +x_12 = lean_string_append(x_10, x_11); +x_13 = l_Lean_Meta_mkPProdFst___closed__4; +x_14 = l_Lean_Meta_mkPProdFst___closed__5; +x_15 = lean_unsigned_to_nat(55u); +x_16 = lean_unsigned_to_nat(9u); +x_17 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_13, x_14, x_15, x_16, x_12); +lean_dec(x_12); +x_18 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_17); +return x_18; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFstM(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; @@ -936,513 +1013,51 @@ lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); x_10 = lean_whnf(x_8, x_2, x_3, x_4, x_5, x_9); if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_11, x_2, x_3, x_4, x_5, x_12); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -x_16 = l_Lean_Meta_mkPProdFst___closed__1; -x_17 = l_Lean_Expr_cleanupAnnotations(x_14); -x_18 = l_Lean_Expr_isApp(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_17); -lean_dec(x_1); -x_19 = lean_box(0); -x_20 = lean_apply_6(x_16, x_19, x_2, x_3, x_4, x_5, x_15); -return x_20; -} -else -{ -lean_object* x_21; uint8_t x_22; -x_21 = l_Lean_Expr_appFnCleanup(x_17, lean_box(0)); -x_22 = l_Lean_Expr_isApp(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_21); -lean_dec(x_1); -x_23 = lean_box(0); -x_24 = lean_apply_6(x_16, x_23, x_2, x_3, x_4, x_5, x_15); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = l_Lean_Expr_appFnCleanup(x_21, lean_box(0)); -x_26 = l_Lean_Meta_mkPProd___closed__4; -x_27 = l_Lean_Expr_isConstOf(x_25, x_26); -if (x_27 == 0) -{ -lean_object* x_28; uint8_t x_29; -x_28 = l_Lean_Meta_mkPProd___closed__2; -x_29 = l_Lean_Expr_isConstOf(x_25, x_28); -lean_dec(x_25); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_1); -x_30 = lean_box(0); -x_31 = lean_apply_6(x_16, x_30, x_2, x_3, x_4, x_5, x_15); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_box(0); -x_33 = l_Lean_Meta_mkPProdFst___lambda__2(x_1, x_32, x_2, x_3, x_4, x_5, x_15); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_25); -x_34 = lean_box(0); -x_35 = l_Lean_Meta_mkPProdFst___lambda__1(x_1, x_34, x_2, x_3, x_4, x_5, x_15); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_35; -} -} -} -} -else -{ -uint8_t x_36; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_36 = !lean_is_exclusive(x_10); -if (x_36 == 0) +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) { +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_10, 0); +x_13 = l_Lean_Meta_mkPProdFst(x_12, x_1); +lean_ctor_set(x_10, 0, x_13); return x_10; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_10, 0); -x_38 = lean_ctor_get(x_10, 1); -lean_inc(x_38); -lean_inc(x_37); -lean_dec(x_10); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -return x_39; -} -} -} -else -{ -uint8_t x_40; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_40 = !lean_is_exclusive(x_7); -if (x_40 == 0) -{ -return x_7; -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_7, 0); -x_42 = lean_ctor_get(x_7, 1); -lean_inc(x_42); -lean_inc(x_41); -lean_dec(x_7); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -return x_43; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_mkPProdFst___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_mkPProdFst___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdFst___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_Meta_mkPProdFst___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_1); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = l_Lean_Meta_mkPProd___closed__4; -x_9 = lean_unsigned_to_nat(1u); -x_10 = l_Lean_Expr_proj___override(x_8, x_9, x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_8 = l_Lean_Meta_mkPProd___closed__2; -x_9 = lean_unsigned_to_nat(1u); -x_10 = l_Lean_Expr_proj___override(x_8, x_9, x_1); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean.Meta.mkPProdSnd", 20, 20); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("mkPProdSnd: cannot handle{indentExpr e}\nof type{indentExpr t}", 61, 61); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Meta_mkPProdFst___lambda__3___closed__1; -x_2 = l_Lean_Meta_mkPProdSnd___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(63u); -x_4 = lean_unsigned_to_nat(9u); -x_5 = l_Lean_Meta_mkPProdSnd___lambda__3___closed__2; -x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; -x_7 = l_Lean_Meta_mkPProdSnd___lambda__3___closed__3; -x_8 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_7, x_2, x_3, x_4, x_5, x_6); -return x_8; -} -} -static lean_object* _init_l_Lean_Meta_mkPProdSnd___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProdSnd___lambda__3___boxed), 6, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_7 = lean_infer_type(x_1, x_2, x_3, x_4, x_5, x_6); -if (lean_obj_tag(x_7) == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_7, 0); -lean_inc(x_8); -x_9 = lean_ctor_get(x_7, 1); -lean_inc(x_9); -lean_dec(x_7); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_10 = lean_whnf(x_8, x_2, x_3, x_4, x_5, x_9); -if (lean_obj_tag(x_10) == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_11, x_2, x_3, x_4, x_5, x_12); -x_14 = lean_ctor_get(x_13, 0); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_10, 0); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -x_16 = l_Lean_Meta_mkPProdSnd___closed__1; -x_17 = l_Lean_Expr_cleanupAnnotations(x_14); -x_18 = l_Lean_Expr_isApp(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -lean_dec(x_17); -lean_dec(x_1); -x_19 = lean_box(0); -x_20 = lean_apply_6(x_16, x_19, x_2, x_3, x_4, x_5, x_15); -return x_20; -} -else -{ -lean_object* x_21; uint8_t x_22; -x_21 = l_Lean_Expr_appFnCleanup(x_17, lean_box(0)); -x_22 = l_Lean_Expr_isApp(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; -lean_dec(x_21); -lean_dec(x_1); -x_23 = lean_box(0); -x_24 = lean_apply_6(x_16, x_23, x_2, x_3, x_4, x_5, x_15); -return x_24; -} -else -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = l_Lean_Expr_appFnCleanup(x_21, lean_box(0)); -x_26 = l_Lean_Meta_mkPProd___closed__4; -x_27 = l_Lean_Expr_isConstOf(x_25, x_26); -if (x_27 == 0) -{ -lean_object* x_28; uint8_t x_29; -x_28 = l_Lean_Meta_mkPProd___closed__2; -x_29 = l_Lean_Expr_isConstOf(x_25, x_28); -lean_dec(x_25); -if (x_29 == 0) -{ -lean_object* x_30; lean_object* x_31; -lean_dec(x_1); -x_30 = lean_box(0); -x_31 = lean_apply_6(x_16, x_30, x_2, x_3, x_4, x_5, x_15); -return x_31; -} -else -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_box(0); -x_33 = l_Lean_Meta_mkPProdSnd___lambda__2(x_1, x_32, x_2, x_3, x_4, x_5, x_15); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_33; -} -} -else -{ -lean_object* x_34; lean_object* x_35; -lean_dec(x_25); -x_34 = lean_box(0); -x_35 = l_Lean_Meta_mkPProdSnd___lambda__1(x_1, x_34, x_2, x_3, x_4, x_5, x_15); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_35; -} -} -} -} -else -{ -uint8_t x_36; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_36 = !lean_is_exclusive(x_10); -if (x_36 == 0) -{ -return x_10; -} -else -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_10, 0); -x_38 = lean_ctor_get(x_10, 1); -lean_inc(x_38); -lean_inc(x_37); lean_dec(x_10); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -return x_39; +x_16 = l_Lean_Meta_mkPProdFst(x_14, x_1); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +return x_17; } } -} -else -{ -uint8_t x_40; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_40 = !lean_is_exclusive(x_7); -if (x_40 == 0) -{ -return x_7; -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_7, 0); -x_42 = lean_ctor_get(x_7, 1); -lean_inc(x_42); -lean_inc(x_41); -lean_dec(x_7); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -return x_43; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_mkPProdSnd___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_mkPProdSnd___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_Meta_mkPProdSnd___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_1); -return x_7; -} -} -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -uint8_t x_10; -x_10 = lean_usize_dec_eq(x_2, x_3); -if (x_10 == 0) -{ -size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; -x_11 = 1; -x_12 = lean_usize_sub(x_2, x_11); -x_13 = lean_array_uget(x_1, x_12); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_14 = l_Lean_Meta_mkPProd(x_13, x_4, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -x_2 = x_12; -x_4 = x_15; -x_9 = x_16; -goto _start; -} else { uint8_t x_18; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -x_18 = !lean_is_exclusive(x_14); +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_10); if (x_18 == 0) { -return x_14; +return x_10; } else { lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_14, 0); -x_20 = lean_ctor_get(x_14, 1); +x_19 = lean_ctor_get(x_10, 0); +x_20 = lean_ctor_get(x_10, 1); lean_inc(x_20); lean_inc(x_19); -lean_dec(x_14); +lean_dec(x_10); x_21 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_21, 0, x_19); lean_ctor_set(x_21, 1, x_20); @@ -1452,52 +1067,718 @@ return x_21; } else { +uint8_t x_22; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_22 = !lean_is_exclusive(x_7); +if (x_22 == 0) +{ +return x_7; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_7, 0); +x_24 = lean_ctor_get(x_7, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_7); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("mkTypeSnd: cannot handle type ", 30, 30); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_private.Lean.Meta.PProdN.0.Lean.Meta.mkTypeSnd", 47, 47); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_15; uint8_t x_16; +lean_inc(x_1); +x_15 = l_Lean_Expr_cleanupAnnotations(x_1); +x_16 = l_Lean_Expr_isApp(x_15); +if (x_16 == 0) +{ +lean_object* x_17; +lean_dec(x_15); +x_17 = lean_box(0); +x_2 = x_17; +goto block_14; +} +else +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = l_Lean_Expr_appArg(x_15, lean_box(0)); +x_19 = l_Lean_Expr_appFnCleanup(x_15, lean_box(0)); +x_20 = l_Lean_Expr_isApp(x_19); +if (x_20 == 0) +{ +lean_object* x_21; +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_box(0); +x_2 = x_21; +goto block_14; +} +else +{ +lean_object* x_22; lean_object* x_23; uint8_t x_24; +x_22 = l_Lean_Expr_appFnCleanup(x_19, lean_box(0)); +x_23 = l_Lean_Meta_mkPProd___closed__4; +x_24 = l_Lean_Expr_isConstOf(x_22, x_23); +if (x_24 == 0) +{ +lean_object* x_25; uint8_t x_26; +x_25 = l_Lean_Meta_mkPProd___closed__2; +x_26 = l_Lean_Expr_isConstOf(x_22, x_25); +lean_dec(x_22); +if (x_26 == 0) +{ +lean_object* x_27; +lean_dec(x_18); +x_27 = lean_box(0); +x_2 = x_27; +goto block_14; +} +else +{ +lean_dec(x_1); +return x_18; +} +} +else +{ +lean_dec(x_22); +lean_dec(x_1); +return x_18; +} +} +} +block_14: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; +lean_dec(x_2); +x_3 = lean_expr_dbg_to_string(x_1); +lean_dec(x_1); +x_4 = l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1; +x_5 = lean_string_append(x_4, x_3); +lean_dec(x_3); +x_6 = l_Lean_Meta_mkPProdFst___closed__3; +x_7 = lean_string_append(x_5, x_6); +x_8 = l_Lean_Meta_mkPProdFst___closed__4; +x_9 = l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2; +x_10 = lean_unsigned_to_nat(65u); +x_11 = lean_unsigned_to_nat(9u); +x_12 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_8, x_9, x_10, x_11, x_7); +lean_dec(x_7); +x_13 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_12); +return x_13; +} +} +} +static lean_object* _init_l_Lean_Meta_mkPProdSnd___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("mkPProdSnd: cannot handle ", 26, 26); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_mkPProdSnd___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Meta.mkPProdSnd", 20, 20); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSnd(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_20; uint8_t x_21; +lean_inc(x_1); +x_20 = l_Lean_Expr_cleanupAnnotations(x_1); +x_21 = l_Lean_Expr_isApp(x_20); +if (x_21 == 0) +{ lean_object* x_22; +lean_dec(x_20); +x_22 = lean_box(0); +x_3 = x_22; +goto block_19; +} +else +{ +lean_object* x_23; uint8_t x_24; +x_23 = l_Lean_Expr_appFnCleanup(x_20, lean_box(0)); +x_24 = l_Lean_Expr_isApp(x_23); +if (x_24 == 0) +{ +lean_object* x_25; +lean_dec(x_23); +x_25 = lean_box(0); +x_3 = x_25; +goto block_19; +} +else +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = l_Lean_Expr_appFnCleanup(x_23, lean_box(0)); +x_27 = l_Lean_Meta_mkPProd___closed__4; +x_28 = l_Lean_Expr_isConstOf(x_26, x_27); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; +x_29 = l_Lean_Meta_mkPProd___closed__2; +x_30 = l_Lean_Expr_isConstOf(x_26, x_29); +lean_dec(x_26); +if (x_30 == 0) +{ +lean_object* x_31; +x_31 = lean_box(0); +x_3 = x_31; +goto block_19; +} +else +{ +lean_object* x_32; lean_object* x_33; +lean_dec(x_1); +x_32 = lean_unsigned_to_nat(1u); +x_33 = l_Lean_Expr_proj___override(x_29, x_32, x_2); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; +lean_dec(x_26); +lean_dec(x_1); +x_34 = lean_unsigned_to_nat(1u); +x_35 = l_Lean_Expr_proj___override(x_27, x_34, x_2); +return x_35; +} +} +} +block_19: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_3); +x_4 = lean_expr_dbg_to_string(x_2); +lean_dec(x_2); +x_5 = l_Lean_Meta_mkPProdSnd___closed__1; +x_6 = lean_string_append(x_5, x_4); +lean_dec(x_4); +x_7 = l_Lean_Meta_mkPProdFst___closed__2; +x_8 = lean_string_append(x_6, x_7); +x_9 = lean_expr_dbg_to_string(x_1); +lean_dec(x_1); +x_10 = lean_string_append(x_8, x_9); +lean_dec(x_9); +x_11 = l_Lean_Meta_mkPProdFst___closed__3; +x_12 = lean_string_append(x_10, x_11); +x_13 = l_Lean_Meta_mkPProdFst___closed__4; +x_14 = l_Lean_Meta_mkPProdSnd___closed__2; +x_15 = lean_unsigned_to_nat(72u); +x_16 = lean_unsigned_to_nat(9u); +x_17 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_13, x_14, x_15, x_16, x_12); +lean_dec(x_12); +x_18 = l_panic___at_Lean_Expr_appFn_x21___spec__1(x_17); +return x_18; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_mkPProdSndM(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_7 = lean_infer_type(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = lean_whnf(x_8, x_2, x_3, x_4, x_5, x_9); +if (lean_obj_tag(x_10) == 0) +{ +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_10, 0); +x_13 = l_Lean_Meta_mkPProdSnd(x_12, x_1); +lean_ctor_set(x_10, 0, x_13); +return x_10; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_10, 0); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); +lean_inc(x_14); +lean_dec(x_10); +x_16 = l_Lean_Meta_mkPProdSnd(x_14, x_1); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +return x_17; +} +} +else +{ +uint8_t x_18; +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_10); +if (x_18 == 0) +{ +return x_10; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_10, 0); +x_20 = lean_ctor_get(x_10, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_10); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +else +{ +uint8_t x_22; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_22 = !lean_is_exclusive(x_7); +if (x_22 == 0) +{ +return x_7; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_7, 0); +x_24 = lean_ctor_get(x_7, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_7); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; +x_11 = lean_usize_dec_eq(x_3, x_4); +if (x_11 == 0) +{ +size_t x_12; size_t x_13; lean_object* x_14; lean_object* x_15; +x_12 = 1; +x_13 = lean_usize_sub(x_3, x_12); +x_14 = lean_array_uget(x_2, x_13); +lean_inc(x_1); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_15 = lean_apply_7(x_1, x_14, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_3 = x_13; +x_5 = x_16; +x_10 = x_17; +goto _start; +} +else +{ +uint8_t x_19; +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_5); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_4); -lean_ctor_set(x_22, 1, x_9); +lean_dec(x_1); +x_19 = !lean_is_exclusive(x_15); +if (x_19 == 0) +{ +return x_15; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_15, 0); +x_21 = lean_ctor_get(x_15, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_15); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); return x_22; } } } +else +{ +lean_object* x_23; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_5); +lean_ctor_set(x_23, 1, x_10); +return x_23; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg___boxed), 10, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; +x_11 = lean_usize_dec_eq(x_3, x_4); +if (x_11 == 0) +{ +size_t x_12; size_t x_13; lean_object* x_14; lean_object* x_15; +x_12 = 1; +x_13 = lean_usize_sub(x_3, x_12); +x_14 = lean_array_uget(x_2, x_13); +lean_inc(x_1); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_15 = lean_apply_7(x_1, x_14, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_3 = x_13; +x_5 = x_16; +x_10 = x_17; +goto _start; +} +else +{ +uint8_t x_19; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_19 = !lean_is_exclusive(x_15); +if (x_19 == 0) +{ +return x_15; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_15, 0); +x_21 = lean_ctor_get(x_15, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_15); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +} +else +{ +lean_object* x_23; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_5); +lean_ctor_set(x_23, 1, x_10); +return x_23; +} +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg___boxed), 10, 0); +return x_2; +} +} +static lean_object* _init_l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_instInhabitedMetaM___boxed), 5, 1); +lean_closure_set(x_1, 0, lean_box(0)); +return x_1; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1; +x_8 = lean_panic_fn(x_7, x_1); +x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); +return x_9; +} +} +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_genMk___spec__3(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg), 6, 0); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_genMk___rarg___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_genMk___rarg___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("!xs.isEmpty\n ", 14, 14); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_genMk___rarg___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_PProdN_genMk___rarg___closed__1; +x_2 = l_Lean_Meta_PProdN_genMk___rarg___closed__2; +x_3 = lean_string_append(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_genMk___rarg___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Meta.PProdN.genMk", 22, 22); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_genMk___rarg___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Meta_mkPProdFst___closed__4; +x_2 = l_Lean_Meta_PProdN_genMk___rarg___closed__4; +x_3 = lean_unsigned_to_nat(85u); +x_4 = lean_unsigned_to_nat(2u); +x_5 = l_Lean_Meta_PProdN_genMk___rarg___closed__3; +x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_genMk___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +uint8_t x_9; +x_9 = l_Array_isEmpty___rarg(x_3); +if (x_9 == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_10 = l_Array_back_x21___rarg(x_1, x_3); +x_11 = lean_array_pop(x_3); +x_12 = lean_array_get_size(x_11); +x_13 = lean_nat_dec_le(x_12, x_12); +if (x_13 == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_nat_dec_lt(x_14, x_12); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_10); +lean_ctor_set(x_16, 1, x_8); +return x_16; +} +else +{ +size_t x_17; size_t x_18; lean_object* x_19; +x_17 = lean_usize_of_nat(x_12); +lean_dec(x_12); +x_18 = 0; +x_19 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg(x_2, x_11, x_17, x_18, x_10, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_11); +return x_19; +} +} +else +{ +lean_object* x_20; uint8_t x_21; +x_20 = lean_unsigned_to_nat(0u); +x_21 = lean_nat_dec_lt(x_20, x_12); +if (x_21 == 0) +{ +lean_object* x_22; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_10); +lean_ctor_set(x_22, 1, x_8); +return x_22; +} +else +{ +size_t x_23; size_t x_24; lean_object* x_25; +x_23 = lean_usize_of_nat(x_12); +lean_dec(x_12); +x_24 = 0; +x_25 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg(x_2, x_11, x_23, x_24, x_10, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_11); +return x_25; +} +} +} +else +{ +lean_object* x_26; lean_object* x_27; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_26 = l_Lean_Meta_PProdN_genMk___rarg___closed__5; +x_27 = l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg(x_26, x_4, x_5, x_6, x_7, x_8); +return x_27; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_genMk(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_genMk___rarg), 8, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_13 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__1___rarg(x_1, x_2, x_11, x_12, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_12 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_13 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_genMk___spec__2___rarg(x_1, x_2, x_11, x_12, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); +return x_13; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_pack___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProd), 7, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_pack___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +lean_object* x_8; lean_object* x_9; lean_object* x_10; x_8 = l_Lean_instInhabitedExpr; -x_9 = l_Array_back_x21___rarg(x_8, x_1); -x_10 = lean_array_pop(x_1); -x_11 = lean_array_get_size(x_10); -x_12 = lean_unsigned_to_nat(0u); -x_13 = lean_nat_dec_lt(x_12, x_11); -if (x_13 == 0) -{ -lean_object* x_14; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_9); -lean_ctor_set(x_14, 1, x_7); -return x_14; -} -else -{ -size_t x_15; size_t x_16; lean_object* x_17; -x_15 = lean_usize_of_nat(x_11); -lean_dec(x_11); -x_16 = 0; -x_17 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1(x_10, x_15, x_16, x_9, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_10); -return x_17; -} +x_9 = l_Lean_Meta_PProdN_pack___lambda__1___closed__1; +x_10 = l_Lean_Meta_PProdN_genMk___rarg(x_8, x_9, x_1, x_3, x_4, x_5, x_6, x_7); +return x_10; } } static lean_object* _init_l_Lean_Meta_PProdN_pack___closed__1() { @@ -1556,11 +1837,12 @@ x_17 = lean_nat_dec_eq(x_15, x_16); lean_dec(x_15); if (x_17 == 0) { -lean_object* x_18; lean_object* x_19; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_dec(x_1); -x_18 = lean_box(0); -x_19 = l_Lean_Meta_PProdN_pack___lambda__1(x_2, x_18, x_3, x_4, x_5, x_6, x_7); -return x_19; +x_18 = l_Lean_instInhabitedExpr; +x_19 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProd), 7, 0); +x_20 = l_Lean_Meta_PProdN_genMk___rarg(x_18, x_19, x_2, x_3, x_4, x_5, x_6, x_7); +return x_20; } else { @@ -1571,18 +1853,18 @@ lean_dec(x_3); lean_dec(x_2); if (lean_obj_tag(x_1) == 0) { -lean_object* x_20; lean_object* x_21; -x_20 = l_Lean_Meta_PProdN_pack___closed__5; -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_7); -return x_21; +lean_object* x_21; lean_object* x_22; +x_21 = l_Lean_Meta_PProdN_pack___closed__5; +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_7); +return x_22; } else { -lean_object* x_22; -x_22 = lean_box(0); -x_8 = x_22; +lean_object* x_23; +x_23 = lean_box(0); +x_8 = x_23; goto block_14; } } @@ -1603,19 +1885,6 @@ return x_13; } } } -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -size_t x_10; size_t x_11; lean_object* x_12; -x_10 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_11 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_12 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_pack___spec__1(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_1); -return x_12; -} -} LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_pack___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -1625,110 +1894,22 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +static lean_object* _init_l_Lean_Meta_PProdN_mk___lambda__1___closed__1() { _start: { -uint8_t x_10; -x_10 = lean_usize_dec_eq(x_2, x_3); -if (x_10 == 0) -{ -size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; -x_11 = 1; -x_12 = lean_usize_sub(x_2, x_11); -x_13 = lean_array_uget(x_1, x_12); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -x_14 = l_Lean_Meta_mkPProdMk(x_13, x_4, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -x_2 = x_12; -x_4 = x_15; -x_9 = x_16; -goto _start; -} -else -{ -uint8_t x_18; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -x_18 = !lean_is_exclusive(x_14); -if (x_18 == 0) -{ -return x_14; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_14, 0); -x_20 = lean_ctor_get(x_14, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_14); -x_21 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -} -else -{ -lean_object* x_22; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_4); -lean_ctor_set(x_22, 1, x_9); -return x_22; -} +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProdMk), 7, 0); +return x_1; } } LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mk___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; +lean_object* x_8; lean_object* x_9; lean_object* x_10; x_8 = l_Lean_instInhabitedExpr; -x_9 = l_Array_back_x21___rarg(x_8, x_1); -x_10 = lean_array_pop(x_1); -x_11 = lean_array_get_size(x_10); -x_12 = lean_unsigned_to_nat(0u); -x_13 = lean_nat_dec_lt(x_12, x_11); -if (x_13 == 0) -{ -lean_object* x_14; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_9); -lean_ctor_set(x_14, 1, x_7); -return x_14; -} -else -{ -size_t x_15; size_t x_16; lean_object* x_17; -x_15 = lean_usize_of_nat(x_11); -lean_dec(x_11); -x_16 = 0; -x_17 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1(x_10, x_15, x_16, x_9, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_10); -return x_17; -} +x_9 = l_Lean_Meta_PProdN_mk___lambda__1___closed__1; +x_10 = l_Lean_Meta_PProdN_genMk___rarg(x_8, x_9, x_1, x_3, x_4, x_5, x_6, x_7); +return x_10; } } static lean_object* _init_l_Lean_Meta_PProdN_mk___closed__1() { @@ -1779,11 +1960,12 @@ x_17 = lean_nat_dec_eq(x_15, x_16); lean_dec(x_15); if (x_17 == 0) { -lean_object* x_18; lean_object* x_19; +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_dec(x_1); -x_18 = lean_box(0); -x_19 = l_Lean_Meta_PProdN_mk___lambda__1(x_2, x_18, x_3, x_4, x_5, x_6, x_7); -return x_19; +x_18 = l_Lean_instInhabitedExpr; +x_19 = lean_alloc_closure((void*)(l_Lean_Meta_mkPProdMk), 7, 0); +x_20 = l_Lean_Meta_PProdN_genMk___rarg(x_18, x_19, x_2, x_3, x_4, x_5, x_6, x_7); +return x_20; } else { @@ -1794,18 +1976,18 @@ lean_dec(x_3); lean_dec(x_2); if (lean_obj_tag(x_1) == 0) { -lean_object* x_20; lean_object* x_21; -x_20 = l_Lean_Meta_PProdN_mk___closed__4; -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_7); -return x_21; +lean_object* x_21; lean_object* x_22; +x_21 = l_Lean_Meta_PProdN_mk___closed__4; +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_7); +return x_22; } else { -lean_object* x_22; -x_22 = lean_box(0); -x_8 = x_22; +lean_object* x_23; +x_23 = lean_box(0); +x_8 = x_23; goto block_14; } } @@ -1826,19 +2008,6 @@ return x_13; } } } -LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -size_t x_10; size_t x_11; lean_object* x_12; -x_10 = lean_unbox_usize(x_2); -lean_dec(x_2); -x_11 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_12 = l_Array_foldrMUnsafe_fold___at_Lean_Meta_PProdN_mk___spec__1(x_1, x_10, x_11, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_1); -return x_12; -} -} LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_mk___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -1848,7 +2017,206 @@ lean_dec(x_2); return x_8; } } -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; uint8_t x_8; +x_7 = lean_ctor_get(x_2, 1); +x_8 = lean_nat_dec_lt(x_4, x_7); +if (x_8 == 0) +{ +lean_dec(x_4); +return x_3; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_9 = lean_ctor_get(x_3, 0); +lean_inc(x_9); +x_10 = lean_ctor_get(x_3, 1); +lean_inc(x_10); +lean_dec(x_3); +lean_inc(x_9); +x_11 = l_Lean_Meta_mkPProdSnd(x_9, x_10); +x_12 = l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd(x_9); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_11); +x_14 = lean_ctor_get(x_2, 2); +x_15 = lean_nat_add(x_4, x_14); +lean_dec(x_4); +x_3 = x_13; +x_4 = x_15; +x_5 = lean_box(0); +x_6 = lean_box(0); +goto _start; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_unsigned_to_nat(1u); +lean_inc(x_1); +x_8 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_8, 0, x_6); +lean_ctor_set(x_8, 1, x_1); +lean_ctor_set(x_8, 2, x_7); +x_9 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_9, 0, x_2); +lean_ctor_set(x_9, 1, x_3); +x_10 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(x_8, x_8, x_9, x_6, lean_box(0), lean_box(0)); +lean_dec(x_8); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_nat_add(x_1, x_7); +lean_dec(x_1); +x_14 = lean_nat_dec_lt(x_13, x_4); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_dec(x_11); +return x_12; +} +else +{ +lean_object* x_15; +x_15 = l_Lean_Meta_mkPProdFst(x_11, x_12); +return x_15; +} +} +} +static lean_object* _init_l_Lean_Meta_PProdN_proj___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Id_instMonad; +x_2 = l_instInhabitedPUnit; +x_3 = l_instInhabitedOfMonad___rarg(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_proj___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Meta.PProdN.proj", 21, 21); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_proj___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("PProdN.proj: {i} not less than {n}", 34, 34); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_proj___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Id_instMonad; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = lean_ctor_get(x_2, 1); +lean_inc(x_3); +lean_dec(x_2); +x_4 = lean_box(0); +x_5 = lean_apply_2(x_3, lean_box(0), x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +lean_inc(x_1); +lean_inc(x_2); +x_5 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_proj___lambda__1___boxed), 5, 4); +lean_closure_set(x_5, 0, x_2); +lean_closure_set(x_5, 1, x_3); +lean_closure_set(x_5, 2, x_4); +lean_closure_set(x_5, 3, x_1); +x_6 = lean_nat_dec_lt(x_2, x_1); +lean_dec(x_1); +lean_dec(x_2); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_7 = l_Id_instMonad; +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +x_9 = l_Lean_Meta_PProdN_proj___closed__1; +x_10 = l_Lean_Meta_mkPProdFst___closed__4; +x_11 = l_Lean_Meta_PProdN_proj___closed__2; +x_12 = lean_unsigned_to_nat(104u); +x_13 = lean_unsigned_to_nat(18u); +x_14 = l_Lean_Meta_PProdN_proj___closed__3; +x_15 = l_panicWithPosWithDecl___rarg(x_9, x_10, x_11, x_12, x_13, x_14); +x_16 = lean_apply_4(x_8, lean_box(0), lean_box(0), x_15, x_5); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_17 = l_Id_instMonad; +x_18 = lean_ctor_get(x_17, 1); +lean_inc(x_18); +x_19 = l_Lean_Meta_PProdN_proj___closed__4; +x_20 = lean_apply_4(x_18, lean_box(0), lean_box(0), x_19, x_5); +return x_20; +} +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Meta_PProdN_proj___lambda__1(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_4); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projs___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Meta_PProdN_proj(x_1, x_4, x_2, x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projs(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; +lean_inc(x_1); +x_4 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_projs___lambda__1), 4, 3); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_2); +lean_closure_set(x_4, 2, x_3); +x_5 = l_Array_ofFn___rarg(x_1, x_4); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; uint8_t x_13; @@ -1874,7 +2242,7 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -x_15 = l_Lean_Meta_mkPProdSnd(x_3, x_7, x_8, x_9, x_10, x_11); +x_15 = l_Lean_Meta_mkPProdSndM(x_3, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_15) == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; @@ -1923,7 +2291,7 @@ return x_24; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projM(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; @@ -1938,7 +2306,7 @@ lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_12 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(x_11, x_11, x_3, x_9, lean_box(0), lean_box(0), x_4, x_5, x_6, x_7, x_8); +x_12 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1(x_11, x_11, x_3, x_9, lean_box(0), lean_box(0), x_4, x_5, x_6, x_7, x_8); lean_dec(x_11); if (lean_obj_tag(x_12) == 0) { @@ -1965,7 +2333,7 @@ else { lean_object* x_18; lean_free_object(x_12); -x_18 = l_Lean_Meta_mkPProdFst(x_14, x_4, x_5, x_6, x_7, x_15); +x_18 = l_Lean_Meta_mkPProdFstM(x_14, x_4, x_5, x_6, x_7, x_15); return x_18; } } @@ -1996,7 +2364,7 @@ return x_23; else { lean_object* x_24; -x_24 = l_Lean_Meta_mkPProdFst(x_19, x_4, x_5, x_6, x_7, x_20); +x_24 = l_Lean_Meta_mkPProdFstM(x_19, x_4, x_5, x_6, x_7, x_20); return x_24; } } @@ -2030,26 +2398,36 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; -x_12 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_proj___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_12 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_PProdN_projM___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_2); lean_dec(x_1); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_proj___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_projM___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Lean_Meta_PProdN_proj(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Lean_Meta_PProdN_projM(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1; +x_8 = lean_panic_fn(x_7, x_1); +x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -2080,29 +2458,21 @@ static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1 _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("assertion violation: ", 21, 21); +x_1 = lean_mk_string_unchecked("sort.isSort\n -- NB: Use beta, not instantiateLambda; when constructing the belowDict below\n -- we pass `C`, a plain FVar, here\n ", 137, 137); return x_1; } } static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("sort.isSort\n -- NB: Use beta, not instantiateLambda; when constructing the belowDict below\n -- we pass `C`, a plain FVar, here\n ", 137, 137); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1; -x_2 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2; +x_1 = l_Lean_Meta_PProdN_genMk___rarg___closed__1; +x_2 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4() { +static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3() { _start: { lean_object* x_1; @@ -2110,15 +2480,15 @@ x_1 = lean_mk_string_unchecked("Lean.Meta.PProdN.packLambdas", 28, 28); return x_1; } } -static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5() { +static lean_object* _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Lean_Meta_mkPProdFst___lambda__3___closed__1; -x_2 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4; -x_3 = lean_unsigned_to_nat(121u); +x_1 = l_Lean_Meta_mkPProdFst___closed__4; +x_2 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3; +x_3 = lean_unsigned_to_nat(155u); x_4 = lean_unsigned_to_nat(4u); -x_5 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3; +x_5 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -2133,8 +2503,8 @@ if (x_9 == 0) lean_object* x_10; lean_object* x_11; lean_dec(x_2); lean_dec(x_1); -x_10 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5; -x_11 = l_panic___at_Lean_Meta_mkPProdFst___spec__1(x_10, x_4, x_5, x_6, x_7, x_8); +x_10 = l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4; +x_11 = l_panic___at_Lean_Meta_PProdN_packLambdas___spec__1(x_10, x_4, x_5, x_6, x_7, x_8); return x_11; } else @@ -2143,7 +2513,7 @@ size_t x_12; size_t x_13; lean_object* x_14; lean_object* x_15; lean_object* x_1 x_12 = lean_array_size(x_1); x_13 = 0; lean_inc(x_2); -x_14 = l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1(x_2, x_12, x_13, x_1); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2(x_2, x_12, x_13, x_1); x_15 = l_Lean_Expr_sortLevel_x21(x_3); lean_inc(x_7); lean_inc(x_6); @@ -2243,7 +2613,7 @@ return x_15; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { size_t x_5; size_t x_6; lean_object* x_7; @@ -2251,7 +2621,7 @@ x_5 = lean_unbox_usize(x_2); lean_dec(x_2); x_6 = lean_unbox_usize(x_3); lean_dec(x_3); -x_7 = l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__1(x_1, x_5, x_6, x_4); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Meta_PProdN_packLambdas___spec__2(x_1, x_5, x_6, x_4); return x_7; } } @@ -2468,7 +2838,262 @@ lean_dec(x_3); return x_9; } } +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_stripProjs(lean_object* x_1) { +_start: +{ +if (lean_obj_tag(x_1) == 11) +{ +lean_object* x_2; +x_2 = lean_ctor_get(x_1, 0); +if (lean_obj_tag(x_2) == 1) +{ +lean_object* x_3; +x_3 = lean_ctor_get(x_2, 0); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_4 = lean_ctor_get(x_1, 2); +x_5 = lean_ctor_get(x_2, 1); +x_6 = l_Lean_Meta_mkPProd___closed__1; +x_7 = lean_string_dec_eq(x_5, x_6); +if (x_7 == 0) +{ +lean_object* x_8; uint8_t x_9; +x_8 = l_Lean_Meta_mkPProd___closed__3; +x_9 = lean_string_dec_eq(x_5, x_8); +if (x_9 == 0) +{ +lean_inc(x_1); +return x_1; +} +else +{ +x_1 = x_4; +goto _start; +} +} +else +{ +x_1 = x_4; +goto _start; +} +} +else +{ +lean_inc(x_1); +return x_1; +} +} +else +{ +lean_inc(x_1); +return x_1; +} +} +else +{ +lean_inc(x_1); +return x_1; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_stripProjs___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Lean_Meta_PProdN_stripProjs(x_1); +lean_dec(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; +x_5 = l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1; +x_6 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_6, 0, x_5); +lean_ctor_set(x_6, 1, x_4); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +uint8_t x_5; +x_5 = l_Lean_Expr_isProj(x_1); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; +x_6 = l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1; +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_6); +lean_ctor_set(x_7, 1, x_4); +return x_7; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = l_Lean_Expr_projExpr_x21(x_1); +x_9 = l_Lean_Meta_mkPProdMk___closed__2; +x_10 = lean_unsigned_to_nat(4u); +x_11 = l_Lean_Expr_isAppOfArity(x_8, x_9, x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = l_Lean_Meta_mkPProdMk___closed__4; +x_13 = lean_unsigned_to_nat(2u); +x_14 = l_Lean_Expr_isAppOfArity(x_8, x_12, x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_dec(x_8); +x_15 = l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1; +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_4); +return x_16; +} +else +{ +lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_17 = l_Lean_Expr_projIdx_x21(x_1); +x_18 = lean_unsigned_to_nat(0u); +x_19 = lean_nat_dec_eq(x_17, x_18); +lean_dec(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_20 = l_Lean_Expr_appArg_x21(x_8); +lean_dec(x_8); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, x_20); +x_22 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_22, 0, x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_4); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_24 = l_Lean_Expr_appFn_x21(x_8); +lean_dec(x_8); +x_25 = l_Lean_Expr_appArg_x21(x_24); +lean_dec(x_24); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_25); +x_27 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_27, 0, x_26); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_4); +return x_28; +} +} +} +else +{ +lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_29 = l_Lean_Expr_projIdx_x21(x_1); +x_30 = lean_unsigned_to_nat(0u); +x_31 = lean_nat_dec_eq(x_29, x_30); +lean_dec(x_29); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_32 = l_Lean_Expr_appArg_x21(x_8); +lean_dec(x_8); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_32); +x_34 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_34, 0, x_33); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_4); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_36 = l_Lean_Expr_appFn_x21(x_8); +lean_dec(x_8); +x_37 = l_Lean_Expr_appArg_x21(x_36); +lean_dec(x_36); +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_37); +x_39 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_39, 0, x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_4); +return x_40; +} +} +} +} +} +static lean_object* _init_l_Lean_Meta_PProdN_reduceProjs___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed), 4, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_PProdN_reduceProjs___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_5 = l_Lean_Meta_PProdN_reduceProjs___closed__1; +x_6 = l_Lean_Meta_PProdN_reduceProjs___closed__2; +x_7 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_1, x_5, x_6, x_2, x_3, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Meta_PProdN_reduceProjs___lambda__1(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_PProdN_reduceProjs___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Meta_PProdN_reduceProjs___lambda__2(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} lean_object* initialize_Lean_Meta_InferType(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Transform(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_PProdN(uint8_t builtin, lean_object* w) { lean_object * res; @@ -2477,6 +3102,9 @@ _G_initialized = true; res = initialize_Lean_Meta_InferType(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Transform(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Meta_mkPProd___closed__1 = _init_l_Lean_Meta_mkPProd___closed__1(); lean_mark_persistent(l_Lean_Meta_mkPProd___closed__1); l_Lean_Meta_mkPProd___closed__2 = _init_l_Lean_Meta_mkPProd___closed__2(); @@ -2497,26 +3125,38 @@ l_Lean_Meta_mkPProdMk___closed__4 = _init_l_Lean_Meta_mkPProdMk___closed__4(); lean_mark_persistent(l_Lean_Meta_mkPProdMk___closed__4); l_Lean_Meta_mkPProdMk___closed__5 = _init_l_Lean_Meta_mkPProdMk___closed__5(); lean_mark_persistent(l_Lean_Meta_mkPProdMk___closed__5); -l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1 = _init_l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1(); -lean_mark_persistent(l_panic___at_Lean_Meta_mkPProdFst___spec__1___closed__1); -l_Lean_Meta_mkPProdFst___lambda__3___closed__1 = _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Meta_mkPProdFst___lambda__3___closed__1); -l_Lean_Meta_mkPProdFst___lambda__3___closed__2 = _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Meta_mkPProdFst___lambda__3___closed__2); -l_Lean_Meta_mkPProdFst___lambda__3___closed__3 = _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Meta_mkPProdFst___lambda__3___closed__3); -l_Lean_Meta_mkPProdFst___lambda__3___closed__4 = _init_l_Lean_Meta_mkPProdFst___lambda__3___closed__4(); -lean_mark_persistent(l_Lean_Meta_mkPProdFst___lambda__3___closed__4); l_Lean_Meta_mkPProdFst___closed__1 = _init_l_Lean_Meta_mkPProdFst___closed__1(); lean_mark_persistent(l_Lean_Meta_mkPProdFst___closed__1); -l_Lean_Meta_mkPProdSnd___lambda__3___closed__1 = _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__1(); -lean_mark_persistent(l_Lean_Meta_mkPProdSnd___lambda__3___closed__1); -l_Lean_Meta_mkPProdSnd___lambda__3___closed__2 = _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Meta_mkPProdSnd___lambda__3___closed__2); -l_Lean_Meta_mkPProdSnd___lambda__3___closed__3 = _init_l_Lean_Meta_mkPProdSnd___lambda__3___closed__3(); -lean_mark_persistent(l_Lean_Meta_mkPProdSnd___lambda__3___closed__3); +l_Lean_Meta_mkPProdFst___closed__2 = _init_l_Lean_Meta_mkPProdFst___closed__2(); +lean_mark_persistent(l_Lean_Meta_mkPProdFst___closed__2); +l_Lean_Meta_mkPProdFst___closed__3 = _init_l_Lean_Meta_mkPProdFst___closed__3(); +lean_mark_persistent(l_Lean_Meta_mkPProdFst___closed__3); +l_Lean_Meta_mkPProdFst___closed__4 = _init_l_Lean_Meta_mkPProdFst___closed__4(); +lean_mark_persistent(l_Lean_Meta_mkPProdFst___closed__4); +l_Lean_Meta_mkPProdFst___closed__5 = _init_l_Lean_Meta_mkPProdFst___closed__5(); +lean_mark_persistent(l_Lean_Meta_mkPProdFst___closed__5); +l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1 = _init_l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__1); +l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2 = _init_l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_PProdN_0__Lean_Meta_mkTypeSnd___closed__2); l_Lean_Meta_mkPProdSnd___closed__1 = _init_l_Lean_Meta_mkPProdSnd___closed__1(); lean_mark_persistent(l_Lean_Meta_mkPProdSnd___closed__1); +l_Lean_Meta_mkPProdSnd___closed__2 = _init_l_Lean_Meta_mkPProdSnd___closed__2(); +lean_mark_persistent(l_Lean_Meta_mkPProdSnd___closed__2); +l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1 = _init_l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1(); +lean_mark_persistent(l_panic___at_Lean_Meta_PProdN_genMk___spec__3___rarg___closed__1); +l_Lean_Meta_PProdN_genMk___rarg___closed__1 = _init_l_Lean_Meta_PProdN_genMk___rarg___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_genMk___rarg___closed__1); +l_Lean_Meta_PProdN_genMk___rarg___closed__2 = _init_l_Lean_Meta_PProdN_genMk___rarg___closed__2(); +lean_mark_persistent(l_Lean_Meta_PProdN_genMk___rarg___closed__2); +l_Lean_Meta_PProdN_genMk___rarg___closed__3 = _init_l_Lean_Meta_PProdN_genMk___rarg___closed__3(); +lean_mark_persistent(l_Lean_Meta_PProdN_genMk___rarg___closed__3); +l_Lean_Meta_PProdN_genMk___rarg___closed__4 = _init_l_Lean_Meta_PProdN_genMk___rarg___closed__4(); +lean_mark_persistent(l_Lean_Meta_PProdN_genMk___rarg___closed__4); +l_Lean_Meta_PProdN_genMk___rarg___closed__5 = _init_l_Lean_Meta_PProdN_genMk___rarg___closed__5(); +lean_mark_persistent(l_Lean_Meta_PProdN_genMk___rarg___closed__5); +l_Lean_Meta_PProdN_pack___lambda__1___closed__1 = _init_l_Lean_Meta_PProdN_pack___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_pack___lambda__1___closed__1); l_Lean_Meta_PProdN_pack___closed__1 = _init_l_Lean_Meta_PProdN_pack___closed__1(); lean_mark_persistent(l_Lean_Meta_PProdN_pack___closed__1); l_Lean_Meta_PProdN_pack___closed__2 = _init_l_Lean_Meta_PProdN_pack___closed__2(); @@ -2527,6 +3167,8 @@ l_Lean_Meta_PProdN_pack___closed__4 = _init_l_Lean_Meta_PProdN_pack___closed__4( lean_mark_persistent(l_Lean_Meta_PProdN_pack___closed__4); l_Lean_Meta_PProdN_pack___closed__5 = _init_l_Lean_Meta_PProdN_pack___closed__5(); lean_mark_persistent(l_Lean_Meta_PProdN_pack___closed__5); +l_Lean_Meta_PProdN_mk___lambda__1___closed__1 = _init_l_Lean_Meta_PProdN_mk___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_mk___lambda__1___closed__1); l_Lean_Meta_PProdN_mk___closed__1 = _init_l_Lean_Meta_PProdN_mk___closed__1(); lean_mark_persistent(l_Lean_Meta_PProdN_mk___closed__1); l_Lean_Meta_PProdN_mk___closed__2 = _init_l_Lean_Meta_PProdN_mk___closed__2(); @@ -2535,6 +3177,14 @@ l_Lean_Meta_PProdN_mk___closed__3 = _init_l_Lean_Meta_PProdN_mk___closed__3(); lean_mark_persistent(l_Lean_Meta_PProdN_mk___closed__3); l_Lean_Meta_PProdN_mk___closed__4 = _init_l_Lean_Meta_PProdN_mk___closed__4(); lean_mark_persistent(l_Lean_Meta_PProdN_mk___closed__4); +l_Lean_Meta_PProdN_proj___closed__1 = _init_l_Lean_Meta_PProdN_proj___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_proj___closed__1); +l_Lean_Meta_PProdN_proj___closed__2 = _init_l_Lean_Meta_PProdN_proj___closed__2(); +lean_mark_persistent(l_Lean_Meta_PProdN_proj___closed__2); +l_Lean_Meta_PProdN_proj___closed__3 = _init_l_Lean_Meta_PProdN_proj___closed__3(); +lean_mark_persistent(l_Lean_Meta_PProdN_proj___closed__3); +l_Lean_Meta_PProdN_proj___closed__4 = _init_l_Lean_Meta_PProdN_proj___closed__4(); +lean_mark_persistent(l_Lean_Meta_PProdN_proj___closed__4); l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1 = _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1(); lean_mark_persistent(l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__1); l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2 = _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__2(); @@ -2543,8 +3193,12 @@ l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3 = _init_l_Lean_Meta_PProd lean_mark_persistent(l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__3); l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4 = _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4(); lean_mark_persistent(l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__4); -l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5 = _init_l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5(); -lean_mark_persistent(l_Lean_Meta_PProdN_packLambdas___lambda__1___closed__5); +l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1 = _init_l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_reduceProjs___lambda__1___closed__1); +l_Lean_Meta_PProdN_reduceProjs___closed__1 = _init_l_Lean_Meta_PProdN_reduceProjs___closed__1(); +lean_mark_persistent(l_Lean_Meta_PProdN_reduceProjs___closed__1); +l_Lean_Meta_PProdN_reduceProjs___closed__2 = _init_l_Lean_Meta_PProdN_reduceProjs___closed__2(); +lean_mark_persistent(l_Lean_Meta_PProdN_reduceProjs___closed__2); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Meta/Tactic/FunInd.c b/stage0/stdlib/Lean/Meta/Tactic/FunInd.c index 4ede9f8a42..31fb4da10d 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/FunInd.c +++ b/stage0/stdlib/Lean/Meta/Tactic/FunInd.c @@ -13,31 +13,35 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__3___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__1(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__13___closed__5; lean_object* l_Lean_log___at_Lean_Elab_Term_reportUnsolvedGoals___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_StateRefT_x27_instMonadExceptOf___rarg(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__2; lean_object* l_Lean_registerReservedNameAction(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1; lean_object* l_Lean_Meta_inferArgumentTypesN(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__37(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2___boxed(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__33___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__26(lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -46,11 +50,13 @@ static double l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec lean_object* l_Lean_Meta_ArgsPacker_curryParam___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_localM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__28___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instMonadExceptOfExceptionCoreM; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__25___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__22(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___closed__4; lean_object* l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -61,33 +67,29 @@ LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_buildInductionBod lean_object* l_Lean_Meta_withLetDecl___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_isPerm___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_empty_array_with_capacity(lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__5___boxed(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4; static lean_object* l_panic___at_Lean_Tactic_FunInd_foldAndCollect___spec__10___closed__1; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3___closed__3; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__2___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__13___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__29(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_WF_instInhabitedEqnInfo; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_mkPProdFst(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__4___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__17(lean_object*); -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__18___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -99,8 +101,6 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_bu LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__21(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_mkPProdSnd(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__6; lean_object* l_Lean_ConstantInfo_type(lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__2; @@ -108,6 +108,7 @@ lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, l static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__3(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___lambda__2___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__7; @@ -130,31 +131,30 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__20(lean_o LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__27(lean_object*); lean_object* l_Lean_FileMap_toPosition(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__26___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Array_isEqvAux___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_lor(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Structural_RecArgInfo_pickIndicesMajor(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__10___closed__3; uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_MatcherApp_withUserNames___at_Lean_Meta_MatcherApp_inferMatchType___spec__10___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4; LEAN_EXPORT lean_object* l_StateT_lift___at_Lean_Tactic_FunInd_buildInductionCase___spec__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__32___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__22___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___closed__1; lean_object* l_Array_findIdx_x3f_loop___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_sort___override(lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Tactic_FunInd_buildInductionCase___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__26(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__2___closed__3; lean_object* l_Lean_MessageData_ofList(lean_object*); @@ -171,21 +171,21 @@ LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunIn LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__35___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Tactic_FunInd_buildInductionCase___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__4___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_localMapM(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___closed__1; static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M2_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_Structural_instInhabitedEqnInfo; @@ -204,22 +204,22 @@ LEAN_EXPORT lean_object* l_StateT_lift___at_Lean_Tactic_FunInd_buildInductionCas LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__4___boxed(lean_object**); static lean_object* l_Lean_Tactic_FunInd_M_run___rarg___closed__1; lean_object* l_Lean_replaceRef(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913_(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__2___closed__1; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__23___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkExpectedTypeHint(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_proj___override(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__2; lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_eval___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3; static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__2; extern lean_object* l_Lean_casesOnSuffix; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_foldAndCollect___spec__12___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -233,33 +233,33 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollec LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___boxed(lean_object**); -LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__28(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnpackedInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1; static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__3; lean_object* l_Lean_Expr_fvarId_x21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__3___closed__2; lean_object* l_Lean_Environment_find_x3f(lean_object*, lean_object*); uint8_t lean_float_decLt(double, double); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__2; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__1; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_getMatcherInfo_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__21___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__35(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -268,28 +268,39 @@ lean_object* l_Lean_Meta_forallTelescopeReducing___at_Lean_Meta_getParamNames___ lean_object* l_Lean_MessageData_hasSyntheticSorry(lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___closed__2; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___closed__4; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__5(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Tactic_FunInd_mkLambdaFVarsMasked___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_ConstantInfo_hasValue(lean_object*, uint8_t); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___boxed(lean_object**); +lean_object* l_Lean_Meta_PProdN_projM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInduction___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__10___closed__7; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__1___closed__1; +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___lambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_elimOptParam___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_get_num_heartbeats(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2; lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); lean_object* l_List_get___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_buildInductionBody___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__1; @@ -303,8 +314,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_bu static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__8___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__18(lean_object*); lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Meta_MatcherApp_inferMatchType___spec__4(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_withUserNames___at_Lean_Tactic_FunInd_buildInductionBody___spec__38___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -330,15 +340,14 @@ static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__14___closed__1 LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__12___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_stripPProdProjs(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__24(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_Structural_instInhabitedRecArgInfo; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___closed__2; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__5; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3; LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_foldAndCollect___spec__29(lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__8; static lean_object* l_panic___at_Lean_Tactic_FunInd_withLetDecls___spec__1___rarg___closed__1; @@ -350,10 +359,12 @@ lean_object* l_Lean_CollectLevelParams_main(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Level_ofNat(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__1(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M2_run(lean_object*); +lean_object* l_Lean_ConstantInfo_value_x3f(lean_object*, uint8_t); static lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__2; @@ -364,56 +375,59 @@ extern lean_object* l_Lean_Elab_WF_eqnInfoExt; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_mkConstWithLevelParams___spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_index(lean_object*); LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__4___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_maskArray(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__2___closed__5; extern lean_object* l_instInhabitedPUnit; -static lean_object* l_Lean_Tactic_FunInd_isFunInductName___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__13___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1___boxed(lean_object*, lean_object*); uint8_t l_Lean_Expr_hasMVar(lean_object*); uint8_t l_Array_anyMUnsafe_any___at_Lean_Meta_getElimExprInfo___spec__5(lean_object*, size_t, size_t); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__21___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Structural_IndGroupInst_brecOn(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__1(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls_go___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Tactic_FunInd_buildInductionCase___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_Elab_Structural_getRecArgInfo___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_ptr_addr(lean_object*); lean_object* l_Lean_Meta_isTypeCorrect(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_bind___at_Lean_Tactic_FunInd_foldAndCollect___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Elab_Structural_Positions_groupAndSort___spec__3(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_addTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Elab_Structural_eqnInfoExt; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__21___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_range___lambda__1___boxed(lean_object*); size_t lean_usize_of_nat(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_isFunInductName___closed__2; +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__17___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__24(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__1; -LEAN_EXPORT lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059_(lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__40___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___closed__1; @@ -421,24 +435,22 @@ LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cl lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_lambdaTelescopeImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__28___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1; LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_foldAndCollect___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__20(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__17___closed__3; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__1; lean_object* l_Array_reverse___rarg(lean_object*); uint8_t l_instDecidableNot___rarg(uint8_t); static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_foldAndCollect___spec__12___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_lift___at_Lean_Tactic_FunInd_buildInductionBody___spec__1(lean_object*); lean_object* l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1(lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__14___closed__1; -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_contains___at_Lean_Meta_setMVarUserNamesAt___spec__1(lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); @@ -459,40 +471,49 @@ LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__2; lean_object* l_Lean_Meta_Match_Extension_getMatcherInfo_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__22___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Tactic_FunInd_buildInductionBody___spec__41(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_zip___rarg(lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1; lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__2___closed__3; lean_object* l_ReaderT_instMonadFunctor(lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_eval(lean_object*); -static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__4; -lean_object* l_Lean_Meta_PProdN_proj(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__15(lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__4___closed__3; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__2___closed__4; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6(size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__1; lean_object* l_Lean_Option_get___at_Lean_profiler_threshold_getSecs___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__25(lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Structural_Positions_numIndices(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__21(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName(lean_object*, lean_object*); lean_object* l_Array_ofFn___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__3___closed__2; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8___closed__1; +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__13___closed__2; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); static double l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3; lean_object* l_Lean_Meta_kabstract(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkHEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_withErasedFVars___spec__3(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__29___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -500,15 +521,18 @@ lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(le LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Tactic_FunInd_buildInductionCase___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_getPrefix(lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__26(lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_branch___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_tell___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__28(lean_object*); @@ -519,22 +543,23 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___boxed_ static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18___closed__1; lean_object* l_ReaderT_instMonadLift(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__4(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_check(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__3___closed__1; lean_object* l_Lean_Meta_Match_MatcherInfo_numAlts(lean_object*); static lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__2; static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___closed__3; +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973_(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__29(lean_object*); -LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_branch(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6(lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__3; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__22(lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___closed__4; lean_object* l_Lean_Meta_transform___at_Lean_Meta_zetaReduce___spec__1(lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -542,14 +567,14 @@ lean_object* l_Lean_Meta_getLevel(lean_object*, lean_object*, lean_object*, lean lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at_Lean_Tactic_FunInd_buildInductionCase___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FVarId_getDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__9___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__21___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7; lean_object* l_outOfBounds___rarg(lean_object*); -LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed(lean_object**); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___closed__2; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -561,21 +586,22 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriv static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__3___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; static lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__5___closed__1; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5; static lean_object* l_Lean_Tactic_FunInd_deduplicateIHs___closed__1; lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__27(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_exec___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__23___closed__2; static lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___boxed(lean_object**); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__17___closed__2; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__2___closed__1; lean_object* lean_array_pop(lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at_Lean_Tactic_FunInd_buildInductionBody___spec__24(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Tactic_FunInd_foldAndCollect___spec__31___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_run(lean_object*); @@ -588,6 +614,7 @@ static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___sp lean_object* lean_st_mk_ref(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_withLetDecls___rarg___closed__2; LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -597,6 +624,7 @@ lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__11___closed__2; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_MessageData_hasTag(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11; LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__43___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__25___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); @@ -606,11 +634,10 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveIn LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_foldAndCollect___spec__12(lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___closed__3; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3; @@ -618,15 +645,16 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16( static lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__22(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__13___closed__1; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_inferType___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_levelZero; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_revert(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_io_mono_nanos_now(lean_object*); @@ -646,9 +674,9 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls_go(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_exec(lean_object*); lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deduplicateIHs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___closed__1; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3___closed__3; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2; LEAN_EXPORT lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -659,12 +687,14 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__12_ lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_bind___at_Lean_Tactic_FunInd_buildInductionCase___spec__6(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__22(lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__29___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__3; lean_object* l_Array_indexOfAux___at_Lean_Meta_getElimExprInfo___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -680,6 +710,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollec lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__3; lean_object* l_Lean_MVarId_clear(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__7___boxed__const__1; lean_object* l_Lean_Meta_ArgsPacker_curry(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -691,30 +722,31 @@ LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_withLetDecls___spec__1( LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunInd_buildInductionBody___spec__16___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_warningAsError; static lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___closed__2; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_branch___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_lift___at_Lean_Tactic_FunInd_buildInductionBody___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Option_get___at___private_Lean_Util_Profile_0__Lean_get__profiler___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunInductName___lambda__5(lean_object*); +lean_object* l_Lean_Meta_mkPProdFstM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_trace_profiler_threshold; static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__9___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__19(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__7___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3; +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4; lean_object* l_Lean_Meta_PProdN_packLambdas(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkNot(lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_foldAndCollect___spec__29___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___closed__4; lean_object* l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -722,31 +754,32 @@ static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___closed__1; uint8_t l_Lean_LocalDecl_isLet(lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4___closed__3; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___closed__3; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__25___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Tactic_FunInd_buildInductionCase___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__7(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___lambda__3(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706_(lean_object*); lean_object* l_Lean_LocalDecl_fvarId(lean_object*); LEAN_EXPORT lean_object* l_Nat_foldRevM_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5(lean_object*); static lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___closed__2; +static uint64_t l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__3; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__23___closed__1; -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12; lean_object* l_Lean_Expr_appFn_x21(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_withUserNames___at_Lean_Tactic_FunInd_buildInductionBody___spec__38___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__27___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_withLetDecls___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__4; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static uint64_t l_Lean_Tactic_FunInd_foldAndCollect___lambda__10___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11; -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1; extern lean_object* l_Lean_Meta_instMonadMetaM; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__25(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Structural_argsInGroup(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -755,25 +788,27 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunIn static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__25(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__9___closed__3; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_ask___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__17___closed__1; -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__31(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_assert(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__18___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_localMapM___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerReservedNamePredicate(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1; static double l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_projectMutualInduct___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__1; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instInhabitedMetaM___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -791,21 +826,22 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__20___ lean_object* l_Array_append___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__15___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__8; -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__21(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__35___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_throwError___at_Lean_LMVarId_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__28___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Elab_Structural_IndGroupInfo_ofInductiveVal(lean_object*); -static lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__7___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__27___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshFVarId___at_Lean_Tactic_FunInd_buildInductionBody___spec__23(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAuxAux___rarg(uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Util_Trace_0__Lean_addTraceNode___spec__1(size_t, size_t, lean_object*); @@ -819,25 +855,28 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___boxed static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__28___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1; lean_object* l_Lean_throwError___at_Lean_Meta_mkSimpCongrTheorem___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___closed__3; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_buildInductionCase___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5; LEAN_EXPORT lean_object* l_Nat_foldRevM_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__16___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instantiateLambda___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Tactic_FunInd_foldAndCollect___spec__5___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7; lean_object* l_Lean_LocalDecl_userName(lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__4; LEAN_EXPORT uint8_t l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_foldAndCollect___spec__14(lean_object*, lean_object*, size_t, size_t); lean_object* l_Array_extract___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_name_append_index_after(lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__3___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -847,27 +886,26 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__1___b LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__20___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isFVarOf(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__21___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2; -LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2(lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__1; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Tactic_FunInd_foldAndCollect___spec__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3; lean_object* l_Lean_Meta_MatcherApp_inferMatchType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1___boxed(lean_object*); lean_object* l_Array_qsort_sort___at_Lean_Elab_Structural_Positions_groupAndSort___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__21___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__1; lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateLambdaAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__17___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkLetFun(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__1; lean_object* l_StateT_instMonad___rarg(lean_object*); lean_object* l_Lean_exceptEmoji___rarg(lean_object*); @@ -877,6 +915,7 @@ lean_object* l_Lean_instAddErrorMessageContextOfAddMessageContextOfMonad___rarg( static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4___closed__4; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInduction(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_heqToEq(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_M_localMapM___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -894,10 +933,10 @@ static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___closed__2; static lean_object* l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___lambda__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__10; LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Tactic_FunInd_foldAndCollect___spec__31(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1; lean_object* l_Lean_throwError___rarg(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_bind___at_Lean_Tactic_FunInd_buildInductionCase___spec__6___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__15___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -913,6 +952,7 @@ LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductio LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__20___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_mkLambdaFVarsMasked(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mapErrorImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___closed__1; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__2; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__13___closed__2; @@ -922,20 +962,21 @@ static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___clo uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__45___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__40(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_forallAltTelescope_x27___at_Lean_Tactic_FunInd_buildInductionBody___spec__43(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2; extern lean_object* l_Lean_brecOnSuffix; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3___closed__2; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__1___closed__1; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___closed__1; LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Tactic_FunInd_mkLambdaFVarsMasked___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__12___closed__1; @@ -945,42 +986,46 @@ static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Tactic_FunInd_foldAndCollect___spec__34(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__1; +static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4; lean_object* l_Lean_PersistentHashMap_insert___at_Lean_MVarId_assign___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getLocalInstances(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__10___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_observing_x3f___at_Lean_MVarId_iffOfEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3___closed__1; lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__19(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__4(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_buildInductionCase___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_indentExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isHEq(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__5; -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_stripPProdProjs___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__9(lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___closed__5; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___closed__4; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed__6; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4; lean_object* l_Lean_Meta_unfoldDefinition_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__8___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3; LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1; lean_object* l_Lean_FVarId_getUserName(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -989,7 +1034,10 @@ LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__20___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls(lean_object*); lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); @@ -1003,21 +1051,22 @@ lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMe uint8_t l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Meta_MatcherApp_toExpr(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___spec__3___boxed(lean_object**); +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8; LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3; static lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__4(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_foldAndCollect___spec__29___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__1___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_assertIHs___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1(lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_pure___at_Lean_Tactic_FunInd_buildInductionBody___spec__47___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__36(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__3(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1031,10 +1080,9 @@ static lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tact LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deduplicateIHs___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); lean_object* l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3; static lean_object* l_Lean_Tactic_FunInd_M_branch___rarg___closed__1; static lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__4; lean_object* l_Lean_Meta_PProdN_mk(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1043,7 +1091,6 @@ static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__4; static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__18___closed__2; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__3; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__19(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_left(uint64_t, uint64_t); @@ -1055,14 +1102,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__15(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withLetDecl___at_Lean_Tactic_FunInd_foldAndCollect___spec__13(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__18___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkArrow(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3; static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__45(lean_object*, size_t, size_t, lean_object*); lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); @@ -1070,32 +1116,36 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCol lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); lean_object* l_Array_ofSubarray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__33___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls_go___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe___at_Lean_Tactic_FunInd_M_localMapM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___closed__2; -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___boxed(lean_object**); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__5; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__4(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__28(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3; lean_object* l_List_reverse___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_withLetDecls___rarg___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__18(lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__23___closed__3; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9; +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_projectMutualInduct___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__28___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_getUnfoldEqnFor_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5; static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__4; static lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___closed__3; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1107,37 +1157,33 @@ static lean_object* l_Lean_getConstInfoDefn___at_Lean_Tactic_FunInd_deriveUnaryI static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_PProdN_stripProjs(lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__10___closed__1; +LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___closed__4; lean_object* l_Lean_isTracingEnabledForCore(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_elimOptParam___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__13___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__31___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__4(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__9___boxed(lean_object**); LEAN_EXPORT lean_object* l_MonadExcept_ofExcept___at_Lean_Tactic_FunInd_foldAndCollect___spec__34___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_maskArray___rarg___boxed(lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedName; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); -static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2; -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_fvar___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_buildInductionCase___spec__7___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_array_size(lean_object*); -static uint64_t l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__3; +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2; LEAN_EXPORT uint8_t l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedDefinitionVal; LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunInductName___lambda__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1150,49 +1196,55 @@ LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCol lean_object* l_Lean_getConstInfoInduct___at_Lean_Meta_mkInjectiveTheorems___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_Message_0__Lean_beqMessageSeverity____x40_Lean_Message___hyg_107_(uint8_t, uint8_t); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___boxed(lean_object**); lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed__4; lean_object* l___private_Lean_Meta_Match_MatcherApp_Transform_0__Lean_Meta_MatcherApp_withUserNamesImpl___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_hasConst___at_Lean_Elab_Structural_getRecArgInfo___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__2___closed__2; -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_StateT_bind___at_Lean_Tactic_FunInd_foldAndCollect___spec__11(lean_object*, lean_object*); -static lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_buildInductionBody___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingAux___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_projectMutualInduct___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__22(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__3___closed__2; +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescope___at_Lean_Tactic_FunInd_deriveUnaryInduction___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__21(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_withTraceNode___at_Lean_Tactic_FunInd_foldAndCollect___spec__30___lambda__2(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, double, double, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__8___closed__1; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__4___closed__4; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Match_MatcherInfo_getNumDiscrEqs(lean_object*); +LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2(lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Tactic_FunInd_buildInductionBody___spec__8___closed__1; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__23___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__1___closed__1; lean_object* l_Lean_Meta_ArgsPacker_unpack(lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3; +static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_matchMatcherApp_x3f___at_Lean_Tactic_FunInd_foldAndCollect___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6; uint8_t l_Array_contains___at_Lean_Meta_addImplicitTargets_collect___spec__1(lean_object*, lean_object*); lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Elab_Structural_Positions_groupAndSort___spec__6(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_assertIHs___spec__1___closed__1; static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__7(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1202,6 +1254,7 @@ lean_object* l_Lean_Meta_mkFreshExprSyntheticOpaqueMVar(lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__19___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__32(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_headBeta(lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__4___closed__3; @@ -1213,6 +1266,7 @@ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__27___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1220,15 +1274,15 @@ lean_object* l_Lean_Meta_Match_forallAltTelescope___rarg(lean_object*, lean_obje LEAN_EXPORT lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Tactic_FunInd_buildInductionBody___spec__15___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isMData(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1; lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7; uint8_t lean_nat_dec_le(lean_object*, lean_object*); extern lean_object* l_Lean_Meta_instAddMessageContextMetaM; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_projectMutualInduct(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__8___closed__1; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1239,20 +1293,19 @@ LEAN_EXPORT lean_object* l_Lean_Meta_getMatcherInfo_x3f___at_Lean_Tactic_FunInd_ LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__16(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__18___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5; +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Expr_letFun_x3f(lean_object*); -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__17___closed__1; lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__46___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__44___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__26___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1264,21 +1317,19 @@ lean_object* l_Lean_Expr_beta(lean_object*, lean_object*); lean_object* l_Lean_mkApp5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_cleanupAfter_go(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__21(lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_maskArray___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__33(uint8_t, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_mdataExpr_x21(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__10___closed__5; -static lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2; lean_object* l_ReaderT_instMonadExceptOf___rarg(lean_object*); -LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkPProdSndM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isFVar(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M_ask(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__46(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Tactic_FunInd_unpackMutualInduction___spec__1___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_buildInductionBody___spec__37___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__26___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1287,45 +1338,46 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveIn static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__21___closed__2; static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__6___closed__3; lean_object* l_Lean_InductiveVal_numCtors(lean_object*); +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___at_Lean_Tactic_FunInd_foldAndCollect___spec__17___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__23___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_foldAndCollect___spec__28___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs___spec__1(size_t, size_t, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed(lean_object**); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_log___at_Lean_Tactic_FunInd_buildInductionBody___spec__41___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__25(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__2; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); -static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__19___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__17___closed__2; lean_object* lean_expr_instantiate1(lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_instantiateForallAux(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8; -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__5___closed__2; static lean_object* l_Lean_Tactic_FunInd_cleanPackedArgs___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__1___closed__1; +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2; +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__6; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__2___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionBody___lambda__4___boxed(lean_object**); static lean_object* l_Lean_Tactic_FunInd_unpackMutualInduction___lambda__6___closed__9; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_buildInductionCase___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___boxed(lean_object**); +static lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Tactic_FunInd_buildInductionBody___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addDecl(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageLog_add(lean_object*, lean_object*); @@ -1338,17 +1390,17 @@ LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCo LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at_Lean_Tactic_FunInd_foldAndCollect___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double lean_float_sub(double, double); LEAN_EXPORT lean_object* l_Lean_Meta_MatcherApp_transform___at_Lean_Tactic_FunInd_buildInductionBody___spec__30___lambda__5___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_M2_branch___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; static lean_object* l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__2___closed__1; -static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2; LEAN_EXPORT lean_object* l_Array_isEqvAux___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_buildInductionBody___spec__39___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Array_isEmpty___rarg(lean_object*); lean_object* l_Lean_Meta_substVar_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_foldAndCollect___lambda__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -11947,7 +11999,7 @@ if (x_192 == 0) lean_object* x_193; lean_object* x_194; lean_object* x_195; x_193 = lean_ctor_get(x_190, 0); x_194 = lean_ctor_get(x_190, 1); -x_195 = l_Lean_Meta_mkPProdSnd(x_193, x_7, x_8, x_9, x_10, x_191); +x_195 = l_Lean_Meta_mkPProdSndM(x_193, x_7, x_8, x_9, x_10, x_191); if (lean_obj_tag(x_195) == 0) { uint8_t x_196; @@ -12008,7 +12060,7 @@ x_206 = lean_ctor_get(x_190, 1); lean_inc(x_206); lean_inc(x_205); lean_dec(x_190); -x_207 = l_Lean_Meta_mkPProdSnd(x_205, x_7, x_8, x_9, x_10, x_191); +x_207 = l_Lean_Meta_mkPProdSndM(x_205, x_7, x_8, x_9, x_10, x_191); if (lean_obj_tag(x_207) == 0) { lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; @@ -12114,7 +12166,7 @@ if (x_224 == 0) lean_object* x_225; lean_object* x_226; lean_object* x_227; x_225 = lean_ctor_get(x_222, 0); x_226 = lean_ctor_get(x_222, 1); -x_227 = l_Lean_Meta_mkPProdFst(x_225, x_7, x_8, x_9, x_10, x_223); +x_227 = l_Lean_Meta_mkPProdFstM(x_225, x_7, x_8, x_9, x_10, x_223); if (lean_obj_tag(x_227) == 0) { uint8_t x_228; @@ -12175,7 +12227,7 @@ x_238 = lean_ctor_get(x_222, 1); lean_inc(x_238); lean_inc(x_237); lean_dec(x_222); -x_239 = l_Lean_Meta_mkPProdFst(x_237, x_7, x_8, x_9, x_10, x_223); +x_239 = l_Lean_Meta_mkPProdFstM(x_237, x_7, x_8, x_9, x_10, x_223); if (lean_obj_tag(x_239) == 0) { lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; @@ -55839,63 +55891,65 @@ return x_33; } } } -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -lean_object* x_8; -x_8 = l_Lean_MVarId_getType(x_1, x_3, x_4, x_5, x_6, x_7); -return x_8; -} -} -static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1() { -_start: +uint8_t x_9; +x_9 = lean_usize_dec_lt(x_2, x_1); +if (x_9 == 0) { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("case", 4, 4); -return x_1; +lean_object* x_10; +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_3); +lean_ctor_set(x_10, 1, x_8); +return x_10; } -} -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: +else { -lean_object* x_7; uint8_t x_8; -x_7 = lean_unsigned_to_nat(0u); -x_8 = lean_nat_dec_eq(x_3, x_7); -if (x_8 == 0) +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_11 = lean_array_uget(x_3, x_2); +x_12 = lean_unsigned_to_nat(0u); +x_13 = lean_array_uset(x_3, x_2, x_12); +x_14 = l_Lean_MVarId_getType(x_11, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_14) == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_9 = lean_unsigned_to_nat(1u); -x_10 = lean_nat_sub(x_3, x_9); -lean_dec(x_3); -x_11 = lean_array_fget(x_2, x_4); -x_12 = lean_nat_add(x_4, x_9); -lean_dec(x_4); -lean_inc(x_12); -x_13 = l___private_Init_Data_Repr_0__Nat_reprFast(x_12); -x_14 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1; -x_15 = lean_string_append(x_14, x_13); -lean_dec(x_13); -x_16 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3; -x_17 = lean_string_append(x_15, x_16); -x_18 = lean_box(0); -x_19 = l_Lean_Name_str___override(x_18, x_17); -x_20 = lean_alloc_closure((void*)(l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1___boxed), 7, 1); -lean_closure_set(x_20, 0, x_11); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -x_22 = lean_array_push(x_6, x_21); -x_3 = x_10; -x_4 = x_12; -x_5 = lean_box(0); -x_6 = x_22; +lean_object* x_15; lean_object* x_16; size_t x_17; size_t x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = 1; +x_18 = lean_usize_add(x_2, x_17); +x_19 = lean_array_uset(x_13, x_2, x_15); +x_2 = x_18; +x_3 = x_19; +x_8 = x_16; goto _start; } else { -lean_dec(x_4); -lean_dec(x_3); -return x_6; +uint8_t x_21; +lean_dec(x_13); +x_21 = !lean_is_exclusive(x_14); +if (x_21 == 0) +{ +return x_14; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_14, 0); +x_23 = lean_ctor_get(x_14, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_14); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} } } } @@ -56184,21 +56238,115 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6(size_t x_1, size_t x_2, lean_object* x_3) { _start: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; size_t x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; -x_10 = lean_array_get_size(x_4); -x_11 = lean_unsigned_to_nat(0u); -lean_inc(x_4); -x_12 = l_Array_toSubarray___rarg(x_4, x_11, x_10); -x_13 = lean_box(0); -x_14 = lean_array_size(x_1); -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__4(x_1, x_13, x_1, x_14, x_2, x_12, x_5, x_6, x_7, x_8, x_9); +uint8_t x_4; +x_4 = lean_usize_dec_lt(x_2, x_1); +if (x_4 == 0) +{ +return x_3; +} +else +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; size_t x_8; size_t x_9; uint8_t x_10; +x_5 = lean_array_uget(x_3, x_2); +x_6 = lean_unsigned_to_nat(0u); +x_7 = lean_array_uset(x_3, x_2, x_6); +x_8 = 1; +x_9 = lean_usize_add(x_2, x_8); +x_10 = !lean_is_exclusive(x_5); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_5, 1); +x_12 = lean_alloc_closure((void*)(l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1___lambda__1___boxed), 7, 1); +lean_closure_set(x_12, 0, x_11); +lean_ctor_set(x_5, 1, x_12); +x_13 = lean_array_uset(x_7, x_2, x_5); +x_2 = x_9; +x_3 = x_13; +goto _start; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_5, 0); +x_16 = lean_ctor_get(x_5, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_5); +x_17 = lean_alloc_closure((void*)(l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1___lambda__1___boxed), 7, 1); +lean_closure_set(x_17, 0, x_16); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_15); +lean_ctor_set(x_18, 1, x_17); +x_19 = lean_array_uset(x_7, x_2, x_18); +x_2 = x_9; +x_3 = x_19; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +size_t x_9; size_t x_10; lean_object* x_11; lean_object* x_12; +x_9 = lean_array_size(x_2); +x_10 = 0; +x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6(x_9, x_10, x_2); +x_12 = l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(x_1, x_11, x_3, x_4, x_5, x_6, x_7, x_8); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5___rarg), 8, 0); +return x_2; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("case", 4, 4); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_2 = lean_unsigned_to_nat(1u); +x_3 = lean_nat_add(x_1, x_2); +x_4 = l___private_Init_Data_Repr_0__Nat_reprFast(x_3); +x_5 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1; +x_6 = lean_string_append(x_5, x_4); +lean_dec(x_4); +x_7 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3; +x_8 = lean_string_append(x_6, x_7); +x_9 = lean_box(0); +x_10 = l_Lean_Name_str___override(x_9, x_8); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; +x_11 = lean_array_get_size(x_5); +x_12 = lean_unsigned_to_nat(0u); +lean_inc(x_5); +x_13 = l_Array_toSubarray___rarg(x_5, x_12, x_11); +x_14 = lean_box(0); +x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__4(x_1, x_14, x_1, x_2, x_3, x_13, x_6, x_7, x_8, x_9, x_10); x_16 = lean_ctor_get(x_15, 1); lean_inc(x_16); lean_dec(x_15); -x_17 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_3, x_5, x_6, x_7, x_8, x_16); +x_17 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_4, x_6, x_7, x_8, x_9, x_16); x_18 = lean_ctor_get(x_17, 0); lean_inc(x_18); x_19 = lean_ctor_get(x_17, 1); @@ -56207,30 +56355,84 @@ lean_dec(x_17); x_20 = 0; x_21 = 1; x_22 = 1; -x_23 = l_Lean_Meta_mkLambdaFVars(x_4, x_18, x_20, x_21, x_20, x_22, x_5, x_6, x_7, x_8, x_19); -lean_dec(x_4); +x_23 = l_Lean_Meta_mkLambdaFVars(x_5, x_18, x_20, x_21, x_20, x_22, x_6, x_7, x_8, x_9, x_19); +lean_dec(x_5); return x_23; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1() { _start: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(lean_object* x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; size_t x_13; lean_object* x_14; x_10 = lean_array_get_size(x_1); -x_11 = lean_mk_empty_array_with_capacity(x_10); -x_12 = lean_unsigned_to_nat(0u); -x_13 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(x_1, x_1, x_10, x_12, lean_box(0), x_11); -x_14 = lean_box_usize(x_2); -x_15 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed), 9, 3); -lean_closure_set(x_15, 0, x_1); -lean_closure_set(x_15, 1, x_14); -lean_closure_set(x_15, 2, x_3); -x_16 = l_Lean_instInhabitedExpr; -x_17 = l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(x_16, x_13, x_15, x_5, x_6, x_7, x_8, x_9); -return x_17; +x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1; +x_12 = l_Array_ofFn___rarg(x_10, x_11); +lean_dec(x_10); +x_13 = lean_array_size(x_1); +lean_inc(x_1); +x_14 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(x_13, x_2, x_1, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Array_zip___rarg(x_12, x_15); +lean_dec(x_15); +lean_dec(x_12); +x_18 = lean_box_usize(x_13); +x_19 = lean_box_usize(x_2); +x_20 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2___boxed), 10, 4); +lean_closure_set(x_20, 0, x_1); +lean_closure_set(x_20, 1, x_18); +lean_closure_set(x_20, 2, x_19); +lean_closure_set(x_20, 3, x_3); +x_21 = l_Lean_instInhabitedExpr; +x_22 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5___rarg(x_21, x_17, x_20, x_5, x_6, x_7, x_8, x_16); +return x_22; +} +else +{ +uint8_t x_23; +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_23 = !lean_is_exclusive(x_14); +if (x_23 == 0) +{ +return x_14; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_14, 0); +x_25 = lean_ctor_get(x_14, 1); +lean_inc(x_25); +lean_inc(x_24); +lean_dec(x_14); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } -static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1() { +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -56238,16 +56440,16 @@ x_1 = lean_mk_string_unchecked("abstractIndependentMVars, reverted mvars: ", 42, return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1; +x_1 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { size_t x_11; size_t x_12; lean_object* x_13; @@ -56280,7 +56482,7 @@ x_19 = lean_ctor_get(x_16, 1); lean_inc(x_19); lean_dec(x_16); x_20 = lean_box(0); -x_21 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(x_14, x_12, x_4, x_20, x_6, x_7, x_8, x_9, x_19); +x_21 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_14, x_12, x_4, x_20, x_6, x_7, x_8, x_9, x_19); return x_21; } else @@ -56298,7 +56500,7 @@ x_25 = lean_array_to_list(x_14); x_26 = lean_box(0); x_27 = l_List_mapTR_loop___at_Lean_Elab_goalsToMessageData___spec__1(x_25, x_26); x_28 = l_Lean_MessageData_ofList(x_27); -x_29 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2; +x_29 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2; lean_ctor_set_tag(x_16, 7); lean_ctor_set(x_16, 1, x_28); lean_ctor_set(x_16, 0, x_29); @@ -56312,7 +56514,7 @@ lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); lean_dec(x_32); -x_35 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(x_14, x_12, x_4, x_33, x_6, x_7, x_8, x_9, x_34); +x_35 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_14, x_12, x_4, x_33, x_6, x_7, x_8, x_9, x_34); lean_dec(x_33); return x_35; } @@ -56327,7 +56529,7 @@ x_37 = lean_array_to_list(x_14); x_38 = lean_box(0); x_39 = l_List_mapTR_loop___at_Lean_Elab_goalsToMessageData___spec__1(x_37, x_38); x_40 = l_Lean_MessageData_ofList(x_39); -x_41 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2; +x_41 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2; x_42 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_42, 0, x_41); lean_ctor_set(x_42, 1, x_40); @@ -56341,7 +56543,7 @@ lean_inc(x_46); x_47 = lean_ctor_get(x_45, 1); lean_inc(x_47); lean_dec(x_45); -x_48 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(x_14, x_12, x_4, x_46, x_6, x_7, x_8, x_9, x_47); +x_48 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_14, x_12, x_4, x_46, x_6, x_7, x_8, x_9, x_47); lean_dec(x_46); return x_48; } @@ -56428,7 +56630,7 @@ x_13 = lean_ctor_get(x_10, 1); lean_inc(x_13); lean_dec(x_10); x_14 = lean_box(0); -x_15 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_1, x_2, x_9, x_3, x_14, x_4, x_5, x_6, x_7, x_13); +x_15 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(x_1, x_2, x_9, x_3, x_14, x_4, x_5, x_6, x_7, x_13); return x_15; } else @@ -56472,7 +56674,7 @@ lean_inc(x_33); x_34 = lean_ctor_get(x_32, 1); lean_inc(x_34); lean_dec(x_32); -x_35 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_1, x_2, x_9, x_3, x_33, x_4, x_5, x_6, x_7, x_34); +x_35 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(x_1, x_2, x_9, x_3, x_33, x_4, x_5, x_6, x_7, x_34); lean_dec(x_33); return x_35; } @@ -56513,7 +56715,7 @@ lean_inc(x_52); x_53 = lean_ctor_get(x_51, 1); lean_inc(x_53); lean_dec(x_51); -x_54 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_1, x_2, x_9, x_3, x_52, x_4, x_5, x_6, x_7, x_53); +x_54 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(x_1, x_2, x_9, x_3, x_52, x_4, x_5, x_6, x_7, x_53); lean_dec(x_52); return x_54; } @@ -56541,27 +56743,20 @@ x_12 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars__ return x_12; } } -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -lean_object* x_8; -x_8 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +size_t x_9; size_t x_10; lean_object* x_11; +x_9 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_10 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_2); -lean_dec(x_1); -return x_7; +return x_11; } } LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { @@ -56595,37 +56790,60 @@ lean_dec(x_1); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -size_t x_10; lean_object* x_11; -x_10 = lean_unbox_usize(x_2); +size_t x_4; size_t x_5; lean_object* x_6; +x_4 = lean_unbox_usize(x_1); +lean_dec(x_1); +x_5 = lean_unbox_usize(x_2); lean_dec(x_2); -x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_6 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__6(x_4, x_5, x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1(x_1); +lean_dec(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +size_t x_11; size_t x_12; lean_object* x_13; +x_11 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_12 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_13 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(x_1, x_11, x_12, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_5); lean_dec(x_1); -return x_11; +return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { size_t x_10; lean_object* x_11; x_10 = lean_unbox_usize(x_2); lean_dec(x_2); -x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__2(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_1, x_10, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_4); return x_11; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_5); return x_11; } @@ -59894,7 +60112,7 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -x_17 = l_Lean_Meta_PProdN_proj(x_3, x_4, x_16, x_7, x_8, x_9, x_10, x_11); +x_17 = l_Lean_Meta_PProdN_projM(x_3, x_4, x_16, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_17) == 0) { lean_object* x_18; lean_object* x_19; uint8_t x_20; uint8_t x_21; uint8_t x_22; lean_object* x_23; @@ -64502,74 +64720,6 @@ return x_16; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_stripPProdProjs(lean_object* x_1) { -_start: -{ -if (lean_obj_tag(x_1) == 11) -{ -lean_object* x_2; -x_2 = lean_ctor_get(x_1, 0); -if (lean_obj_tag(x_2) == 1) -{ -lean_object* x_3; -x_3 = lean_ctor_get(x_2, 0); -if (lean_obj_tag(x_3) == 0) -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; -x_4 = lean_ctor_get(x_1, 2); -x_5 = lean_ctor_get(x_2, 1); -x_6 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__8; -x_7 = lean_string_dec_eq(x_5, x_6); -if (x_7 == 0) -{ -lean_object* x_8; uint8_t x_9; -x_8 = l_Lean_Tactic_FunInd_buildInductionBody___lambda__9___closed__1; -x_9 = lean_string_dec_eq(x_5, x_8); -if (x_9 == 0) -{ -lean_inc(x_1); -return x_1; -} -else -{ -x_1 = x_4; -goto _start; -} -} -else -{ -x_1 = x_4; -goto _start; -} -} -else -{ -lean_inc(x_1); -return x_1; -} -} -else -{ -lean_inc(x_1); -return x_1; -} -} -else -{ -lean_inc(x_1); -return x_1; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_stripPProdProjs___boxed(lean_object* x_1) { -_start: -{ -lean_object* x_2; -x_2 = l_Lean_Tactic_FunInd_stripPProdProjs(x_1); -lean_dec(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_withLetDecls_go___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { @@ -64748,7 +64898,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; x_2 = l_Lean_Tactic_FunInd_withLetDecls___rarg___closed__3; -x_3 = lean_unsigned_to_nat(886u); +x_3 = lean_unsigned_to_nat(880u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_Tactic_FunInd_withLetDecls___rarg___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -66148,86 +66298,7 @@ return x_35; } } } -static lean_object* _init_l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("motive_", 7, 7); -return x_1; -} -} -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; uint8_t x_14; -x_13 = lean_unsigned_to_nat(0u); -x_14 = lean_nat_dec_eq(x_4, x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; -x_15 = lean_unsigned_to_nat(1u); -x_16 = lean_nat_sub(x_4, x_15); -lean_dec(x_4); -x_17 = lean_array_fget(x_3, x_5); -x_18 = lean_array_get_size(x_1); -x_19 = lean_nat_dec_eq(x_18, x_15); -lean_dec(x_18); -x_20 = lean_alloc_closure((void*)(l_Lean_PersistentArray_forIn___at_Lean_Tactic_FunInd_cleanupAfter_allHeqToEq___spec__1___lambda__1___boxed), 7, 1); -lean_closure_set(x_20, 0, x_17); -if (x_19 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_21 = lean_nat_add(x_5, x_15); -lean_dec(x_5); -lean_inc(x_21); -x_22 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); -x_23 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1; -x_24 = lean_string_append(x_23, x_22); -lean_dec(x_22); -x_25 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3; -x_26 = lean_string_append(x_24, x_25); -x_27 = lean_box(0); -x_28 = l_Lean_Name_str___override(x_27, x_26); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_20); -x_30 = lean_array_push(x_7, x_29); -x_4 = x_16; -x_5 = x_21; -x_6 = lean_box(0); -x_7 = x_30; -goto _start; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_32 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___closed__2; -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_20); -x_34 = lean_nat_add(x_5, x_15); -lean_dec(x_5); -x_35 = lean_array_push(x_7, x_33); -x_4 = x_16; -x_5 = x_34; -x_6 = lean_box(0); -x_7 = x_35; -goto _start; -} -} -else -{ -lean_object* x_37; -lean_dec(x_5); -lean_dec(x_4); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_7); -lean_ctor_set(x_37, 1, x_12); -return x_37; -} -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { uint8_t x_5; @@ -66263,7 +66334,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; uint8_t x_15; uint8_t x_16; lean_object* x_17; @@ -66316,7 +66387,7 @@ return x_24; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -66358,7 +66429,7 @@ lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); lean_inc(x_18); lean_dec(x_16); -x_19 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1___boxed), 9, 2); +x_19 = lean_alloc_closure((void*)(l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1___boxed), 9, 2); lean_closure_set(x_19, 0, x_15); lean_closure_set(x_19, 1, x_14); x_20 = 0; @@ -66443,7 +66514,7 @@ return x_35; } } } -static lean_object* _init_l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1() { +static lean_object* _init_l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -66453,17 +66524,17 @@ x_3 = l_instInhabitedOfMonad___rarg(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1; +x_7 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1; x_8 = lean_panic_fn(x_7, x_1); x_9 = lean_apply_5(x_8, x_2, x_3, x_4, x_5, x_6); return x_9; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6) { _start: { uint8_t x_7; @@ -66506,7 +66577,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { uint8_t x_13; @@ -66539,7 +66610,7 @@ lean_dec(x_15); x_20 = lean_array_size(x_19); x_21 = 0; lean_inc(x_1); -x_22 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(x_1, x_3, x_4, x_20, x_21, x_19); +x_22 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(x_1, x_3, x_4, x_20, x_21, x_19); lean_inc(x_2); lean_inc(x_11); lean_inc(x_10); @@ -66594,7 +66665,7 @@ return x_33; } } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1() { _start: { lean_object* x_1; @@ -66602,17 +66673,17 @@ x_1 = lean_mk_string_unchecked("positions.size = ys.size\n ", 27, 27); return x_1; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__4; -x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1; +x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3() { _start: { lean_object* x_1; @@ -66620,20 +66691,20 @@ x_1 = lean_mk_string_unchecked("Lean.Elab.Structural.Positions.mapMwith", 39, 39 return x_1; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__4; -x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3; +x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3; x_3 = lean_unsigned_to_nat(86u); x_4 = lean_unsigned_to_nat(2u); -x_5 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2; +x_5 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5() { _start: { lean_object* x_1; @@ -66641,30 +66712,30 @@ x_1 = lean_mk_string_unchecked("positions.numIndices = xs.size\n ", 33, 33); return x_1; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__4; -x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5; +x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7() { +static lean_object* _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__4; -x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3; +x_2 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3; x_3 = lean_unsigned_to_nat(87u); x_4 = lean_unsigned_to_nat(2u); -x_5 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6; +x_5 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -66678,8 +66749,8 @@ if (x_13 == 0) lean_object* x_14; lean_object* x_15; lean_dec(x_2); lean_dec(x_1); -x_14 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4; -x_15 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(x_14, x_6, x_7, x_8, x_9, x_10); +x_14 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4; +x_15 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(x_14, x_6, x_7, x_8, x_9, x_10); return x_15; } else @@ -66695,8 +66766,8 @@ lean_object* x_19; lean_object* x_20; lean_dec(x_17); lean_dec(x_2); lean_dec(x_1); -x_19 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7; -x_20 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(x_19, x_6, x_7, x_8, x_9, x_10); +x_19 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7; +x_20 = l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(x_19, x_6, x_7, x_8, x_9, x_10); return x_20; } else @@ -66705,14 +66776,14 @@ lean_object* x_21; size_t x_22; size_t x_23; lean_object* x_24; x_21 = l_Array_zip___rarg(x_4, x_3); x_22 = lean_array_size(x_21); x_23 = 0; -x_24 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(x_1, x_2, x_5, x_17, x_22, x_23, x_21, x_6, x_7, x_8, x_9, x_10); +x_24 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(x_1, x_2, x_5, x_17, x_22, x_23, x_21, x_6, x_7, x_8, x_9, x_10); lean_dec(x_17); return x_24; } } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { lean_object* x_16; lean_object* x_17; lean_object* x_18; @@ -67077,7 +67148,7 @@ return x_99; } } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1() { _start: { lean_object* x_1; @@ -67085,16 +67156,16 @@ x_1 = lean_mk_string_unchecked("replacing ", 10, 10); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3() { _start: { lean_object* x_1; @@ -67102,16 +67173,16 @@ x_1 = lean_mk_string_unchecked(" with ", 6, 6); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; @@ -67139,7 +67210,7 @@ x_23 = lean_ctor_get(x_18, 1); lean_inc(x_23); lean_dec(x_18); x_24 = lean_box(0); -x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_24, x_23, x_22, x_11, x_12, x_13, x_14, x_21); +x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_24, x_23, x_22, x_11, x_12, x_13, x_14, x_21); return x_25; } else @@ -67169,11 +67240,11 @@ lean_dec(x_34); lean_inc(x_7); x_35 = l_Lean_Expr_fvar___override(x_7); x_36 = l_Lean_MessageData_ofExpr(x_35); -x_37 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; +x_37 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2; lean_ctor_set_tag(x_18, 7); lean_ctor_set(x_18, 1, x_36); lean_ctor_set(x_18, 0, x_37); -x_38 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4; +x_38 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4; lean_ctor_set_tag(x_17, 7); lean_ctor_set(x_17, 1, x_38); lean_inc(x_3); @@ -67200,7 +67271,7 @@ lean_inc(x_47); x_48 = lean_ctor_get(x_44, 1); lean_inc(x_48); lean_dec(x_44); -x_49 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_47, x_48, x_46, x_11, x_12, x_13, x_14, x_45); +x_49 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_47, x_48, x_46, x_11, x_12, x_13, x_14, x_45); lean_dec(x_47); return x_49; } @@ -67213,11 +67284,11 @@ lean_dec(x_18); lean_inc(x_7); x_51 = l_Lean_Expr_fvar___override(x_7); x_52 = l_Lean_MessageData_ofExpr(x_51); -x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; +x_53 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2; x_54 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_54, 0, x_53); lean_ctor_set(x_54, 1, x_52); -x_55 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4; +x_55 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4; lean_ctor_set_tag(x_17, 7); lean_ctor_set(x_17, 1, x_55); lean_ctor_set(x_17, 0, x_54); @@ -67245,7 +67316,7 @@ lean_inc(x_64); x_65 = lean_ctor_get(x_61, 1); lean_inc(x_65); lean_dec(x_61); -x_66 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_64, x_65, x_63, x_11, x_12, x_13, x_14, x_62); +x_66 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_64, x_65, x_63, x_11, x_12, x_13, x_14, x_62); lean_dec(x_64); return x_66; } @@ -67269,7 +67340,7 @@ if (lean_is_exclusive(x_18)) { lean_inc(x_7); x_70 = l_Lean_Expr_fvar___override(x_7); x_71 = l_Lean_MessageData_ofExpr(x_70); -x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; +x_72 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2; if (lean_is_scalar(x_69)) { x_73 = lean_alloc_ctor(7, 2, 0); } else { @@ -67278,7 +67349,7 @@ if (lean_is_scalar(x_69)) { } lean_ctor_set(x_73, 0, x_72); lean_ctor_set(x_73, 1, x_71); -x_74 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4; +x_74 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4; x_75 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_75, 0, x_73); lean_ctor_set(x_75, 1, x_74); @@ -67307,7 +67378,7 @@ lean_inc(x_84); x_85 = lean_ctor_get(x_81, 1); lean_inc(x_85); lean_dec(x_81); -x_86 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_84, x_85, x_83, x_11, x_12, x_13, x_14, x_82); +x_86 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_84, x_85, x_83, x_11, x_12, x_13, x_14, x_82); lean_dec(x_84); return x_86; } @@ -67341,7 +67412,7 @@ if (lean_is_exclusive(x_18)) { lean_inc(x_7); x_92 = l_Lean_Expr_fvar___override(x_7); x_93 = l_Lean_MessageData_ofExpr(x_92); -x_94 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; +x_94 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2; if (lean_is_scalar(x_91)) { x_95 = lean_alloc_ctor(7, 2, 0); } else { @@ -67350,7 +67421,7 @@ if (lean_is_scalar(x_91)) { } lean_ctor_set(x_95, 0, x_94); lean_ctor_set(x_95, 1, x_93); -x_96 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4; +x_96 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4; if (lean_is_scalar(x_89)) { x_97 = lean_alloc_ctor(7, 2, 0); } else { @@ -67384,14 +67455,14 @@ lean_inc(x_107); x_108 = lean_ctor_get(x_104, 1); lean_inc(x_108); lean_dec(x_104); -x_109 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_107, x_108, x_106, x_11, x_12, x_13, x_14, x_105); +x_109 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_2, x_8, x_3, x_4, x_7, x_5, x_6, x_107, x_108, x_106, x_11, x_12, x_13, x_14, x_105); lean_dec(x_107); return x_109; } } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; @@ -67443,7 +67514,7 @@ lean_inc(x_26); x_27 = lean_ctor_get(x_24, 1); lean_inc(x_27); lean_dec(x_24); -x_28 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed), 15, 6); +x_28 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___boxed), 15, 6); lean_closure_set(x_28, 0, x_4); lean_closure_set(x_28, 1, x_23); lean_closure_set(x_28, 2, x_25); @@ -67490,7 +67561,7 @@ return x_33; } } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1() { _start: { lean_object* x_1; @@ -67498,16 +67569,16 @@ x_1 = lean_mk_string_unchecked(".brecOn argument has too few parameters, expecte return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3() { _start: { lean_object* x_1; @@ -67515,16 +67586,16 @@ x_1 = lean_mk_string_unchecked(": ", 2, 2); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { lean_object* x_14; uint8_t x_15; @@ -67542,11 +67613,11 @@ x_16 = l___private_Init_Data_Repr_0__Nat_reprFast(x_1); x_17 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_17, 0, x_16); x_18 = l_Lean_MessageData_ofFormat(x_17); -x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2; +x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2; x_20 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_20, 0, x_19); lean_ctor_set(x_20, 1, x_18); -x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4; +x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4; x_22 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_22, 0, x_20); lean_ctor_set(x_22, 1, x_21); @@ -67591,12 +67662,12 @@ else { lean_object* x_35; lean_object* x_36; x_35 = lean_box(0); -x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3(x_5, x_1, x_2, x_3, x_6, x_4, x_35, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_36 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3(x_5, x_1, x_2, x_3, x_6, x_4, x_35, x_7, x_8, x_9, x_10, x_11, x_12, x_13); return x_36; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { uint8_t x_16; @@ -67733,7 +67804,7 @@ lean_dec(x_72); lean_ctor_set(x_52, 1, x_83); lean_inc(x_3); lean_inc(x_2); -x_84 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_84 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_84, 0, x_68); lean_closure_set(x_84, 1, x_20); lean_closure_set(x_84, 2, x_2); @@ -67879,7 +67950,7 @@ lean_ctor_set(x_115, 1, x_114); lean_ctor_set(x_115, 2, x_73); lean_inc(x_3); lean_inc(x_2); -x_116 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_116 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_116, 0, x_68); lean_closure_set(x_116, 1, x_20); lean_closure_set(x_116, 2, x_2); @@ -68048,7 +68119,7 @@ lean_ctor_set(x_149, 1, x_148); lean_ctor_set(x_149, 2, x_141); lean_inc(x_3); lean_inc(x_2); -x_150 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_150 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_150, 0, x_135); lean_closure_set(x_150, 1, x_20); lean_closure_set(x_150, 2, x_2); @@ -68270,7 +68341,7 @@ lean_ctor_set(x_194, 1, x_193); lean_ctor_set(x_194, 2, x_185); lean_inc(x_3); lean_inc(x_2); -x_195 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_195 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_195, 0, x_179); lean_closure_set(x_195, 1, x_20); lean_closure_set(x_195, 2, x_2); @@ -68515,7 +68586,7 @@ lean_ctor_set(x_244, 1, x_243); lean_ctor_set(x_244, 2, x_234); lean_inc(x_3); lean_inc(x_2); -x_245 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_245 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_245, 0, x_228); lean_closure_set(x_245, 1, x_20); lean_closure_set(x_245, 2, x_2); @@ -68742,7 +68813,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(lean_object* x_1) { _start: { lean_object* x_2; @@ -68750,25 +68821,25 @@ x_2 = lean_box(0); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1___boxed), 1, 0); +x_1 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1___boxed), 1, 0); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1; x_2 = lean_box(0); x_3 = lean_apply_1(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -68781,7 +68852,7 @@ if (lean_obj_tag(x_8) == 0) lean_object* x_9; lean_dec(x_5); lean_dec(x_4); -x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_9 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; return x_9; } else @@ -68811,7 +68882,7 @@ lean_free_object(x_8); lean_dec(x_11); lean_dec(x_5); lean_dec(x_4); -x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; return x_18; } else @@ -68863,7 +68934,7 @@ lean_free_object(x_8); lean_dec(x_11); lean_dec(x_5); lean_dec(x_4); -x_32 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_32 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; return x_32; } else @@ -68926,7 +68997,7 @@ lean_dec(x_45); lean_dec(x_44); lean_dec(x_5); lean_dec(x_4); -x_51 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_51 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; return x_51; } else @@ -68979,7 +69050,7 @@ lean_dec(x_45); lean_dec(x_44); lean_dec(x_5); lean_dec(x_4); -x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_67 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; return x_67; } else @@ -69023,7 +69094,7 @@ return x_80; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { _start: { lean_object* x_19; uint8_t x_20; @@ -69031,7 +69102,7 @@ lean_inc(x_1); lean_inc(x_4); lean_inc(x_2); lean_inc(x_3); -x_19 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___boxed), 5, 4); +x_19 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed), 5, 4); lean_closure_set(x_19, 0, x_3); lean_closure_set(x_19, 1, x_2); lean_closure_set(x_19, 2, x_4); @@ -69174,7 +69245,7 @@ x_87 = lean_nat_add(x_76, x_73); lean_dec(x_76); lean_ctor_set(x_56, 1, x_87); lean_inc(x_6); -x_88 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_88 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_88, 0, x_72); lean_closure_set(x_88, 1, x_24); lean_closure_set(x_88, 2, x_6); @@ -69322,7 +69393,7 @@ lean_ctor_set(x_119, 0, x_75); lean_ctor_set(x_119, 1, x_118); lean_ctor_set(x_119, 2, x_77); lean_inc(x_6); -x_120 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_120 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_120, 0, x_72); lean_closure_set(x_120, 1, x_24); lean_closure_set(x_120, 2, x_6); @@ -69494,7 +69565,7 @@ lean_ctor_set(x_153, 0, x_143); lean_ctor_set(x_153, 1, x_152); lean_ctor_set(x_153, 2, x_145); lean_inc(x_6); -x_154 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_154 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_154, 0, x_139); lean_closure_set(x_154, 1, x_24); lean_closure_set(x_154, 2, x_6); @@ -69720,7 +69791,7 @@ lean_ctor_set(x_198, 0, x_187); lean_ctor_set(x_198, 1, x_197); lean_ctor_set(x_198, 2, x_189); lean_inc(x_6); -x_199 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_199 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_199, 0, x_183); lean_closure_set(x_199, 1, x_24); lean_closure_set(x_199, 2, x_6); @@ -69969,7 +70040,7 @@ lean_ctor_set(x_248, 0, x_236); lean_ctor_set(x_248, 1, x_247); lean_ctor_set(x_248, 2, x_238); lean_inc(x_6); -x_249 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4), 13, 4); +x_249 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4), 13, 4); lean_closure_set(x_249, 0, x_232); lean_closure_set(x_249, 1, x_24); lean_closure_set(x_249, 2, x_6); @@ -70202,7 +70273,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -70247,7 +70318,7 @@ return x_18; } } } -LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -70255,7 +70326,7 @@ x_3 = l_Array_contains___at_Lean_Meta_addImplicitTargets_collect___spec__1(x_2, return x_3; } } -LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -70263,7 +70334,7 @@ x_3 = lean_nat_dec_eq(x_2, x_1); return x_3; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1() { _start: { lean_object* x_1; @@ -70271,7 +70342,7 @@ x_1 = lean_mk_string_unchecked("Lean.Tactic.FunInd.deriveInductionStructural", 4 return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2() { _start: { lean_object* x_1; @@ -70279,33 +70350,33 @@ x_1 = lean_mk_string_unchecked("invalid positions", 17, 17); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(1047u); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; +x_3 = lean_unsigned_to_nat(1039u); x_4 = lean_unsigned_to_nat(73u); -x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2; +x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(1049u); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; +x_3 = lean_unsigned_to_nat(1041u); x_4 = lean_unsigned_to_nat(62u); -x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2; +x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5() { _start: { lean_object* x_1; @@ -70313,29 +70384,29 @@ x_1 = lean_mk_string_unchecked("assembled call for ", 19, 19); return x_1; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5; +x_1 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7() { +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(1048u); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; +x_3 = lean_unsigned_to_nat(1040u); x_4 = lean_unsigned_to_nat(67u); -x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2; +x_5 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, size_t x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { _start: { lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; @@ -70353,7 +70424,7 @@ if (lean_is_exclusive(x_18)) { x_21 = lean_box(0); } lean_inc(x_2); -x_22 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1___boxed), 2, 1); +x_22 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1___boxed), 2, 1); lean_closure_set(x_22, 0, x_2); x_23 = lean_unsigned_to_nat(0u); x_24 = l_Array_findIdx_x3f_loop___rarg(x_22, x_3, x_23); @@ -70368,7 +70439,7 @@ lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3; +x_25 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3; x_26 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_25, x_13, x_14, x_15, x_16, x_17); return x_26; } @@ -70381,14 +70452,14 @@ lean_dec(x_24); x_81 = lean_box(0); x_82 = lean_array_size(x_3); x_83 = l_Lean_Tactic_FunInd_cleanupAfter_cleanupAfter_x3f___lambda__1___closed__1; -x_84 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(x_3, x_2, x_81, x_83, x_3, x_82, x_10, x_83); +x_84 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(x_3, x_2, x_81, x_83, x_3, x_82, x_10, x_83); x_85 = lean_ctor_get(x_84, 0); lean_inc(x_85); lean_dec(x_84); if (lean_obj_tag(x_85) == 0) { lean_object* x_86; -x_86 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2; +x_86 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2; if (lean_obj_tag(x_86) == 0) { lean_object* x_87; lean_object* x_88; @@ -70401,7 +70472,7 @@ lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_87 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7; +x_87 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7; x_88 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_87, x_13, x_14, x_15, x_16, x_17); return x_88; } @@ -70432,7 +70503,7 @@ lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_91 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7; +x_91 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7; x_92 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_91, x_13, x_14, x_15, x_16, x_17); return x_92; } @@ -70449,7 +70520,7 @@ goto block_80; block_80: { lean_object* x_29; lean_object* x_30; -x_29 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2___boxed), 2, 1); +x_29 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2___boxed), 2, 1); lean_closure_set(x_29, 0, x_2); x_30 = l_Array_findIdx_x3f_loop___rarg(x_29, x_28, x_23); if (lean_obj_tag(x_30) == 0) @@ -70464,7 +70535,7 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); -x_31 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4; +x_31 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4; x_32 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_31, x_13, x_14, x_15, x_16, x_17); return x_32; } @@ -70487,7 +70558,7 @@ lean_inc(x_16); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); -x_40 = l_Lean_Meta_PProdN_proj(x_39, x_33, x_38, x_13, x_14, x_15, x_16, x_17); +x_40 = l_Lean_Meta_PProdN_projM(x_39, x_33, x_38, x_13, x_14, x_15, x_16, x_17); lean_dec(x_39); if (lean_obj_tag(x_40) == 0) { @@ -70557,7 +70628,7 @@ x_57 = lean_ctor_get(x_9, 0); lean_inc(x_57); lean_dec(x_9); x_58 = l_Lean_MessageData_ofName(x_57); -x_59 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6; +x_59 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6; if (lean_is_scalar(x_21)) { x_60 = lean_alloc_ctor(7, 2, 0); } else { @@ -70566,7 +70637,7 @@ if (lean_is_scalar(x_21)) { } lean_ctor_set(x_60, 0, x_59); lean_ctor_set(x_60, 1, x_58); -x_61 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4; +x_61 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4; x_62 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_62, 0, x_60); lean_ctor_set(x_62, 1, x_61); @@ -70671,7 +70742,7 @@ return x_79; } } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, size_t x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(size_t x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, size_t x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { _start: { uint8_t x_20; @@ -70848,7 +70919,7 @@ lean_inc(x_8); lean_inc(x_4); lean_inc(x_5); lean_inc(x_6); -x_79 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed), 17, 10); +x_79 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed), 17, 10); lean_closure_set(x_79, 0, x_59); lean_closure_set(x_79, 1, x_40); lean_closure_set(x_79, 2, x_6); @@ -71112,7 +71183,7 @@ lean_inc(x_8); lean_inc(x_4); lean_inc(x_5); lean_inc(x_6); -x_122 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed), 17, 10); +x_122 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed), 17, 10); lean_closure_set(x_122, 0, x_101); lean_closure_set(x_122, 1, x_40); lean_closure_set(x_122, 2, x_6); @@ -71430,7 +71501,7 @@ lean_inc(x_8); lean_inc(x_4); lean_inc(x_5); lean_inc(x_6); -x_173 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed), 17, 10); +x_173 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed), 17, 10); lean_closure_set(x_173, 0, x_152); lean_closure_set(x_173, 1, x_40); lean_closure_set(x_173, 2, x_6); @@ -71795,7 +71866,7 @@ lean_inc(x_8); lean_inc(x_4); lean_inc(x_5); lean_inc(x_6); -x_233 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed), 17, 10); +x_233 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed), 17, 10); lean_closure_set(x_233, 0, x_212); lean_closure_set(x_233, 1, x_196); lean_closure_set(x_233, 2, x_6); @@ -72180,7 +72251,7 @@ lean_inc(x_8); lean_inc(x_4); lean_inc(x_5); lean_inc(x_6); -x_298 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed), 17, 10); +x_298 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed), 17, 10); lean_closure_set(x_298, 0, x_277); lean_closure_set(x_298, 1, x_259); lean_closure_set(x_298, 2, x_6); @@ -72429,6 +72500,44 @@ goto _start; } } } +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +x_6 = lean_usize_dec_eq(x_3, x_4); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; size_t x_11; size_t x_12; +x_7 = lean_array_uget(x_2, x_3); +x_8 = lean_ctor_get(x_7, 1); +lean_inc(x_8); +x_9 = l_Lean_Expr_fvarId_x21(x_8); +lean_dec(x_8); +x_10 = l_Array_contains___at___private_Lean_Class_0__Lean_checkOutParam___spec__1(x_1, x_9); +lean_dec(x_9); +x_11 = 1; +x_12 = lean_usize_add(x_3, x_11); +if (x_10 == 0) +{ +lean_object* x_13; +x_13 = lean_array_push(x_5, x_7); +x_3 = x_12; +x_5 = x_13; +goto _start; +} +else +{ +lean_dec(x_7); +x_3 = x_12; +goto _start; +} +} +else +{ +return x_5; +} +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__21(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { _start: { @@ -72505,45 +72614,7 @@ return x_5; } } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5) { -_start: -{ -uint8_t x_6; -x_6 = lean_usize_dec_eq(x_3, x_4); -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; size_t x_11; size_t x_12; -x_7 = lean_array_uget(x_2, x_3); -x_8 = lean_ctor_get(x_7, 1); -lean_inc(x_8); -x_9 = l_Lean_Expr_fvarId_x21(x_8); -lean_dec(x_8); -x_10 = l_Array_contains___at___private_Lean_Class_0__Lean_checkOutParam___spec__1(x_1, x_9); -lean_dec(x_9); -x_11 = 1; -x_12 = lean_usize_add(x_3, x_11); -if (x_10 == 0) -{ -lean_object* x_13; -x_13 = lean_array_push(x_5, x_7); -x_3 = x_12; -x_5 = x_13; -goto _start; -} -else -{ -lean_dec(x_7); -x_3 = x_12; -goto _start; -} -} -else -{ -return x_5; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_object* x_15; uint8_t x_16; @@ -72592,7 +72663,7 @@ x_22 = 0; x_23 = lean_usize_of_nat(x_15); lean_dec(x_15); x_24 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; -x_25 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__21(x_1, x_10, x_22, x_23, x_24); +x_25 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(x_1, x_10, x_22, x_23, x_24); lean_dec(x_10); x_26 = l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(x_8, x_25, x_2, x_3, x_4, x_5, x_6, x_11); return x_26; @@ -72635,7 +72706,7 @@ x_33 = 0; x_34 = lean_usize_of_nat(x_15); lean_dec(x_15); x_35 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; -x_36 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__22(x_1, x_10, x_33, x_34, x_35); +x_36 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__21(x_1, x_10, x_33, x_34, x_35); lean_dec(x_10); x_37 = l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(x_8, x_36, x_2, x_3, x_4, x_5, x_6, x_11); return x_37; @@ -72677,7 +72748,7 @@ size_t x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; x_46 = lean_usize_of_nat(x_15); lean_dec(x_15); x_47 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; -x_48 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(x_1, x_10, x_38, x_46, x_47); +x_48 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__22(x_1, x_10, x_38, x_46, x_47); lean_dec(x_10); x_49 = l_Lean_Meta_withLCtx___at___private_Lean_Meta_Basic_0__Lean_Meta_mkLevelErrorMessageCore___spec__2___rarg(x_40, x_48, x_2, x_3, x_4, x_5, x_6, x_11); return x_49; @@ -72687,7 +72758,7 @@ return x_49; } } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(size_t x_1, size_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -72763,7 +72834,7 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_2) == 0) @@ -72839,7 +72910,43 @@ lean_inc(x_2); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("motive_", 7, 7); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_unsigned_to_nat(1u); +x_4 = lean_nat_dec_eq(x_1, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +x_5 = lean_nat_add(x_2, x_3); +x_6 = l___private_Init_Data_Repr_0__Nat_reprFast(x_5); +x_7 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1; +x_8 = lean_string_append(x_7, x_6); +lean_dec(x_6); +x_9 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__3; +x_10 = lean_string_append(x_8, x_9); +x_11 = lean_box(0); +x_12 = l_Lean_Name_str___override(x_11, x_10); +return x_12; +} +else +{ +lean_object* x_13; +x_13 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___closed__2; +return x_13; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -72916,31 +73023,30 @@ return x_24; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, size_t x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { _start: { -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_19 = lean_array_get_size(x_1); -x_20 = lean_unsigned_to_nat(0u); -x_21 = l_Array_toSubarray___rarg(x_1, x_20, x_19); -x_22 = lean_array_get_size(x_2); +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_20 = lean_array_get_size(x_1); +x_21 = lean_unsigned_to_nat(0u); +x_22 = l_Array_toSubarray___rarg(x_1, x_21, x_20); x_23 = lean_unsigned_to_nat(1u); x_24 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_24, 0, x_20); -lean_ctor_set(x_24, 1, x_22); +lean_ctor_set(x_24, 0, x_21); +lean_ctor_set(x_24, 1, x_2); lean_ctor_set(x_24, 2, x_23); x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_24); lean_ctor_set(x_25, 1, x_3); x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_21); +lean_ctor_set(x_26, 0, x_22); lean_ctor_set(x_26, 1, x_25); +lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); lean_inc(x_15); lean_inc(x_14); -lean_inc(x_13); -x_27 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(x_4, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_13, x_11, x_2, x_12, x_4, x_26, x_14, x_15, x_16, x_17, x_18); +x_27 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_14, x_12, x_5, x_13, x_4, x_26, x_15, x_16, x_17, x_18, x_19); if (lean_obj_tag(x_27) == 0) { lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; @@ -72956,11 +73062,11 @@ x_31 = lean_ctor_get(x_29, 1); lean_inc(x_31); lean_dec(x_29); x_32 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__13___closed__2; +lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); lean_inc(x_15); -lean_inc(x_14); -x_33 = l_Lean_Meta_PProdN_mk(x_32, x_31, x_14, x_15, x_16, x_17, x_30); +x_33 = l_Lean_Meta_PProdN_mk(x_32, x_31, x_15, x_16, x_17, x_18, x_30); if (lean_obj_tag(x_33) == 0) { lean_object* x_34; lean_object* x_35; uint8_t x_36; uint8_t x_37; uint8_t x_38; lean_object* x_39; @@ -72972,22 +73078,22 @@ lean_dec(x_33); x_36 = 0; x_37 = 1; x_38 = 1; -x_39 = l_Lean_Meta_mkLambdaFVars(x_13, x_34, x_36, x_37, x_36, x_38, x_14, x_15, x_16, x_17, x_35); +x_39 = l_Lean_Meta_mkLambdaFVars(x_14, x_34, x_36, x_37, x_36, x_38, x_15, x_16, x_17, x_18, x_35); +lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); -lean_dec(x_13); return x_39; } else { uint8_t x_40; +lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); -lean_dec(x_13); x_40 = !lean_is_exclusive(x_33); if (x_40 == 0) { @@ -73011,11 +73117,11 @@ return x_43; else { uint8_t x_44; +lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); -lean_dec(x_13); x_44 = !lean_is_exclusive(x_27); if (x_44 == 0) { @@ -73037,7 +73143,7 @@ return x_47; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1() { _start: { lean_object* x_1; @@ -73045,17 +73151,17 @@ x_1 = lean_mk_string_unchecked("minor", 5, 5); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1; +x_2 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3() { _start: { lean_object* x_1; @@ -73063,428 +73169,429 @@ x_1 = lean_mk_string_unchecked("complete body of mutual induction principle:", 4 return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, size_t x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { _start: { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_23 = lean_box_usize(x_4); -x_24 = lean_box_usize(x_12); -lean_inc(x_9); -lean_inc(x_5); -x_25 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed), 18, 12); -lean_closure_set(x_25, 0, x_1); -lean_closure_set(x_25, 1, x_2); -lean_closure_set(x_25, 2, x_3); -lean_closure_set(x_25, 3, x_23); -lean_closure_set(x_25, 4, x_5); -lean_closure_set(x_25, 5, x_6); -lean_closure_set(x_25, 6, x_7); -lean_closure_set(x_25, 7, x_8); -lean_closure_set(x_25, 8, x_9); -lean_closure_set(x_25, 9, x_10); -lean_closure_set(x_25, 10, x_11); -lean_closure_set(x_25, 11, x_24); -x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2; +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_24 = lean_box_usize(x_4); +x_25 = lean_box_usize(x_13); +lean_inc(x_10); +lean_inc(x_6); +x_26 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___boxed), 19, 13); +lean_closure_set(x_26, 0, x_1); +lean_closure_set(x_26, 1, x_2); +lean_closure_set(x_26, 2, x_3); +lean_closure_set(x_26, 3, x_24); +lean_closure_set(x_26, 4, x_5); +lean_closure_set(x_26, 5, x_6); +lean_closure_set(x_26, 6, x_7); +lean_closure_set(x_26, 7, x_8); +lean_closure_set(x_26, 8, x_9); +lean_closure_set(x_26, 9, x_10); +lean_closure_set(x_26, 10, x_11); +lean_closure_set(x_26, 11, x_12); +lean_closure_set(x_26, 12, x_25); +x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2; +lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); lean_inc(x_19); -lean_inc(x_18); -x_27 = l_Lean_Tactic_FunInd_withLetDecls___rarg(x_26, x_13, x_14, x_25, x_18, x_19, x_20, x_21, x_22); -if (lean_obj_tag(x_27) == 0) +x_28 = l_Lean_Tactic_FunInd_withLetDecls___rarg(x_27, x_14, x_15, x_26, x_19, x_20, x_21, x_22, x_23); +if (lean_obj_tag(x_28) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_29 = lean_ctor_get(x_28, 0); lean_inc(x_29); -lean_dec(x_27); -x_30 = l_Lean_instInhabitedExpr; -x_31 = l_Array_back_x21___rarg(x_30, x_15); -x_32 = l_Lean_Expr_fvarId_x21(x_31); -lean_dec(x_31); -lean_inc(x_18); -x_33 = l_Lean_FVarId_getDecl(x_32, x_18, x_19, x_20, x_21, x_29); -if (lean_obj_tag(x_33) == 0) +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l_Lean_instInhabitedExpr; +x_32 = l_Array_back_x21___rarg(x_31, x_16); +x_33 = l_Lean_Expr_fvarId_x21(x_32); +lean_dec(x_32); +lean_inc(x_19); +x_34 = l_Lean_FVarId_getDecl(x_33, x_19, x_20, x_21, x_22, x_30); +if (lean_obj_tag(x_34) == 0) { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_ctor_get(x_33, 1); +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_35 = lean_ctor_get(x_34, 0); lean_inc(x_35); -lean_dec(x_33); -x_36 = l_Lean_LocalDecl_index(x_34); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); lean_dec(x_34); +x_37 = l_Lean_LocalDecl_index(x_35); +lean_dec(x_35); +lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); lean_inc(x_19); -lean_inc(x_18); -x_37 = l_Lean_Tactic_FunInd_abstractIndependentMVars(x_16, x_36, x_28, x_18, x_19, x_20, x_21, x_35); -if (lean_obj_tag(x_37) == 0) +x_38 = l_Lean_Tactic_FunInd_abstractIndependentMVars(x_17, x_37, x_29, x_19, x_20, x_21, x_22, x_36); +if (lean_obj_tag(x_38) == 0) { -lean_object* x_38; lean_object* x_39; uint8_t x_40; uint8_t x_41; uint8_t x_42; lean_object* x_43; -x_38 = lean_ctor_get(x_37, 0); -lean_inc(x_38); -x_39 = lean_ctor_get(x_37, 1); +lean_object* x_39; lean_object* x_40; uint8_t x_41; uint8_t x_42; uint8_t x_43; lean_object* x_44; +x_39 = lean_ctor_get(x_38, 0); lean_inc(x_39); -lean_dec(x_37); -x_40 = 0; -x_41 = 1; +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = 0; x_42 = 1; -x_43 = l_Lean_Meta_mkLambdaFVars(x_15, x_38, x_40, x_41, x_40, x_42, x_18, x_19, x_20, x_21, x_39); -if (lean_obj_tag(x_43) == 0) +x_43 = 1; +x_44 = l_Lean_Meta_mkLambdaFVars(x_16, x_39, x_41, x_42, x_41, x_43, x_19, x_20, x_21, x_22, x_40); +if (lean_obj_tag(x_44) == 0) { -lean_object* x_44; lean_object* x_45; uint8_t x_46; lean_object* x_47; -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_43, 1); +lean_object* x_45; lean_object* x_46; uint8_t x_47; lean_object* x_48; +x_45 = lean_ctor_get(x_44, 0); lean_inc(x_45); -lean_dec(x_43); -x_46 = 0; -x_47 = l_Lean_Meta_mkLambdaFVars(x_5, x_44, x_41, x_41, x_40, x_46, x_18, x_19, x_20, x_21, x_45); -lean_dec(x_5); -if (lean_obj_tag(x_47) == 0) +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_dec(x_44); +x_47 = 0; +x_48 = l_Lean_Meta_mkLambdaFVars(x_6, x_45, x_42, x_42, x_41, x_47, x_19, x_20, x_21, x_22, x_46); +lean_dec(x_6); +if (lean_obj_tag(x_48) == 0) { -lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 1); +lean_object* x_49; lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_49 = lean_ctor_get(x_48, 0); lean_inc(x_49); -lean_dec(x_47); -x_50 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_48, x_18, x_19, x_20, x_21, x_49); -x_51 = !lean_is_exclusive(x_50); -if (x_51 == 0) +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); +lean_dec(x_48); +x_51 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_49, x_19, x_20, x_21, x_22, x_50); +x_52 = !lean_is_exclusive(x_51); +if (x_52 == 0) { -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_52 = lean_ctor_get(x_50, 0); -x_53 = lean_ctor_get(x_50, 1); -lean_inc(x_9); -x_54 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_9, x_18, x_19, x_20, x_21, x_53); -x_55 = lean_ctor_get(x_54, 0); -lean_inc(x_55); -x_56 = lean_unbox(x_55); -lean_dec(x_55); -if (x_56 == 0) -{ -uint8_t x_57; -lean_free_object(x_50); -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_9); -x_57 = !lean_is_exclusive(x_54); +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +x_53 = lean_ctor_get(x_51, 0); +x_54 = lean_ctor_get(x_51, 1); +lean_inc(x_10); +x_55 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_10, x_19, x_20, x_21, x_22, x_54); +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_unbox(x_56); +lean_dec(x_56); if (x_57 == 0) { -lean_object* x_58; -x_58 = lean_ctor_get(x_54, 0); -lean_dec(x_58); -lean_ctor_set(x_54, 0, x_52); -return x_54; -} -else -{ -lean_object* x_59; lean_object* x_60; -x_59 = lean_ctor_get(x_54, 1); -lean_inc(x_59); -lean_dec(x_54); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_52); -lean_ctor_set(x_60, 1, x_59); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; -x_61 = lean_ctor_get(x_54, 1); -lean_inc(x_61); -lean_dec(x_54); -lean_inc(x_52); -x_62 = l_Lean_indentExpr(x_52); -x_63 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4; -lean_ctor_set_tag(x_50, 7); -lean_ctor_set(x_50, 1, x_62); -lean_ctor_set(x_50, 0, x_63); -x_64 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_65 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_65, 0, x_50); -lean_ctor_set(x_65, 1, x_64); -x_66 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_9, x_65, x_18, x_19, x_20, x_21, x_61); +uint8_t x_58; +lean_free_object(x_51); +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -x_67 = !lean_is_exclusive(x_66); -if (x_67 == 0) +lean_dec(x_10); +x_58 = !lean_is_exclusive(x_55); +if (x_58 == 0) { -lean_object* x_68; -x_68 = lean_ctor_get(x_66, 0); -lean_dec(x_68); -lean_ctor_set(x_66, 0, x_52); -return x_66; +lean_object* x_59; +x_59 = lean_ctor_get(x_55, 0); +lean_dec(x_59); +lean_ctor_set(x_55, 0, x_53); +return x_55; } else { -lean_object* x_69; lean_object* x_70; -x_69 = lean_ctor_get(x_66, 1); -lean_inc(x_69); -lean_dec(x_66); -x_70 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_70, 0, x_52); -lean_ctor_set(x_70, 1, x_69); -return x_70; +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_55, 1); +lean_inc(x_60); +lean_dec(x_55); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_53); +lean_ctor_set(x_61, 1, x_60); +return x_61; +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; +x_62 = lean_ctor_get(x_55, 1); +lean_inc(x_62); +lean_dec(x_55); +lean_inc(x_53); +x_63 = l_Lean_indentExpr(x_53); +x_64 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4; +lean_ctor_set_tag(x_51, 7); +lean_ctor_set(x_51, 1, x_63); +lean_ctor_set(x_51, 0, x_64); +x_65 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_66 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_66, 0, x_51); +lean_ctor_set(x_66, 1, x_65); +x_67 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_10, x_66, x_19, x_20, x_21, x_22, x_62); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +x_68 = !lean_is_exclusive(x_67); +if (x_68 == 0) +{ +lean_object* x_69; +x_69 = lean_ctor_get(x_67, 0); +lean_dec(x_69); +lean_ctor_set(x_67, 0, x_53); +return x_67; +} +else +{ +lean_object* x_70; lean_object* x_71; +x_70 = lean_ctor_get(x_67, 1); +lean_inc(x_70); +lean_dec(x_67); +x_71 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_71, 0, x_53); +lean_ctor_set(x_71, 1, x_70); +return x_71; } } } else { -lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; -x_71 = lean_ctor_get(x_50, 0); -x_72 = lean_ctor_get(x_50, 1); +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_72 = lean_ctor_get(x_51, 0); +x_73 = lean_ctor_get(x_51, 1); +lean_inc(x_73); lean_inc(x_72); -lean_inc(x_71); -lean_dec(x_50); -lean_inc(x_9); -x_73 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_9, x_18, x_19, x_20, x_21, x_72); -x_74 = lean_ctor_get(x_73, 0); -lean_inc(x_74); -x_75 = lean_unbox(x_74); +lean_dec(x_51); +lean_inc(x_10); +x_74 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_10, x_19, x_20, x_21, x_22, x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_unbox(x_75); +lean_dec(x_75); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_10); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_78 = x_74; +} else { + lean_dec_ref(x_74); + x_78 = lean_box(0); +} +if (lean_is_scalar(x_78)) { + x_79 = lean_alloc_ctor(0, 2, 0); +} else { + x_79 = x_78; +} +lean_ctor_set(x_79, 0, x_72); +lean_ctor_set(x_79, 1, x_77); +return x_79; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; +x_80 = lean_ctor_get(x_74, 1); +lean_inc(x_80); lean_dec(x_74); -if (x_75 == 0) -{ -lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_inc(x_72); +x_81 = l_Lean_indentExpr(x_72); +x_82 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4; +x_83 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_83, 0, x_82); +lean_ctor_set(x_83, 1, x_81); +x_84 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_85 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +x_86 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_10, x_85, x_19, x_20, x_21, x_22, x_80); +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_9); -x_76 = lean_ctor_get(x_73, 1); -lean_inc(x_76); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - x_77 = x_73; +x_87 = lean_ctor_get(x_86, 1); +lean_inc(x_87); +if (lean_is_exclusive(x_86)) { + lean_ctor_release(x_86, 0); + lean_ctor_release(x_86, 1); + x_88 = x_86; } else { - lean_dec_ref(x_73); - x_77 = lean_box(0); + lean_dec_ref(x_86); + x_88 = lean_box(0); } -if (lean_is_scalar(x_77)) { - x_78 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_88)) { + x_89 = lean_alloc_ctor(0, 2, 0); } else { - x_78 = x_77; + x_89 = x_88; } -lean_ctor_set(x_78, 0, x_71); -lean_ctor_set(x_78, 1, x_76); -return x_78; -} -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; -x_79 = lean_ctor_get(x_73, 1); -lean_inc(x_79); -lean_dec(x_73); -lean_inc(x_71); -x_80 = l_Lean_indentExpr(x_71); -x_81 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4; -x_82 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_82, 0, x_81); -lean_ctor_set(x_82, 1, x_80); -x_83 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_84 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_84, 0, x_82); -lean_ctor_set(x_84, 1, x_83); -x_85 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_9, x_84, x_18, x_19, x_20, x_21, x_79); -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_18); -x_86 = lean_ctor_get(x_85, 1); -lean_inc(x_86); -if (lean_is_exclusive(x_85)) { - lean_ctor_release(x_85, 0); - lean_ctor_release(x_85, 1); - x_87 = x_85; -} else { - lean_dec_ref(x_85); - x_87 = lean_box(0); -} -if (lean_is_scalar(x_87)) { - x_88 = lean_alloc_ctor(0, 2, 0); -} else { - x_88 = x_87; -} -lean_ctor_set(x_88, 0, x_71); -lean_ctor_set(x_88, 1, x_86); -return x_88; +lean_ctor_set(x_89, 0, x_72); +lean_ctor_set(x_89, 1, x_87); +return x_89; } } } else { -uint8_t x_89; +uint8_t x_90; +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_9); -x_89 = !lean_is_exclusive(x_47); -if (x_89 == 0) +lean_dec(x_10); +x_90 = !lean_is_exclusive(x_48); +if (x_90 == 0) { -return x_47; +return x_48; } else { -lean_object* x_90; lean_object* x_91; lean_object* x_92; -x_90 = lean_ctor_get(x_47, 0); -x_91 = lean_ctor_get(x_47, 1); +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_48, 0); +x_92 = lean_ctor_get(x_48, 1); +lean_inc(x_92); lean_inc(x_91); -lean_inc(x_90); -lean_dec(x_47); -x_92 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_92, 0, x_90); -lean_ctor_set(x_92, 1, x_91); -return x_92; +lean_dec(x_48); +x_93 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_93, 0, x_91); +lean_ctor_set(x_93, 1, x_92); +return x_93; } } } else { -uint8_t x_93; +uint8_t x_94; +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_9); -lean_dec(x_5); -x_93 = !lean_is_exclusive(x_43); -if (x_93 == 0) +lean_dec(x_10); +lean_dec(x_6); +x_94 = !lean_is_exclusive(x_44); +if (x_94 == 0) { -return x_43; +return x_44; } else { -lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_94 = lean_ctor_get(x_43, 0); -x_95 = lean_ctor_get(x_43, 1); +lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_95 = lean_ctor_get(x_44, 0); +x_96 = lean_ctor_get(x_44, 1); +lean_inc(x_96); lean_inc(x_95); -lean_inc(x_94); -lean_dec(x_43); -x_96 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_96, 0, x_94); -lean_ctor_set(x_96, 1, x_95); -return x_96; +lean_dec(x_44); +x_97 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_97, 0, x_95); +lean_ctor_set(x_97, 1, x_96); +return x_97; } } } else { -uint8_t x_97; +uint8_t x_98; +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_9); -lean_dec(x_5); -x_97 = !lean_is_exclusive(x_37); -if (x_97 == 0) +lean_dec(x_10); +lean_dec(x_6); +x_98 = !lean_is_exclusive(x_38); +if (x_98 == 0) { -return x_37; +return x_38; } else { -lean_object* x_98; lean_object* x_99; lean_object* x_100; -x_98 = lean_ctor_get(x_37, 0); -x_99 = lean_ctor_get(x_37, 1); +lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_99 = lean_ctor_get(x_38, 0); +x_100 = lean_ctor_get(x_38, 1); +lean_inc(x_100); lean_inc(x_99); -lean_inc(x_98); -lean_dec(x_37); -x_100 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_100, 0, x_98); -lean_ctor_set(x_100, 1, x_99); -return x_100; +lean_dec(x_38); +x_101 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_101, 0, x_99); +lean_ctor_set(x_101, 1, x_100); +return x_101; } } } else { -uint8_t x_101; -lean_dec(x_28); +uint8_t x_102; +lean_dec(x_29); +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_16); -lean_dec(x_9); -lean_dec(x_5); -x_101 = !lean_is_exclusive(x_33); -if (x_101 == 0) +lean_dec(x_17); +lean_dec(x_10); +lean_dec(x_6); +x_102 = !lean_is_exclusive(x_34); +if (x_102 == 0) { -return x_33; +return x_34; } else { -lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_102 = lean_ctor_get(x_33, 0); -x_103 = lean_ctor_get(x_33, 1); +lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_103 = lean_ctor_get(x_34, 0); +x_104 = lean_ctor_get(x_34, 1); +lean_inc(x_104); lean_inc(x_103); -lean_inc(x_102); -lean_dec(x_33); -x_104 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_104, 0, x_102); -lean_ctor_set(x_104, 1, x_103); -return x_104; +lean_dec(x_34); +x_105 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_105, 0, x_103); +lean_ctor_set(x_105, 1, x_104); +return x_105; } } } else { -uint8_t x_105; +uint8_t x_106; +lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); -lean_dec(x_18); -lean_dec(x_16); -lean_dec(x_9); -lean_dec(x_5); -x_105 = !lean_is_exclusive(x_27); -if (x_105 == 0) +lean_dec(x_17); +lean_dec(x_10); +lean_dec(x_6); +x_106 = !lean_is_exclusive(x_28); +if (x_106 == 0) { -return x_27; +return x_28; } else { -lean_object* x_106; lean_object* x_107; lean_object* x_108; -x_106 = lean_ctor_get(x_27, 0); -x_107 = lean_ctor_get(x_27, 1); +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_28, 0); +x_108 = lean_ctor_get(x_28, 1); +lean_inc(x_108); lean_inc(x_107); -lean_inc(x_106); -lean_dec(x_27); -x_108 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_108, 0, x_106); -lean_ctor_set(x_108, 1, x_107); -return x_108; +lean_dec(x_28); +x_109 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_109, 0, x_107); +lean_ctor_set(x_109, 1, x_108); +return x_109; } } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed), 8, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed), 8, 0); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2() { _start: { lean_object* x_1; @@ -73492,235 +73599,236 @@ x_1 = lean_mk_string_unchecked("processed minors: ", 18, 18); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, size_t x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, size_t x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24) { _start: { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; size_t x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_24 = lean_box(0); -x_25 = lean_array_get_size(x_1); -x_26 = lean_unsigned_to_nat(0u); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; size_t x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_25 = lean_box(0); +x_26 = lean_array_get_size(x_1); +x_27 = lean_unsigned_to_nat(0u); lean_inc(x_1); -x_27 = l_Array_toSubarray___rarg(x_1, x_26, x_25); -x_28 = lean_array_get_size(x_2); -x_29 = l_Array_toSubarray___rarg(x_2, x_26, x_28); -x_30 = lean_box(0); -x_31 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; -x_32 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_32, 0, x_29); -lean_ctor_set(x_32, 1, x_31); +x_28 = l_Array_toSubarray___rarg(x_1, x_27, x_26); +x_29 = lean_array_get_size(x_2); +x_30 = l_Array_toSubarray___rarg(x_2, x_27, x_29); +x_31 = lean_box(0); +x_32 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_27); +lean_ctor_set(x_33, 0, x_30); lean_ctor_set(x_33, 1, x_32); -x_34 = lean_array_size(x_3); -x_35 = lean_box_usize(x_34); -x_36 = lean_box_usize(x_9); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_28); +lean_ctor_set(x_34, 1, x_33); +x_35 = lean_array_size(x_3); +x_36 = lean_box_usize(x_35); +x_37 = lean_box_usize(x_9); lean_inc(x_8); lean_inc(x_3); lean_inc(x_6); -x_37 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___boxed), 18, 11); -lean_closure_set(x_37, 0, x_4); -lean_closure_set(x_37, 1, x_5); -lean_closure_set(x_37, 2, x_6); -lean_closure_set(x_37, 3, x_7); -lean_closure_set(x_37, 4, x_3); -lean_closure_set(x_37, 5, x_8); -lean_closure_set(x_37, 6, x_30); -lean_closure_set(x_37, 7, x_3); -lean_closure_set(x_37, 8, x_35); -lean_closure_set(x_37, 9, x_36); -lean_closure_set(x_37, 10, x_33); -x_38 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1; -x_39 = lean_alloc_closure((void*)(l_StateT_bind___at_Lean_Tactic_FunInd_buildInductionCase___spec__6___rarg), 9, 2); -lean_closure_set(x_39, 0, x_37); -lean_closure_set(x_39, 1, x_38); +x_38 = lean_alloc_closure((void*)(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___boxed), 18, 11); +lean_closure_set(x_38, 0, x_4); +lean_closure_set(x_38, 1, x_5); +lean_closure_set(x_38, 2, x_6); +lean_closure_set(x_38, 3, x_7); +lean_closure_set(x_38, 4, x_3); +lean_closure_set(x_38, 5, x_8); +lean_closure_set(x_38, 6, x_31); +lean_closure_set(x_38, 7, x_3); +lean_closure_set(x_38, 8, x_36); +lean_closure_set(x_38, 9, x_37); +lean_closure_set(x_38, 10, x_34); +x_39 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1; +x_40 = lean_alloc_closure((void*)(l_StateT_bind___at_Lean_Tactic_FunInd_buildInductionCase___spec__6___rarg), 9, 2); +lean_closure_set(x_40, 0, x_38); +lean_closure_set(x_40, 1, x_39); +lean_inc(x_23); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -x_40 = l_Lean_Tactic_FunInd_M2_run___rarg(x_39, x_19, x_20, x_21, x_22, x_23); -if (lean_obj_tag(x_40) == 0) +x_41 = l_Lean_Tactic_FunInd_M2_run___rarg(x_40, x_20, x_21, x_22, x_23, x_24); +if (lean_obj_tag(x_41) == 0) { -lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_41 = lean_ctor_get(x_40, 0); -lean_inc(x_41); -x_42 = lean_ctor_get(x_40, 1); +lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = lean_ctor_get(x_41, 0); lean_inc(x_42); -lean_dec(x_40); -x_43 = !lean_is_exclusive(x_41); -if (x_43 == 0) -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; -x_44 = lean_ctor_get(x_41, 0); -x_45 = lean_ctor_get(x_41, 1); -lean_inc(x_8); -x_46 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_19, x_20, x_21, x_22, x_42); -x_47 = lean_ctor_get(x_46, 0); -lean_inc(x_47); -x_48 = lean_unbox(x_47); -lean_dec(x_47); -if (x_48 == 0) -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_free_object(x_41); -x_49 = lean_ctor_get(x_46, 1); -lean_inc(x_49); -lean_dec(x_46); -x_50 = lean_box(0); -x_51 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_10, x_11, x_31, x_9, x_12, x_13, x_14, x_15, x_8, x_16, x_30, x_17, x_1, x_44, x_6, x_45, x_50, x_19, x_20, x_21, x_22, x_49); -lean_dec(x_6); -return x_51; -} -else -{ -uint8_t x_52; -x_52 = !lean_is_exclusive(x_46); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_53 = lean_ctor_get(x_46, 1); -x_54 = lean_ctor_get(x_46, 0); -lean_dec(x_54); -lean_inc(x_44); -x_55 = lean_array_to_list(x_44); -x_56 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_55, x_24); -x_57 = l_Lean_MessageData_ofList(x_56); -x_58 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3; -lean_ctor_set_tag(x_46, 7); -lean_ctor_set(x_46, 1, x_57); -lean_ctor_set(x_46, 0, x_58); -x_59 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -lean_ctor_set_tag(x_41, 7); -lean_ctor_set(x_41, 1, x_59); -lean_ctor_set(x_41, 0, x_46); -lean_inc(x_8); -x_60 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_41, x_19, x_20, x_21, x_22, x_53); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); -lean_inc(x_62); -lean_dec(x_60); -x_63 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_10, x_11, x_31, x_9, x_12, x_13, x_14, x_15, x_8, x_16, x_30, x_17, x_1, x_44, x_6, x_45, x_61, x_19, x_20, x_21, x_22, x_62); -lean_dec(x_61); -lean_dec(x_6); -return x_63; -} -else -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_64 = lean_ctor_get(x_46, 1); -lean_inc(x_64); -lean_dec(x_46); -lean_inc(x_44); -x_65 = lean_array_to_list(x_44); -x_66 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_65, x_24); -x_67 = l_Lean_MessageData_ofList(x_66); -x_68 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3; -x_69 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_69, 0, x_68); -lean_ctor_set(x_69, 1, x_67); -x_70 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -lean_ctor_set_tag(x_41, 7); -lean_ctor_set(x_41, 1, x_70); -lean_ctor_set(x_41, 0, x_69); -lean_inc(x_8); -x_71 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_41, x_19, x_20, x_21, x_22, x_64); -x_72 = lean_ctor_get(x_71, 0); -lean_inc(x_72); -x_73 = lean_ctor_get(x_71, 1); -lean_inc(x_73); -lean_dec(x_71); -x_74 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_10, x_11, x_31, x_9, x_12, x_13, x_14, x_15, x_8, x_16, x_30, x_17, x_1, x_44, x_6, x_45, x_72, x_19, x_20, x_21, x_22, x_73); -lean_dec(x_72); -lean_dec(x_6); -return x_74; -} -} -} -else -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; -x_75 = lean_ctor_get(x_41, 0); -x_76 = lean_ctor_get(x_41, 1); -lean_inc(x_76); -lean_inc(x_75); +x_43 = lean_ctor_get(x_41, 1); +lean_inc(x_43); lean_dec(x_41); +x_44 = !lean_is_exclusive(x_42); +if (x_44 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_45 = lean_ctor_get(x_42, 0); +x_46 = lean_ctor_get(x_42, 1); lean_inc(x_8); -x_77 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_19, x_20, x_21, x_22, x_42); -x_78 = lean_ctor_get(x_77, 0); -lean_inc(x_78); -x_79 = lean_unbox(x_78); +x_47 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_20, x_21, x_22, x_23, x_43); +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_unbox(x_48); +lean_dec(x_48); +if (x_49 == 0) +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_free_object(x_42); +x_50 = lean_ctor_get(x_47, 1); +lean_inc(x_50); +lean_dec(x_47); +x_51 = lean_box(0); +x_52 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_10, x_11, x_32, x_9, x_12, x_13, x_14, x_15, x_16, x_8, x_17, x_31, x_18, x_1, x_45, x_6, x_46, x_51, x_20, x_21, x_22, x_23, x_50); +lean_dec(x_6); +return x_52; +} +else +{ +uint8_t x_53; +x_53 = !lean_is_exclusive(x_47); +if (x_53 == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_54 = lean_ctor_get(x_47, 1); +x_55 = lean_ctor_get(x_47, 0); +lean_dec(x_55); +lean_inc(x_45); +x_56 = lean_array_to_list(x_45); +x_57 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_56, x_25); +x_58 = l_Lean_MessageData_ofList(x_57); +x_59 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3; +lean_ctor_set_tag(x_47, 7); +lean_ctor_set(x_47, 1, x_58); +lean_ctor_set(x_47, 0, x_59); +x_60 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +lean_ctor_set_tag(x_42, 7); +lean_ctor_set(x_42, 1, x_60); +lean_ctor_set(x_42, 0, x_47); +lean_inc(x_8); +x_61 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_42, x_20, x_21, x_22, x_23, x_54); +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +lean_dec(x_61); +x_64 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_10, x_11, x_32, x_9, x_12, x_13, x_14, x_15, x_16, x_8, x_17, x_31, x_18, x_1, x_45, x_6, x_46, x_62, x_20, x_21, x_22, x_23, x_63); +lean_dec(x_62); +lean_dec(x_6); +return x_64; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_65 = lean_ctor_get(x_47, 1); +lean_inc(x_65); +lean_dec(x_47); +lean_inc(x_45); +x_66 = lean_array_to_list(x_45); +x_67 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_66, x_25); +x_68 = l_Lean_MessageData_ofList(x_67); +x_69 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3; +x_70 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_70, 0, x_69); +lean_ctor_set(x_70, 1, x_68); +x_71 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +lean_ctor_set_tag(x_42, 7); +lean_ctor_set(x_42, 1, x_71); +lean_ctor_set(x_42, 0, x_70); +lean_inc(x_8); +x_72 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_42, x_20, x_21, x_22, x_23, x_65); +x_73 = lean_ctor_get(x_72, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_72, 1); +lean_inc(x_74); +lean_dec(x_72); +x_75 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_10, x_11, x_32, x_9, x_12, x_13, x_14, x_15, x_16, x_8, x_17, x_31, x_18, x_1, x_45, x_6, x_46, x_73, x_20, x_21, x_22, x_23, x_74); +lean_dec(x_73); +lean_dec(x_6); +return x_75; +} +} +} +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; +x_76 = lean_ctor_get(x_42, 0); +x_77 = lean_ctor_get(x_42, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_42); +lean_inc(x_8); +x_78 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_20, x_21, x_22, x_23, x_43); +x_79 = lean_ctor_get(x_78, 0); +lean_inc(x_79); +x_80 = lean_unbox(x_79); +lean_dec(x_79); +if (x_80 == 0) +{ +lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_81 = lean_ctor_get(x_78, 1); +lean_inc(x_81); lean_dec(x_78); -if (x_79 == 0) -{ -lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_80 = lean_ctor_get(x_77, 1); -lean_inc(x_80); -lean_dec(x_77); -x_81 = lean_box(0); -x_82 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_10, x_11, x_31, x_9, x_12, x_13, x_14, x_15, x_8, x_16, x_30, x_17, x_1, x_75, x_6, x_76, x_81, x_19, x_20, x_21, x_22, x_80); +x_82 = lean_box(0); +x_83 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_10, x_11, x_32, x_9, x_12, x_13, x_14, x_15, x_16, x_8, x_17, x_31, x_18, x_1, x_76, x_6, x_77, x_82, x_20, x_21, x_22, x_23, x_81); lean_dec(x_6); -return x_82; +return x_83; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_83 = lean_ctor_get(x_77, 1); -lean_inc(x_83); -if (lean_is_exclusive(x_77)) { - lean_ctor_release(x_77, 0); - lean_ctor_release(x_77, 1); - x_84 = x_77; +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +x_84 = lean_ctor_get(x_78, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_78)) { + lean_ctor_release(x_78, 0); + lean_ctor_release(x_78, 1); + x_85 = x_78; } else { - lean_dec_ref(x_77); - x_84 = lean_box(0); + lean_dec_ref(x_78); + x_85 = lean_box(0); } -lean_inc(x_75); -x_85 = lean_array_to_list(x_75); -x_86 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_85, x_24); -x_87 = l_Lean_MessageData_ofList(x_86); -x_88 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3; -if (lean_is_scalar(x_84)) { - x_89 = lean_alloc_ctor(7, 2, 0); +lean_inc(x_76); +x_86 = lean_array_to_list(x_76); +x_87 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_86, x_25); +x_88 = l_Lean_MessageData_ofList(x_87); +x_89 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3; +if (lean_is_scalar(x_85)) { + x_90 = lean_alloc_ctor(7, 2, 0); } else { - x_89 = x_84; - lean_ctor_set_tag(x_89, 7); + x_90 = x_85; + lean_ctor_set_tag(x_90, 7); } -lean_ctor_set(x_89, 0, x_88); -lean_ctor_set(x_89, 1, x_87); -x_90 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_91 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_91, 0, x_89); -lean_ctor_set(x_91, 1, x_90); +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_90, 1, x_88); +x_91 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_92 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_92, 0, x_90); +lean_ctor_set(x_92, 1, x_91); lean_inc(x_8); -x_92 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_91, x_19, x_20, x_21, x_22, x_83); -x_93 = lean_ctor_get(x_92, 0); -lean_inc(x_93); -x_94 = lean_ctor_get(x_92, 1); +x_93 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_92, x_20, x_21, x_22, x_23, x_84); +x_94 = lean_ctor_get(x_93, 0); lean_inc(x_94); -lean_dec(x_92); -x_95 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_10, x_11, x_31, x_9, x_12, x_13, x_14, x_15, x_8, x_16, x_30, x_17, x_1, x_75, x_6, x_76, x_93, x_19, x_20, x_21, x_22, x_94); +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); lean_dec(x_93); +x_96 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_10, x_11, x_32, x_9, x_12, x_13, x_14, x_15, x_16, x_8, x_17, x_31, x_18, x_1, x_76, x_6, x_77, x_94, x_20, x_21, x_22, x_23, x_95); +lean_dec(x_94); lean_dec(x_6); -return x_95; +return x_96; } } } else { -uint8_t x_96; +uint8_t x_97; +lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); -lean_dec(x_19); +lean_dec(x_17); lean_dec(x_16); lean_dec(x_15); lean_dec(x_14); @@ -73731,28 +73839,28 @@ lean_dec(x_10); lean_dec(x_8); lean_dec(x_6); lean_dec(x_1); -x_96 = !lean_is_exclusive(x_40); -if (x_96 == 0) +x_97 = !lean_is_exclusive(x_41); +if (x_97 == 0) { -return x_40; +return x_41; } else { -lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_97 = lean_ctor_get(x_40, 0); -x_98 = lean_ctor_get(x_40, 1); +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_41, 0); +x_99 = lean_ctor_get(x_41, 1); +lean_inc(x_99); lean_inc(x_98); -lean_inc(x_97); -lean_dec(x_40); -x_99 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_99, 0, x_97); -lean_ctor_set(x_99, 1, x_98); -return x_99; +lean_dec(x_41); +x_100 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_100, 0, x_98); +lean_ctor_set(x_100, 1, x_99); +return x_100; } } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1() { _start: { lean_object* x_1; @@ -73760,125 +73868,126 @@ x_1 = lean_mk_string_unchecked("minorTypes: ", 12, 12); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, size_t x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24, lean_object* x_25) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, size_t x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, size_t x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24, lean_object* x_25, lean_object* x_26) { _start: { -lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_inc(x_1); -x_26 = l_Array_append___rarg(x_1, x_2); -x_27 = l_Lean_mkAppN(x_3, x_26); -lean_dec(x_26); +x_27 = l_Array_append___rarg(x_1, x_2); +x_28 = l_Lean_mkAppN(x_3, x_27); +lean_dec(x_27); +lean_inc(x_25); lean_inc(x_24); lean_inc(x_23); lean_inc(x_22); -lean_inc(x_21); -x_28 = l_Lean_Meta_inferArgumentTypesN(x_4, x_27, x_21, x_22, x_23, x_24, x_25); -if (lean_obj_tag(x_28) == 0) +x_29 = l_Lean_Meta_inferArgumentTypesN(x_4, x_28, x_22, x_23, x_24, x_25, x_26); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_30 = lean_ctor_get(x_29, 0); lean_inc(x_30); -lean_dec(x_28); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); lean_inc(x_5); -x_31 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_5, x_21, x_22, x_23, x_24, x_30); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_unbox(x_32); +x_32 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_5, x_22, x_23, x_24, x_25, x_31); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_unbox(x_33); +lean_dec(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); lean_dec(x_32); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_31, 1); -lean_inc(x_34); -lean_dec(x_31); -x_35 = lean_box(0); -x_36 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_29, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_1, x_19, x_35, x_21, x_22, x_23, x_24, x_34); -return x_36; +x_36 = lean_box(0); +x_37 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_1, x_20, x_36, x_22, x_23, x_24, x_25, x_35); +return x_37; } else { -uint8_t x_37; -x_37 = !lean_is_exclusive(x_31); -if (x_37 == 0) +uint8_t x_38; +x_38 = !lean_is_exclusive(x_32); +if (x_38 == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_38 = lean_ctor_get(x_31, 1); -x_39 = lean_ctor_get(x_31, 0); -lean_dec(x_39); -lean_inc(x_29); -x_40 = lean_array_to_list(x_29); -x_41 = lean_box(0); -x_42 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_40, x_41); -x_43 = l_Lean_MessageData_ofList(x_42); -x_44 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2; -lean_ctor_set_tag(x_31, 7); -lean_ctor_set(x_31, 1, x_43); -lean_ctor_set(x_31, 0, x_44); -x_45 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_46 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_46, 0, x_31); -lean_ctor_set(x_46, 1, x_45); +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_39 = lean_ctor_get(x_32, 1); +x_40 = lean_ctor_get(x_32, 0); +lean_dec(x_40); +lean_inc(x_30); +x_41 = lean_array_to_list(x_30); +x_42 = lean_box(0); +x_43 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_41, x_42); +x_44 = l_Lean_MessageData_ofList(x_43); +x_45 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2; +lean_ctor_set_tag(x_32, 7); +lean_ctor_set(x_32, 1, x_44); +lean_ctor_set(x_32, 0, x_45); +x_46 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_47 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_47, 0, x_32); +lean_ctor_set(x_47, 1, x_46); lean_inc(x_5); -x_47 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_5, x_46, x_21, x_22, x_23, x_24, x_38); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 1); +x_48 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_5, x_47, x_22, x_23, x_24, x_25, x_39); +x_49 = lean_ctor_get(x_48, 0); lean_inc(x_49); -lean_dec(x_47); -x_50 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_29, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_1, x_19, x_48, x_21, x_22, x_23, x_24, x_49); +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); lean_dec(x_48); -return x_50; +x_51 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_1, x_20, x_49, x_22, x_23, x_24, x_25, x_50); +lean_dec(x_49); +return x_51; } else { -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_51 = lean_ctor_get(x_31, 1); -lean_inc(x_51); -lean_dec(x_31); -lean_inc(x_29); -x_52 = lean_array_to_list(x_29); -x_53 = lean_box(0); -x_54 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_52, x_53); -x_55 = l_Lean_MessageData_ofList(x_54); -x_56 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2; -x_57 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_55); -x_58 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_52 = lean_ctor_get(x_32, 1); +lean_inc(x_52); +lean_dec(x_32); +lean_inc(x_30); +x_53 = lean_array_to_list(x_30); +x_54 = lean_box(0); +x_55 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_53, x_54); +x_56 = l_Lean_MessageData_ofList(x_55); +x_57 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2; +x_58 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_56); +x_59 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_60 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); lean_inc(x_5); -x_60 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_5, x_59, x_21, x_22, x_23, x_24, x_51); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); +x_61 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_5, x_60, x_22, x_23, x_24, x_25, x_52); +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -lean_dec(x_60); -x_63 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_29, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_1, x_19, x_61, x_21, x_22, x_23, x_24, x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); lean_dec(x_61); -return x_63; +x_64 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_5, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_1, x_20, x_62, x_22, x_23, x_24, x_25, x_63); +lean_dec(x_62); +return x_64; } } } else { -uint8_t x_64; +uint8_t x_65; +lean_dec(x_25); lean_dec(x_24); lean_dec(x_23); lean_dec(x_22); -lean_dec(x_21); +lean_dec(x_19); lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); @@ -73893,28 +74002,28 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_1); -x_64 = !lean_is_exclusive(x_28); -if (x_64 == 0) +x_65 = !lean_is_exclusive(x_29); +if (x_65 == 0) { -return x_28; +return x_29; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_28, 0); -x_66 = lean_ctor_get(x_28, 1); +lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_66 = lean_ctor_get(x_29, 0); +x_67 = lean_ctor_get(x_29, 1); +lean_inc(x_67); lean_inc(x_66); -lean_inc(x_65); -lean_dec(x_28); -x_67 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); -return x_67; +lean_dec(x_29); +x_68 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +return x_68; } } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1() { _start: { lean_object* x_1; @@ -73922,7 +74031,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_PProdN_packLambdas), 7, 0); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2() { _start: { lean_object* x_1; @@ -73930,138 +74039,139 @@ x_1 = lean_mk_string_unchecked("packedMotives: ", 15, 15); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23, lean_object* x_24) { _start: { -lean_object* x_24; lean_object* x_25; size_t x_26; lean_object* x_27; +lean_object* x_25; lean_object* x_26; size_t x_27; lean_object* x_28; lean_inc(x_4); -x_24 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(x_1, x_2, x_3, x_4); -x_25 = l_Array_zip___rarg(x_18, x_5); -x_26 = lean_array_size(x_25); +x_25 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(x_1, x_2, x_3, x_4); +x_26 = l_Array_zip___rarg(x_19, x_5); +x_27 = lean_array_size(x_26); +lean_inc(x_23); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -x_27 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(x_26, x_3, x_25, x_19, x_20, x_21, x_22, x_23); -if (lean_obj_tag(x_27) == 0) +x_28 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(x_27, x_3, x_26, x_20, x_21, x_22, x_23, x_24); +if (lean_obj_tag(x_28) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_29 = lean_ctor_get(x_28, 0); lean_inc(x_29); -lean_dec(x_27); -x_30 = l_Lean_instInhabitedExpr; -x_31 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1; +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l_Lean_instInhabitedExpr; +x_32 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1; +lean_inc(x_23); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); -lean_inc(x_19); -x_32 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(x_30, x_31, x_6, x_7, x_28, x_19, x_20, x_21, x_22, x_29); -lean_dec(x_28); -if (lean_obj_tag(x_32) == 0) +x_33 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(x_31, x_32, x_6, x_7, x_29, x_20, x_21, x_22, x_23, x_30); +lean_dec(x_29); +if (lean_obj_tag(x_33) == 0) { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_33 = lean_ctor_get(x_32, 0); -lean_inc(x_33); -x_34 = lean_ctor_get(x_32, 1); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_34 = lean_ctor_get(x_33, 0); lean_inc(x_34); -lean_dec(x_32); +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); lean_inc(x_8); -x_35 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_19, x_20, x_21, x_22, x_34); -x_36 = lean_ctor_get(x_35, 0); -lean_inc(x_36); -x_37 = lean_unbox(x_36); +x_36 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_8, x_20, x_21, x_22, x_23, x_35); +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_unbox(x_37); +lean_dec(x_37); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); lean_dec(x_36); -if (x_37 == 0) -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -lean_dec(x_35); -x_39 = lean_box(0); -x_40 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_33, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_18, x_24, x_3, x_5, x_4, x_1, x_16, x_17, x_6, x_2, x_39, x_19, x_20, x_21, x_22, x_38); -return x_40; +x_40 = lean_box(0); +x_41 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(x_34, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_19, x_25, x_3, x_5, x_16, x_4, x_1, x_17, x_18, x_6, x_2, x_40, x_20, x_21, x_22, x_23, x_39); +return x_41; } else { -uint8_t x_41; -x_41 = !lean_is_exclusive(x_35); -if (x_41 == 0) +uint8_t x_42; +x_42 = !lean_is_exclusive(x_36); +if (x_42 == 0) { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; -x_42 = lean_ctor_get(x_35, 1); -x_43 = lean_ctor_get(x_35, 0); -lean_dec(x_43); -lean_inc(x_33); -x_44 = lean_array_to_list(x_33); -x_45 = lean_box(0); -x_46 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_44, x_45); -x_47 = l_Lean_MessageData_ofList(x_46); -x_48 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3; -lean_ctor_set_tag(x_35, 7); -lean_ctor_set(x_35, 1, x_47); -lean_ctor_set(x_35, 0, x_48); -x_49 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_50 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_50, 0, x_35); -lean_ctor_set(x_50, 1, x_49); +lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_43 = lean_ctor_get(x_36, 1); +x_44 = lean_ctor_get(x_36, 0); +lean_dec(x_44); +lean_inc(x_34); +x_45 = lean_array_to_list(x_34); +x_46 = lean_box(0); +x_47 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_45, x_46); +x_48 = l_Lean_MessageData_ofList(x_47); +x_49 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3; +lean_ctor_set_tag(x_36, 7); +lean_ctor_set(x_36, 1, x_48); +lean_ctor_set(x_36, 0, x_49); +x_50 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_51 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_51, 0, x_36); +lean_ctor_set(x_51, 1, x_50); lean_inc(x_8); -x_51 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_50, x_19, x_20, x_21, x_22, x_42); -x_52 = lean_ctor_get(x_51, 0); -lean_inc(x_52); -x_53 = lean_ctor_get(x_51, 1); +x_52 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_51, x_20, x_21, x_22, x_23, x_43); +x_53 = lean_ctor_get(x_52, 0); lean_inc(x_53); -lean_dec(x_51); -x_54 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_33, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_18, x_24, x_3, x_5, x_4, x_1, x_16, x_17, x_6, x_2, x_52, x_19, x_20, x_21, x_22, x_53); +x_54 = lean_ctor_get(x_52, 1); +lean_inc(x_54); lean_dec(x_52); -return x_54; +x_55 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(x_34, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_19, x_25, x_3, x_5, x_16, x_4, x_1, x_17, x_18, x_6, x_2, x_53, x_20, x_21, x_22, x_23, x_54); +lean_dec(x_53); +return x_55; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_55 = lean_ctor_get(x_35, 1); -lean_inc(x_55); -lean_dec(x_35); -lean_inc(x_33); -x_56 = lean_array_to_list(x_33); -x_57 = lean_box(0); -x_58 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_56, x_57); -x_59 = l_Lean_MessageData_ofList(x_58); -x_60 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3; -x_61 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_61, 0, x_60); -lean_ctor_set(x_61, 1, x_59); -x_62 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; -x_63 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_56 = lean_ctor_get(x_36, 1); +lean_inc(x_56); +lean_dec(x_36); +lean_inc(x_34); +x_57 = lean_array_to_list(x_34); +x_58 = lean_box(0); +x_59 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_57, x_58); +x_60 = l_Lean_MessageData_ofList(x_59); +x_61 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3; +x_62 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_60); +x_63 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_64 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); lean_inc(x_8); -x_64 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_63, x_19, x_20, x_21, x_22, x_55); -x_65 = lean_ctor_get(x_64, 0); -lean_inc(x_65); -x_66 = lean_ctor_get(x_64, 1); +x_65 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_8, x_64, x_20, x_21, x_22, x_23, x_56); +x_66 = lean_ctor_get(x_65, 0); lean_inc(x_66); -lean_dec(x_64); -x_67 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_33, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_18, x_24, x_3, x_5, x_4, x_1, x_16, x_17, x_6, x_2, x_65, x_19, x_20, x_21, x_22, x_66); +x_67 = lean_ctor_get(x_65, 1); +lean_inc(x_67); lean_dec(x_65); -return x_67; +x_68 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(x_34, x_9, x_10, x_11, x_8, x_12, x_13, x_14, x_15, x_19, x_25, x_3, x_5, x_16, x_4, x_1, x_17, x_18, x_6, x_2, x_66, x_20, x_21, x_22, x_23, x_67); +lean_dec(x_66); +return x_68; } } } else { -uint8_t x_68; -lean_dec(x_24); +uint8_t x_69; +lean_dec(x_25); +lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); @@ -74080,30 +74190,31 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_68 = !lean_is_exclusive(x_32); -if (x_68 == 0) +x_69 = !lean_is_exclusive(x_33); +if (x_69 == 0) { -return x_32; +return x_33; } else { -lean_object* x_69; lean_object* x_70; lean_object* x_71; -x_69 = lean_ctor_get(x_32, 0); -x_70 = lean_ctor_get(x_32, 1); +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_33, 0); +x_71 = lean_ctor_get(x_33, 1); +lean_inc(x_71); lean_inc(x_70); -lean_inc(x_69); -lean_dec(x_32); -x_71 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_71, 0, x_69); -lean_ctor_set(x_71, 1, x_70); -return x_71; +lean_dec(x_33); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +return x_72; } } } else { -uint8_t x_72; -lean_dec(x_24); +uint8_t x_73; +lean_dec(x_25); +lean_dec(x_23); lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); @@ -74122,28 +74233,28 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_72 = !lean_is_exclusive(x_27); -if (x_72 == 0) +x_73 = !lean_is_exclusive(x_28); +if (x_73 == 0) { -return x_27; +return x_28; } else { -lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_73 = lean_ctor_get(x_27, 0); -x_74 = lean_ctor_get(x_27, 1); +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_28, 0); +x_75 = lean_ctor_get(x_28, 1); +lean_inc(x_75); lean_inc(x_74); -lean_inc(x_73); -lean_dec(x_27); -x_75 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_75, 0, x_73); -lean_ctor_set(x_75, 1, x_74); -return x_75; +lean_dec(x_28); +x_76 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_76, 0, x_74); +lean_ctor_set(x_76, 1, x_75); +return x_76; } } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(lean_object* x_1, lean_object* x_2, size_t x_3, size_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21) { _start: { lean_object* x_22; @@ -74170,49 +74281,48 @@ lean_inc(x_5); x_25 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8(x_1, x_3, x_4, x_5, x_17, x_18, x_19, x_20, x_24); if (lean_obj_tag(x_25) == 0) { -lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; x_26 = lean_ctor_get(x_25, 0); lean_inc(x_26); x_27 = lean_ctor_get(x_25, 1); lean_inc(x_27); lean_dec(x_25); -x_28 = lean_array_get_size(x_23); -x_29 = lean_mk_empty_array_with_capacity(x_28); -x_30 = lean_unsigned_to_nat(0u); -x_31 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(x_5, x_23, x_23, x_28, x_30, lean_box(0), x_29, x_17, x_18, x_19, x_20, x_27); +x_28 = lean_array_get_size(x_5); +lean_inc(x_28); +x_29 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed), 2, 1); +lean_closure_set(x_29, 0, x_28); +x_30 = l_Array_ofFn___rarg(x_28, x_29); +x_31 = l_Array_zip___rarg(x_30, x_23); lean_dec(x_23); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 1); -lean_inc(x_33); -lean_dec(x_31); -x_34 = lean_box_usize(x_3); -x_35 = lean_box_usize(x_4); -x_36 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___boxed), 23, 17); -lean_closure_set(x_36, 0, x_1); -lean_closure_set(x_36, 1, x_34); -lean_closure_set(x_36, 2, x_35); -lean_closure_set(x_36, 3, x_5); -lean_closure_set(x_36, 4, x_6); -lean_closure_set(x_36, 5, x_7); -lean_closure_set(x_36, 6, x_8); -lean_closure_set(x_36, 7, x_9); -lean_closure_set(x_36, 8, x_10); -lean_closure_set(x_36, 9, x_11); -lean_closure_set(x_36, 10, x_12); -lean_closure_set(x_36, 11, x_13); -lean_closure_set(x_36, 12, x_14); -lean_closure_set(x_36, 13, x_2); -lean_closure_set(x_36, 14, x_26); -lean_closure_set(x_36, 15, x_15); -lean_closure_set(x_36, 16, x_16); -x_37 = l_Lean_instInhabitedExpr; -x_38 = l_Lean_Meta_withLocalDeclsD___at_Lean_Meta_Linear_Nat_withAbstractAtoms___spec__2___rarg(x_37, x_32, x_36, x_17, x_18, x_19, x_20, x_33); -return x_38; +lean_dec(x_30); +x_32 = lean_box_usize(x_3); +x_33 = lean_box_usize(x_4); +x_34 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___boxed), 24, 18); +lean_closure_set(x_34, 0, x_1); +lean_closure_set(x_34, 1, x_32); +lean_closure_set(x_34, 2, x_33); +lean_closure_set(x_34, 3, x_5); +lean_closure_set(x_34, 4, x_6); +lean_closure_set(x_34, 5, x_7); +lean_closure_set(x_34, 6, x_8); +lean_closure_set(x_34, 7, x_9); +lean_closure_set(x_34, 8, x_10); +lean_closure_set(x_34, 9, x_11); +lean_closure_set(x_34, 10, x_12); +lean_closure_set(x_34, 11, x_13); +lean_closure_set(x_34, 12, x_14); +lean_closure_set(x_34, 13, x_2); +lean_closure_set(x_34, 14, x_26); +lean_closure_set(x_34, 15, x_28); +lean_closure_set(x_34, 16, x_15); +lean_closure_set(x_34, 17, x_16); +x_35 = l_Lean_instInhabitedExpr; +x_36 = l_Lean_Meta_withLocalDeclsDND___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__5___rarg(x_35, x_31, x_34, x_17, x_18, x_19, x_20, x_27); +return x_36; } else { -uint8_t x_39; +uint8_t x_37; lean_dec(x_23); lean_dec(x_20); lean_dec(x_19); @@ -74232,29 +74342,29 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_39 = !lean_is_exclusive(x_25); -if (x_39 == 0) +x_37 = !lean_is_exclusive(x_25); +if (x_37 == 0) { return x_25; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_40 = lean_ctor_get(x_25, 0); -x_41 = lean_ctor_get(x_25, 1); -lean_inc(x_41); -lean_inc(x_40); +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_25, 0); +x_39 = lean_ctor_get(x_25, 1); +lean_inc(x_39); +lean_inc(x_38); lean_dec(x_25); -x_42 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -return x_42; +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } } else { -uint8_t x_43; +uint8_t x_41; lean_dec(x_20); lean_dec(x_19); lean_dec(x_18); @@ -74273,28 +74383,28 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_43 = !lean_is_exclusive(x_22); -if (x_43 == 0) +x_41 = !lean_is_exclusive(x_22); +if (x_41 == 0) { return x_22; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_22, 0); -x_45 = lean_ctor_get(x_22, 1); -lean_inc(x_45); -lean_inc(x_44); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_22, 0); +x_43 = lean_ctor_get(x_22, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_22); -x_46 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set(x_46, 1, x_45); -return x_46; +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; } } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1() { _start: { lean_object* x_1; @@ -74302,30 +74412,30 @@ x_1 = lean_mk_string_unchecked("brecMotiveTypes.size = positions.size\n\n - return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__4; -x_2 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1; +x_2 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1; x_3 = lean_string_append(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(970u); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; +x_3 = lean_unsigned_to_nat(964u); x_4 = lean_unsigned_to_nat(6u); -x_5 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2; +x_5 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, lean_object* x_5, lean_object* x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { _start: { lean_object* x_24; lean_object* x_25; uint8_t x_26; @@ -74352,7 +74462,7 @@ lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3; +x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3; x_28 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_27, x_19, x_20, x_21, x_22, x_23); return x_28; } @@ -74363,7 +74473,7 @@ x_29 = lean_array_size(x_3); x_30 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs___spec__1(x_29, x_4, x_3); x_31 = lean_box_usize(x_7); x_32 = lean_box_usize(x_4); -x_33 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___boxed), 21, 16); +x_33 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___boxed), 21, 16); lean_closure_set(x_33, 0, x_5); lean_closure_set(x_33, 1, x_6); lean_closure_set(x_33, 2, x_31); @@ -74380,13 +74490,13 @@ lean_closure_set(x_33, 12, x_14); lean_closure_set(x_33, 13, x_15); lean_closure_set(x_33, 14, x_16); lean_closure_set(x_33, 15, x_17); -x_34 = l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(x_30, x_33, x_19, x_20, x_21, x_22, x_23); +x_34 = l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(x_30, x_33, x_19, x_20, x_21, x_22, x_23); lean_dec(x_30); return x_34; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1() { _start: { lean_object* x_1; @@ -74394,7 +74504,7 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural_ return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2() { _start: { lean_object* x_1; @@ -74402,16 +74512,16 @@ x_1 = lean_mk_string_unchecked("brecMotiveTypes: ", 17, 17); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { _start: { size_t x_19; lean_object* x_20; @@ -74437,7 +74547,7 @@ x_24 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural_ x_25 = l_Array_ofFn___rarg(x_23, x_24); lean_dec(x_23); x_26 = l_Lean_Elab_Structural_instInhabitedRecArgInfo; -x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1; +x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1; x_28 = l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3(x_26, x_27, x_21, x_25); x_29 = 1; x_30 = lean_unsigned_to_nat(0u); @@ -74472,7 +74582,7 @@ x_39 = lean_ctor_get(x_36, 1); lean_inc(x_39); lean_dec(x_36); x_40 = lean_box(0); -x_41 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_40, x_14, x_15, x_16, x_17, x_39); +x_41 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_40, x_14, x_15, x_16, x_17, x_39); return x_41; } else @@ -74490,7 +74600,7 @@ x_45 = lean_array_to_list(x_33); x_46 = lean_box(0); x_47 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_45, x_46); x_48 = l_Lean_MessageData_ofList(x_47); -x_49 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3; +x_49 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3; lean_ctor_set_tag(x_36, 7); lean_ctor_set(x_36, 1, x_48); lean_ctor_set(x_36, 0, x_49); @@ -74504,7 +74614,7 @@ lean_inc(x_53); x_54 = lean_ctor_get(x_52, 1); lean_inc(x_54); lean_dec(x_52); -x_55 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_53, x_14, x_15, x_16, x_17, x_54); +x_55 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_53, x_14, x_15, x_16, x_17, x_54); lean_dec(x_53); return x_55; } @@ -74519,7 +74629,7 @@ x_57 = lean_array_to_list(x_33); x_58 = lean_box(0); x_59 = l_List_mapTR_loop___at_Lean_MessageData_instCoeListExpr___spec__1(x_57, x_58); x_60 = l_Lean_MessageData_ofList(x_59); -x_61 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__3; +x_61 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3; x_62 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_62, 0, x_61); lean_ctor_set(x_62, 1, x_60); @@ -74533,7 +74643,7 @@ lean_inc(x_66); x_67 = lean_ctor_get(x_65, 1); lean_inc(x_67); lean_dec(x_65); -x_68 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_66, x_14, x_15, x_16, x_17, x_67); +x_68 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_33, x_28, x_9, x_5, x_3, x_10, x_19, x_1, x_21, x_35, x_11, x_31, x_8, x_13, x_12, x_7, x_4, x_66, x_14, x_15, x_16, x_17, x_67); lean_dec(x_66); return x_68; } @@ -74617,7 +74727,7 @@ return x_76; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1() { _start: { lean_object* x_1; @@ -74625,16 +74735,16 @@ x_1 = lean_mk_string_unchecked("Too few universe parameters in .brecOn applicati return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20) { _start: { if (lean_obj_tag(x_1) == 0) @@ -74652,7 +74762,7 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); x_21 = l_Lean_indentExpr(x_2); -x_22 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2; +x_22 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2; x_23 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_23, 0, x_22); lean_ctor_set(x_23, 1, x_21); @@ -74715,7 +74825,7 @@ lean_inc(x_19); lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); -x_41 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(x_40, x_8, x_38, x_16, x_17, x_18, x_19, x_39); +x_41 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(x_40, x_8, x_38, x_16, x_17, x_18, x_19, x_39); if (lean_obj_tag(x_41) == 0) { lean_object* x_42; lean_object* x_43; lean_object* x_44; @@ -74724,7 +74834,7 @@ lean_inc(x_42); x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); lean_dec(x_41); -x_44 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_5, x_6, x_7, x_31, x_8, x_3, x_28, x_9, x_10, x_11, x_12, x_13, x_42, x_16, x_17, x_18, x_19, x_43); +x_44 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_5, x_6, x_7, x_31, x_8, x_3, x_28, x_9, x_10, x_11, x_12, x_13, x_42, x_16, x_17, x_18, x_19, x_43); lean_dec(x_3); return x_44; } @@ -74852,7 +74962,7 @@ lean_inc(x_19); lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); -x_67 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(x_66, x_8, x_64, x_16, x_17, x_18, x_19, x_65); +x_67 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(x_66, x_8, x_64, x_16, x_17, x_18, x_19, x_65); if (lean_obj_tag(x_67) == 0) { lean_object* x_68; lean_object* x_69; lean_object* x_70; @@ -74861,7 +74971,7 @@ lean_inc(x_68); x_69 = lean_ctor_get(x_67, 1); lean_inc(x_69); lean_dec(x_67); -x_70 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_5, x_6, x_7, x_56, x_8, x_3, x_53, x_9, x_10, x_11, x_12, x_13, x_68, x_16, x_17, x_18, x_19, x_69); +x_70 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_5, x_6, x_7, x_56, x_8, x_3, x_53, x_9, x_10, x_11, x_12, x_13, x_68, x_16, x_17, x_18, x_19, x_69); lean_dec(x_3); return x_70; } @@ -74948,7 +75058,7 @@ return x_78; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__1() { _start: { lean_object* x_1; @@ -74956,16 +75066,16 @@ x_1 = lean_mk_string_unchecked("the extra arguments to the brecOn application ar return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21) { _start: { lean_object* x_22; lean_object* x_23; uint8_t x_24; @@ -74977,7 +75087,7 @@ if (x_24 == 0) lean_object* x_25; lean_object* x_26; lean_dec(x_22); x_25 = lean_box(0); -x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_25, x_17, x_18, x_19, x_20, x_21); +x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_25, x_17, x_18, x_19, x_20, x_21); return x_26; } else @@ -74990,7 +75100,7 @@ if (x_28 == 0) { lean_object* x_29; lean_object* x_30; x_29 = lean_box(0); -x_30 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_29, x_17, x_18, x_19, x_20, x_21); +x_30 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_29, x_17, x_18, x_19, x_20, x_21); return x_30; } else @@ -75009,7 +75119,7 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); x_31 = l_Lean_indentExpr(x_2); -x_32 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2; +x_32 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__2; x_33 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); @@ -75044,7 +75154,7 @@ return x_40; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1() { _start: { lean_object* x_1; @@ -75052,16 +75162,16 @@ x_1 = lean_mk_string_unchecked("the indices and major argument of the brecOn app return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__1; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, size_t x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { _start: { lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; @@ -75106,7 +75216,7 @@ if (x_37 == 0) lean_object* x_38; lean_object* x_39; lean_dec(x_36); x_38 = lean_box(0); -x_39 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_3, x_4, x_5, x_21, x_6, x_7, x_8, x_9, x_22, x_10, x_11, x_29, x_32, x_1, x_35, x_38, x_13, x_14, x_15, x_16, x_17); +x_39 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(x_3, x_4, x_5, x_21, x_6, x_7, x_8, x_9, x_22, x_10, x_11, x_29, x_32, x_1, x_35, x_38, x_13, x_14, x_15, x_16, x_17); lean_dec(x_35); return x_39; } @@ -75120,7 +75230,7 @@ if (x_41 == 0) { lean_object* x_42; lean_object* x_43; x_42 = lean_box(0); -x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_3, x_4, x_5, x_21, x_6, x_7, x_8, x_9, x_22, x_10, x_11, x_29, x_32, x_1, x_35, x_42, x_13, x_14, x_15, x_16, x_17); +x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(x_3, x_4, x_5, x_21, x_6, x_7, x_8, x_9, x_22, x_10, x_11, x_29, x_32, x_1, x_35, x_42, x_13, x_14, x_15, x_16, x_17); lean_dec(x_35); return x_43; } @@ -75141,7 +75251,7 @@ lean_dec(x_5); lean_dec(x_3); lean_dec(x_1); x_44 = l_Lean_indentExpr(x_4); -x_45 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___closed__2; +x_45 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2; x_46 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_46, 0, x_45); lean_ctor_set(x_46, 1, x_44); @@ -75176,20 +75286,20 @@ return x_53; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__9___closed__1; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1; -x_3 = lean_unsigned_to_nat(923u); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1; +x_3 = lean_unsigned_to_nat(917u); x_4 = lean_unsigned_to_nat(41u); x_5 = l_List_forIn_x27_loop___at_Lean_Tactic_FunInd_foldAndCollect___spec__6___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2() { _start: { lean_object* x_1; @@ -75197,7 +75307,7 @@ x_1 = lean_mk_string_unchecked("rec", 3, 3); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3() { _start: { lean_object* x_1; @@ -75205,16 +75315,16 @@ x_1 = lean_mk_string_unchecked("insufficient arguments to .brecOn:", 34, 34); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, size_t x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { if (lean_obj_tag(x_1) == 1) @@ -75233,7 +75343,7 @@ lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); -x_21 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2; +x_21 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2; x_22 = l_Lean_Name_str___override(x_17, x_21); x_23 = l_Lean_getConstInfoRec___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__1(x_22, x_12, x_13, x_14, x_15, x_20); if (lean_obj_tag(x_23) == 0) @@ -75269,7 +75379,7 @@ if (x_35 == 0) { lean_object* x_36; lean_object* x_37; x_36 = lean_box(0); -x_37 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(x_24, x_2, x_3, x_4, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_36, x_12, x_13, x_14, x_15, x_25); +x_37 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(x_24, x_2, x_3, x_4, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_36, x_12, x_13, x_14, x_15, x_25); return x_37; } else @@ -75285,7 +75395,7 @@ lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); x_38 = l_Lean_indentExpr(x_4); -x_39 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4; +x_39 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4; x_40 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_40, 0, x_39); lean_ctor_set(x_40, 1, x_38); @@ -75402,13 +75512,13 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_56 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1; +x_56 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1; x_57 = l_panic___at_Lean_Elab_Structural_IndGroupInst_nestedTypeFormers___spec__4(x_56, x_12, x_13, x_14, x_15, x_16); return x_57; } } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1() { _start: { lean_object* x_1; @@ -75416,16 +75526,16 @@ x_1 = lean_mk_string_unchecked(": unexpected body:", 18, 18); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3() { _start: { lean_object* x_1; @@ -75433,21 +75543,21 @@ x_1 = lean_mk_string_unchecked(": expected .brecOn application, found:", 38, 38) return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4() { +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3; +x_1 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { lean_object* x_14; lean_object* x_15; lean_object* x_16; x_14 = l_Lean_Expr_getAppFn(x_8); -x_15 = l_Lean_Tactic_FunInd_stripPProdProjs(x_14); +x_15 = l_Lean_Meta_PProdN_stripProjs(x_14); lean_dec(x_14); x_16 = l_Lean_Expr_getAppFn(x_15); if (lean_obj_tag(x_16) == 4) @@ -75477,7 +75587,7 @@ lean_inc(x_8); x_29 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_8, x_27, x_28); x_30 = l_Array_append___rarg(x_25, x_29); lean_dec(x_29); -x_31 = l_Lean_Tactic_FunInd_stripPProdProjs(x_8); +x_31 = l_Lean_Meta_PProdN_stripProjs(x_8); lean_dec(x_8); x_32 = lean_st_ref_get(x_12, x_13); x_33 = !lean_is_exclusive(x_32); @@ -75513,7 +75623,7 @@ x_42 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; lean_ctor_set_tag(x_32, 7); lean_ctor_set(x_32, 1, x_41); lean_ctor_set(x_32, 0, x_42); -x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4; +x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4; x_44 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_44, 0, x_32); lean_ctor_set(x_44, 1, x_43); @@ -75554,7 +75664,7 @@ lean_object* x_53; lean_object* x_54; lean_free_object(x_32); lean_dec(x_1); x_53 = lean_box(0); -x_54 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(x_17, x_30, x_18, x_31, x_3, x_4, x_5, x_6, x_7, x_21, x_53, x_9, x_10, x_11, x_12, x_35); +x_54 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(x_17, x_30, x_18, x_31, x_3, x_4, x_5, x_6, x_7, x_21, x_53, x_9, x_10, x_11, x_12, x_35); return x_54; } } @@ -75593,7 +75703,7 @@ x_63 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; x_64 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_64, 0, x_63); lean_ctor_set(x_64, 1, x_62); -x_65 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4; +x_65 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4; x_66 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_66, 0, x_64); lean_ctor_set(x_66, 1, x_65); @@ -75635,7 +75745,7 @@ else lean_object* x_75; lean_object* x_76; lean_dec(x_1); x_75 = lean_box(0); -x_76 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(x_17, x_30, x_18, x_31, x_3, x_4, x_5, x_6, x_7, x_21, x_75, x_9, x_10, x_11, x_12, x_56); +x_76 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(x_17, x_30, x_18, x_31, x_3, x_4, x_5, x_6, x_7, x_21, x_75, x_9, x_10, x_11, x_12, x_56); return x_76; } } @@ -75661,7 +75771,7 @@ x_80 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; x_81 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_81, 0, x_80); lean_ctor_set(x_81, 1, x_79); -x_82 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2; +x_82 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2; x_83 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_83, 0, x_81); lean_ctor_set(x_83, 1, x_82); @@ -75681,7 +75791,7 @@ return x_87; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; lean_object* x_14; @@ -75701,7 +75811,7 @@ x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); lean_dec(x_14); x_17 = lean_box_usize(x_5); -x_18 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___boxed), 13, 6); +x_18 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed), 13, 6); lean_closure_set(x_18, 0, x_2); lean_closure_set(x_18, 1, x_1); lean_closure_set(x_18, 2, x_3); @@ -75745,7 +75855,7 @@ return x_24; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; @@ -75789,7 +75899,7 @@ lean_dec(x_2); x_23 = lean_ctor_get(x_22, 1); lean_inc(x_23); lean_dec(x_22); -x_24 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25(x_21, x_23, x_18); +x_24 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(x_21, x_23, x_18); lean_dec(x_21); x_25 = lean_array_get_size(x_3); x_26 = lean_unsigned_to_nat(1u); @@ -76398,7 +76508,7 @@ x_15 = l_Lean_Tactic_FunInd_deriveInductionStructural___boxed__const__1; lean_inc(x_2); lean_inc(x_13); lean_inc(x_14); -x_16 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed), 12, 5); +x_16 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17___boxed), 12, 5); lean_closure_set(x_16, 0, x_14); lean_closure_set(x_16, 1, x_13); lean_closure_set(x_16, 2, x_11); @@ -76467,7 +76577,7 @@ lean_inc(x_34); x_35 = lean_ctor_get(x_33, 1); lean_inc(x_35); lean_dec(x_33); -x_36 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(x_19, x_13, x_1, x_34, x_3, x_4, x_5, x_6, x_35); +x_36 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18(x_19, x_13, x_1, x_34, x_3, x_4, x_5, x_6, x_35); lean_dec(x_34); lean_dec(x_1); return x_36; @@ -76509,7 +76619,7 @@ x_41 = lean_ctor_get(x_21, 1); lean_inc(x_41); lean_dec(x_21); x_42 = lean_box(0); -x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(x_19, x_13, x_1, x_42, x_3, x_4, x_5, x_6, x_41); +x_43 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18(x_19, x_13, x_1, x_42, x_3, x_4, x_5, x_6, x_41); lean_dec(x_1); return x_43; } @@ -76747,22 +76857,7 @@ lean_dec(x_1); return x_12; } } -LEAN_EXPORT lean_object* l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { size_t x_5; size_t x_6; lean_object* x_7; @@ -76770,16 +76865,16 @@ x_5 = lean_unbox_usize(x_2); lean_dec(x_2); x_6 = lean_unbox_usize(x_3); lean_dec(x_3); -x_7 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(x_1, x_5, x_6, x_4); +x_7 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9(x_1, x_5, x_6, x_4); lean_dec(x_1); return x_7; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); @@ -76789,7 +76884,7 @@ lean_dec(x_3); return x_10; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { size_t x_9; size_t x_10; lean_object* x_11; @@ -76797,11 +76892,11 @@ x_9 = lean_unbox_usize(x_1); lean_dec(x_1); x_10 = lean_unbox_usize(x_2); lean_dec(x_2); -x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__10(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); return x_11; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { size_t x_7; size_t x_8; lean_object* x_9; @@ -76809,13 +76904,13 @@ x_7 = lean_unbox_usize(x_4); lean_dec(x_4); x_8 = lean_unbox_usize(x_5); lean_dec(x_5); -x_9 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(x_1, x_2, x_3, x_7, x_8, x_6); +x_9 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13(x_1, x_2, x_3, x_7, x_8, x_6); lean_dec(x_3); lean_dec(x_2); return x_9; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { size_t x_13; size_t x_14; lean_object* x_15; @@ -76823,52 +76918,52 @@ x_13 = lean_unbox_usize(x_5); lean_dec(x_5); x_14 = lean_unbox_usize(x_6); lean_dec(x_6); -x_15 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(x_1, x_2, x_3, x_4, x_13, x_14, x_7, x_8, x_9, x_10, x_11, x_12); +x_15 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__14(x_1, x_2, x_3, x_4, x_13, x_14, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_4); lean_dec(x_3); return x_15; } } -LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); return x_11; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { lean_object* x_16; -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); lean_dec(x_8); lean_dec(x_1); return x_16; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { lean_object* x_16; -x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +x_16 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); lean_dec(x_2); return x_16; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { lean_object* x_15; -x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); lean_dec(x_7); return x_15; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { size_t x_16; size_t x_17; lean_object* x_18; @@ -76876,34 +76971,34 @@ x_16 = lean_unbox_usize(x_6); lean_dec(x_6); x_17 = lean_unbox_usize(x_7); lean_dec(x_7); -x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(x_1, x_2, x_3, x_4, x_5, x_16, x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +x_18 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15(x_1, x_2, x_3, x_4, x_5, x_16, x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); return x_18; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__1(x_1); +x_2 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__1(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; -x_6 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2(x_1, x_2, x_3, x_4, x_5); +x_6 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2(x_1, x_2, x_3, x_4, x_5); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); return x_6; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -76929,14 +77024,14 @@ x_19 = lean_unbox_usize(x_9); lean_dec(x_9); x_20 = lean_unbox_usize(x_10); lean_dec(x_10); -x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_19, x_20, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +x_21 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_19, x_20, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); return x_21; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { size_t x_9; size_t x_10; lean_object* x_11; @@ -76944,7 +77039,7 @@ x_9 = lean_unbox_usize(x_6); lean_dec(x_6); x_10 = lean_unbox_usize(x_7); lean_dec(x_7); -x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(x_1, x_2, x_3, x_4, x_5, x_9, x_10, x_8); +x_11 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17(x_1, x_2, x_3, x_4, x_5, x_9, x_10, x_8); lean_dec(x_8); lean_dec(x_5); lean_dec(x_4); @@ -76954,29 +77049,29 @@ lean_dec(x_1); return x_11; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__1(x_1, x_2); +x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__1(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__2(x_1, x_2); +x_3 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__2(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -76999,7 +77094,7 @@ _start: size_t x_18; lean_object* x_19; x_18 = lean_unbox_usize(x_10); lean_dec(x_10); -x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_19 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_18, x_11, x_12, x_13, x_14, x_15, x_16, x_17); lean_dec(x_12); lean_dec(x_11); lean_dec(x_7); @@ -77008,7 +77103,7 @@ lean_dec(x_3); return x_19; } } -LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77037,7 +77132,7 @@ x_21 = lean_unbox_usize(x_12); lean_dec(x_12); x_22 = lean_unbox_usize(x_13); lean_dec(x_13); -x_23 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_21, x_22, x_14, x_15, x_16, x_17, x_18, x_19); +x_23 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18(x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_21, x_22, x_14, x_15, x_16, x_17, x_18, x_19); lean_dec(x_11); lean_dec(x_10); lean_dec(x_3); @@ -77045,6 +77140,20 @@ lean_dec(x_2); return x_23; } } +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +size_t x_6; size_t x_7; lean_object* x_8; +x_6 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_7 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_8 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(x_1, x_2, x_6, x_7, x_5); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__21___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { @@ -77073,30 +77182,16 @@ lean_dec(x_1); return x_8; } } -LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -size_t x_6; size_t x_7; lean_object* x_8; -x_6 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_7 = lean_unbox_usize(x_4); -lean_dec(x_4); -x_8 = l_Array_foldlMUnsafe_fold___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(x_1, x_2, x_6, x_7, x_5); -lean_dec(x_2); -lean_dec(x_1); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__20(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Lean_Meta_withErasedFVars___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_1); return x_8; } } -LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { size_t x_9; size_t x_10; lean_object* x_11; @@ -77104,15 +77199,15 @@ x_9 = lean_unbox_usize(x_1); lean_dec(x_1); x_10 = lean_unbox_usize(x_2); lean_dec(x_2); -x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); +x_11 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__23(x_9, x_10, x_3, x_4, x_5, x_6, x_7, x_8); return x_11; } } -LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__25(x_1, x_2, x_3); +x_4 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__24(x_1, x_2, x_3); lean_dec(x_1); return x_4; } @@ -77126,11 +77221,21 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); @@ -77138,39 +77243,6 @@ lean_dec(x_4); return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3___boxed(lean_object** _args) { -lean_object* x_1 = _args[0]; -lean_object* x_2 = _args[1]; -lean_object* x_3 = _args[2]; -lean_object* x_4 = _args[3]; -lean_object* x_5 = _args[4]; -lean_object* x_6 = _args[5]; -lean_object* x_7 = _args[6]; -lean_object* x_8 = _args[7]; -lean_object* x_9 = _args[8]; -lean_object* x_10 = _args[9]; -lean_object* x_11 = _args[10]; -lean_object* x_12 = _args[11]; -lean_object* x_13 = _args[12]; -lean_object* x_14 = _args[13]; -lean_object* x_15 = _args[14]; -lean_object* x_16 = _args[15]; -lean_object* x_17 = _args[16]; -lean_object* x_18 = _args[17]; -_start: -{ -size_t x_19; size_t x_20; lean_object* x_21; -x_19 = lean_unbox_usize(x_4); -lean_dec(x_4); -x_20 = lean_unbox_usize(x_12); -lean_dec(x_12); -x_21 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__3(x_1, x_2, x_3, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_20, x_13, x_14, x_15, x_16, x_17, x_18); -lean_dec(x_11); -lean_dec(x_5); -lean_dec(x_2); -return x_21; -} -} LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; @@ -77191,20 +77263,18 @@ lean_object* x_16 = _args[15]; lean_object* x_17 = _args[16]; lean_object* x_18 = _args[17]; lean_object* x_19 = _args[18]; -lean_object* x_20 = _args[19]; -lean_object* x_21 = _args[20]; -lean_object* x_22 = _args[21]; _start: { -size_t x_23; size_t x_24; lean_object* x_25; -x_23 = lean_unbox_usize(x_4); +size_t x_20; size_t x_21; lean_object* x_22; +x_20 = lean_unbox_usize(x_4); lean_dec(x_4); -x_24 = lean_unbox_usize(x_12); +x_21 = lean_unbox_usize(x_13); +lean_dec(x_13); +x_22 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_1, x_2, x_3, x_20, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_21, x_14, x_15, x_16, x_17, x_18, x_19); lean_dec(x_12); -x_25 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4(x_1, x_2, x_3, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_24, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22); -lean_dec(x_17); -lean_dec(x_15); -return x_25; +lean_dec(x_6); +lean_dec(x_5); +return x_22; } } LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___boxed(lean_object** _args) { @@ -77234,12 +77304,13 @@ lean_object* x_23 = _args[22]; _start: { size_t x_24; size_t x_25; lean_object* x_26; -x_24 = lean_unbox_usize(x_9); -lean_dec(x_9); -x_25 = lean_unbox_usize(x_17); -lean_dec(x_17); -x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_24, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_25, x_18, x_19, x_20, x_21, x_22, x_23); +x_24 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_25 = lean_unbox_usize(x_13); +lean_dec(x_13); +x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5(x_1, x_2, x_3, x_24, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_25, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23); lean_dec(x_18); +lean_dec(x_16); return x_26; } } @@ -77268,18 +77339,16 @@ lean_object* x_21 = _args[20]; lean_object* x_22 = _args[21]; lean_object* x_23 = _args[22]; lean_object* x_24 = _args[23]; -lean_object* x_25 = _args[24]; _start: { -size_t x_26; size_t x_27; lean_object* x_28; -x_26 = lean_unbox_usize(x_12); -lean_dec(x_12); -x_27 = lean_unbox_usize(x_19); +size_t x_25; size_t x_26; lean_object* x_27; +x_25 = lean_unbox_usize(x_9); +lean_dec(x_9); +x_26 = lean_unbox_usize(x_18); +lean_dec(x_18); +x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_25, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_26, x_19, x_20, x_21, x_22, x_23, x_24); lean_dec(x_19); -x_28 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_26, x_13, x_14, x_15, x_16, x_17, x_18, x_27, x_20, x_21, x_22, x_23, x_24, x_25); -lean_dec(x_20); -lean_dec(x_2); -return x_28; +return x_27; } } LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___boxed(lean_object** _args) { @@ -77306,17 +77375,20 @@ lean_object* x_20 = _args[19]; lean_object* x_21 = _args[20]; lean_object* x_22 = _args[21]; lean_object* x_23 = _args[22]; +lean_object* x_24 = _args[23]; +lean_object* x_25 = _args[24]; +lean_object* x_26 = _args[25]; _start: { -size_t x_24; size_t x_25; lean_object* x_26; -x_24 = lean_unbox_usize(x_2); +size_t x_27; size_t x_28; lean_object* x_29; +x_27 = lean_unbox_usize(x_12); +lean_dec(x_12); +x_28 = lean_unbox_usize(x_20); +lean_dec(x_20); +x_29 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_27, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_28, x_21, x_22, x_23, x_24, x_25, x_26); +lean_dec(x_21); lean_dec(x_2); -x_25 = lean_unbox_usize(x_3); -lean_dec(x_3); -x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7(x_1, x_24, x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23); -lean_dec(x_9); -lean_dec(x_7); -return x_26; +return x_29; } } LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___boxed(lean_object** _args) { @@ -77341,6 +77413,44 @@ lean_object* x_18 = _args[17]; lean_object* x_19 = _args[18]; lean_object* x_20 = _args[19]; lean_object* x_21 = _args[20]; +lean_object* x_22 = _args[21]; +lean_object* x_23 = _args[22]; +lean_object* x_24 = _args[23]; +_start: +{ +size_t x_25; size_t x_26; lean_object* x_27; +x_25 = lean_unbox_usize(x_2); +lean_dec(x_2); +x_26 = lean_unbox_usize(x_3); +lean_dec(x_3); +x_27 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(x_1, x_25, x_26, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23, x_24); +lean_dec(x_9); +lean_dec(x_7); +return x_27; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +lean_object* x_21 = _args[20]; _start: { size_t x_22; size_t x_23; lean_object* x_24; @@ -77348,11 +77458,11 @@ x_22 = lean_unbox_usize(x_3); lean_dec(x_3); x_23 = lean_unbox_usize(x_4); lean_dec(x_4); -x_24 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8(x_1, x_2, x_22, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21); +x_24 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(x_1, x_2, x_22, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21); return x_24; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77383,12 +77493,12 @@ x_24 = lean_unbox_usize(x_4); lean_dec(x_4); x_25 = lean_unbox_usize(x_7); lean_dec(x_7); -x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9(x_1, x_2, x_3, x_24, x_5, x_6, x_25, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23); +x_26 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_1, x_2, x_3, x_24, x_5, x_6, x_25, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23); lean_dec(x_18); return x_26; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77412,12 +77522,12 @@ _start: size_t x_19; lean_object* x_20; x_19 = lean_unbox_usize(x_5); lean_dec(x_5); -x_20 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10(x_1, x_2, x_3, x_4, x_19, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +x_20 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_1, x_2, x_3, x_4, x_19, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); lean_dec(x_6); return x_20; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77443,12 +77553,12 @@ _start: size_t x_21; lean_object* x_22; x_21 = lean_unbox_usize(x_8); lean_dec(x_8); -x_22 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_21, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +x_22 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_21, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); lean_dec(x_15); return x_22; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77475,13 +77585,13 @@ _start: size_t x_22; lean_object* x_23; x_22 = lean_unbox_usize(x_8); lean_dec(x_8); -x_23 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_22, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21); +x_23 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_22, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21); lean_dec(x_16); lean_dec(x_15); return x_23; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13___boxed(lean_object** _args) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; lean_object* x_3 = _args[2]; @@ -77504,53 +77614,1557 @@ _start: size_t x_18; lean_object* x_19; x_18 = lean_unbox_usize(x_9); lean_dec(x_9); -x_19 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__13(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_18, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +x_19 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_18, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); lean_dec(x_12); return x_19; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { size_t x_17; lean_object* x_18; x_17 = lean_unbox_usize(x_8); lean_dec(x_8); -x_18 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_18 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_17, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); lean_dec(x_11); return x_18; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { size_t x_14; lean_object* x_15; x_14 = lean_unbox_usize(x_6); lean_dec(x_6); -x_15 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15(x_1, x_2, x_3, x_4, x_5, x_14, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_15 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(x_1, x_2, x_3, x_4, x_5, x_14, x_7, x_8, x_9, x_10, x_11, x_12, x_13); return x_15; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { size_t x_13; lean_object* x_14; x_13 = lean_unbox_usize(x_5); lean_dec(x_5); -x_14 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16(x_1, x_2, x_3, x_4, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_14 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(x_1, x_2, x_3, x_4, x_13, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_7); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; -x_10 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_10 = l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_4); lean_dec(x_3); return x_10; } } +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_2) == 0) +{ +lean_object* x_4; +x_4 = l_List_reverse___rarg(x_3); +return x_4; +} +else +{ +uint8_t x_5; +x_5 = !lean_is_exclusive(x_2); +if (x_5 == 0) +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = lean_ctor_get(x_2, 0); +x_7 = lean_ctor_get(x_2, 1); +x_8 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_6); +if (x_8 == 0) +{ +lean_free_object(x_2); +lean_dec(x_6); +x_2 = x_7; +goto _start; +} +else +{ +lean_ctor_set(x_2, 1, x_3); +{ +lean_object* _tmp_1 = x_7; +lean_object* _tmp_2 = x_2; +x_2 = _tmp_1; +x_3 = _tmp_2; +} +goto _start; +} +} +else +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_2, 0); +x_12 = lean_ctor_get(x_2, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_2); +x_13 = l_Array_contains___at_Lean_registerInternalExceptionId___spec__1(x_1, x_11); +if (x_13 == 0) +{ +lean_dec(x_11); +x_2 = x_12; +goto _start; +} +else +{ +lean_object* x_15; +x_15 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_15, 0, x_11); +lean_ctor_set(x_15, 1, x_3); +x_2 = x_12; +x_3 = x_15; +goto _start; +} +} +} +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__13___closed__2; +x_2 = l_Lean_Expr_sort___override(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; uint8_t x_10; uint8_t x_11; lean_object* x_12; +x_8 = l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1; +x_9 = 0; +x_10 = 1; +x_11 = 1; +x_12 = l_Lean_Meta_mkForallFVars(x_1, x_8, x_9, x_10, x_11, x_3, x_4, x_5, x_6, x_7); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_12 = l_Lean_Expr_fvarId_x21(x_4); +lean_inc(x_12); +x_13 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_1); +x_14 = lean_array_mk(x_13); +x_15 = l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1; +lean_inc(x_12); +x_16 = l_Lean_Tactic_FunInd_buildInductionBody(x_14, x_2, x_12, x_12, x_15, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_16; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fakeIH", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Unit", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_inc(x_1); +x_9 = l_Lean_mkAppN(x_1, x_2); +x_10 = lean_box(0); +x_11 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__2___boxed), 11, 3); +lean_closure_set(x_11, 0, x_10); +lean_closure_set(x_11, 1, x_9); +lean_closure_set(x_11, 2, x_3); +x_12 = l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2; +x_13 = 0; +x_14 = l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5; +x_15 = 0; +x_16 = lean_box(x_13); +x_17 = lean_box(x_15); +x_18 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at_Lean_Tactic_FunInd_buildInductionBody___spec__2___rarg___boxed), 12, 5); +lean_closure_set(x_18, 0, x_12); +lean_closure_set(x_18, 1, x_16); +lean_closure_set(x_18, 2, x_14); +lean_closure_set(x_18, 3, x_11); +lean_closure_set(x_18, 4, x_17); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_19 = l_Lean_Tactic_FunInd_M2_run___rarg(x_18, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = !lean_is_exclusive(x_20); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; uint8_t x_26; uint8_t x_27; lean_object* x_28; +x_23 = lean_ctor_get(x_20, 0); +x_24 = lean_ctor_get(x_20, 1); +x_25 = 0; +x_26 = 1; +x_27 = 1; +x_28 = l_Lean_Meta_mkLambdaFVars(x_2, x_23, x_25, x_26, x_25, x_27, x_4, x_5, x_6, x_7, x_21); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l_Lean_Expr_fvarId_x21(x_1); +lean_inc(x_4); +x_32 = l_Lean_FVarId_getDecl(x_31, x_4, x_5, x_6, x_7, x_30); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_LocalDecl_index(x_33); +lean_dec(x_33); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_36 = l_Lean_Tactic_FunInd_abstractIndependentMVars(x_24, x_35, x_29, x_4, x_5, x_6, x_7, x_34); +if (lean_obj_tag(x_36) == 0) +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_37 = lean_ctor_get(x_36, 0); +lean_inc(x_37); +x_38 = lean_ctor_get(x_36, 1); +lean_inc(x_38); +lean_dec(x_36); +lean_ctor_set_tag(x_20, 1); +lean_ctor_set(x_20, 1, x_10); +lean_ctor_set(x_20, 0, x_1); +x_39 = lean_array_mk(x_20); +x_40 = l_Lean_Meta_mkLambdaFVars(x_39, x_37, x_25, x_26, x_25, x_27, x_4, x_5, x_6, x_7, x_38); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_39); +if (lean_obj_tag(x_40) == 0) +{ +uint8_t x_41; +x_41 = !lean_is_exclusive(x_40); +if (x_41 == 0) +{ +return x_40; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_40, 0); +x_43 = lean_ctor_get(x_40, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_40); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +else +{ +uint8_t x_45; +x_45 = !lean_is_exclusive(x_40); +if (x_45 == 0) +{ +return x_40; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_40, 0); +x_47 = lean_ctor_get(x_40, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_40); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +uint8_t x_49; +lean_free_object(x_20); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_49 = !lean_is_exclusive(x_36); +if (x_49 == 0) +{ +return x_36; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_36, 0); +x_51 = lean_ctor_get(x_36, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_36); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +else +{ +uint8_t x_53; +lean_dec(x_29); +lean_free_object(x_20); +lean_dec(x_24); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_32); +if (x_53 == 0) +{ +return x_32; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_32, 0); +x_55 = lean_ctor_get(x_32, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_32); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_free_object(x_20); +lean_dec(x_24); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_57 = !lean_is_exclusive(x_28); +if (x_57 == 0) +{ +return x_28; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_28, 0); +x_59 = lean_ctor_get(x_28, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_28); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +else +{ +lean_object* x_61; lean_object* x_62; uint8_t x_63; uint8_t x_64; uint8_t x_65; lean_object* x_66; +x_61 = lean_ctor_get(x_20, 0); +x_62 = lean_ctor_get(x_20, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_20); +x_63 = 0; +x_64 = 1; +x_65 = 1; +x_66 = l_Lean_Meta_mkLambdaFVars(x_2, x_61, x_63, x_64, x_63, x_65, x_4, x_5, x_6, x_7, x_21); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +x_68 = lean_ctor_get(x_66, 1); +lean_inc(x_68); +lean_dec(x_66); +x_69 = l_Lean_Expr_fvarId_x21(x_1); +lean_inc(x_4); +x_70 = l_Lean_FVarId_getDecl(x_69, x_4, x_5, x_6, x_7, x_68); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +lean_dec(x_70); +x_73 = l_Lean_LocalDecl_index(x_71); +lean_dec(x_71); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_74 = l_Lean_Tactic_FunInd_abstractIndependentMVars(x_62, x_73, x_67, x_4, x_5, x_6, x_7, x_72); +if (lean_obj_tag(x_74) == 0) +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +lean_dec(x_74); +x_77 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_77, 0, x_1); +lean_ctor_set(x_77, 1, x_10); +x_78 = lean_array_mk(x_77); +x_79 = l_Lean_Meta_mkLambdaFVars(x_78, x_75, x_63, x_64, x_63, x_65, x_4, x_5, x_6, x_7, x_76); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_78); +if (lean_obj_tag(x_79) == 0) +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_80 = lean_ctor_get(x_79, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_79, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_79)) { + lean_ctor_release(x_79, 0); + lean_ctor_release(x_79, 1); + x_82 = x_79; +} else { + lean_dec_ref(x_79); + x_82 = lean_box(0); +} +if (lean_is_scalar(x_82)) { + x_83 = lean_alloc_ctor(0, 2, 0); +} else { + x_83 = x_82; +} +lean_ctor_set(x_83, 0, x_80); +lean_ctor_set(x_83, 1, x_81); +return x_83; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_84 = lean_ctor_get(x_79, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_79, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_79)) { + lean_ctor_release(x_79, 0); + lean_ctor_release(x_79, 1); + x_86 = x_79; +} else { + lean_dec_ref(x_79); + x_86 = lean_box(0); +} +if (lean_is_scalar(x_86)) { + x_87 = lean_alloc_ctor(1, 2, 0); +} else { + x_87 = x_86; +} +lean_ctor_set(x_87, 0, x_84); +lean_ctor_set(x_87, 1, x_85); +return x_87; +} +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_88 = lean_ctor_get(x_74, 0); +lean_inc(x_88); +x_89 = lean_ctor_get(x_74, 1); +lean_inc(x_89); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + x_90 = x_74; +} else { + lean_dec_ref(x_74); + x_90 = lean_box(0); +} +if (lean_is_scalar(x_90)) { + x_91 = lean_alloc_ctor(1, 2, 0); +} else { + x_91 = x_90; +} +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_89); +return x_91; +} +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_dec(x_67); +lean_dec(x_62); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_92 = lean_ctor_get(x_70, 0); +lean_inc(x_92); +x_93 = lean_ctor_get(x_70, 1); +lean_inc(x_93); +if (lean_is_exclusive(x_70)) { + lean_ctor_release(x_70, 0); + lean_ctor_release(x_70, 1); + x_94 = x_70; +} else { + lean_dec_ref(x_70); + x_94 = lean_box(0); +} +if (lean_is_scalar(x_94)) { + x_95 = lean_alloc_ctor(1, 2, 0); +} else { + x_95 = x_94; +} +lean_ctor_set(x_95, 0, x_92); +lean_ctor_set(x_95, 1, x_93); +return x_95; +} +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; +lean_dec(x_62); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_96 = lean_ctor_get(x_66, 0); +lean_inc(x_96); +x_97 = lean_ctor_get(x_66, 1); +lean_inc(x_97); +if (lean_is_exclusive(x_66)) { + lean_ctor_release(x_66, 0); + lean_ctor_release(x_66, 1); + x_98 = x_66; +} else { + lean_dec_ref(x_66); + x_98 = lean_box(0); +} +if (lean_is_scalar(x_98)) { + x_99 = lean_alloc_ctor(1, 2, 0); +} else { + x_99 = x_98; +} +lean_ctor_set(x_99, 0, x_96); +lean_ctor_set(x_99, 1, x_97); +return x_99; +} +} +} +else +{ +uint8_t x_100; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_1); +x_100 = !lean_is_exclusive(x_19); +if (x_100 == 0) +{ +return x_19; +} +else +{ +lean_object* x_101; lean_object* x_102; lean_object* x_103; +x_101 = lean_ctor_get(x_19, 0); +x_102 = lean_ctor_get(x_19, 1); +lean_inc(x_102); +lean_inc(x_101); +lean_dec(x_19); +x_103 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +return x_103; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; lean_object* x_10; +x_8 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__3___boxed), 8, 1); +lean_closure_set(x_8, 0, x_2); +x_9 = 0; +x_10 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_1, x_8, x_9, x_3, x_4, x_5, x_6, x_7); +return x_10; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("fun_cases", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_9 = lean_infer_type(x_1, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__1; +x_13 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__2; +lean_inc(x_7); +lean_inc(x_6); +x_14 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_10, x_12, x_13, x_6, x_7, x_11); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_box(0); +x_18 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__16___closed__6; +lean_inc(x_15); +x_19 = l_Lean_CollectLevelParams_main(x_15, x_18); +x_20 = lean_ctor_get(x_19, 2); +lean_inc(x_20); +lean_dec(x_19); +x_21 = l_Lean_ConstantInfo_levelParams(x_2); +x_22 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1(x_20, x_21, x_17); +lean_dec(x_20); +x_23 = l_Lean_ConstantInfo_name(x_2); +x_24 = l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2; +x_25 = l_Lean_Name_append(x_23, x_24); +lean_inc(x_25); +x_26 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_22); +lean_ctor_set(x_26, 2, x_15); +x_27 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_27, 0, x_25); +lean_ctor_set(x_27, 1, x_17); +x_28 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_1); +lean_ctor_set(x_28, 2, x_27); +x_29 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_29, 0, x_28); +x_30 = l_Lean_addDecl(x_29, x_6, x_7, x_16); +return x_30; +} +else +{ +uint8_t x_31; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_31 = !lean_is_exclusive(x_14); +if (x_31 == 0) +{ +return x_14; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_14, 0); +x_33 = lean_ctor_get(x_14, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_14); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} +else +{ +uint8_t x_35; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_35 = !lean_is_exclusive(x_9); +if (x_35 == 0) +{ +return x_9; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_9, 0); +x_37 = lean_ctor_get(x_9, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_9); +x_38 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +return x_38; +} +} +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__1___boxed), 7, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("constructed functional cases principle is not type correct:", 59, 59); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; uint8_t x_9; lean_object* x_10; +x_8 = l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1; +x_9 = 0; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_10 = l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(x_2, x_8, x_9, x_3, x_4, x_5, x_6, x_7); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; uint8_t x_16; lean_object* x_17; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__4), 7, 1); +lean_closure_set(x_13, 0, x_2); +x_14 = l_Lean_Tactic_FunInd_deriveUnaryInduction___lambda__11___closed__2; +x_15 = 0; +x_16 = 0; +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_17 = l_Lean_Meta_withLocalDecl___at_Lean_Meta_addPPExplicitToExposeDiff_visit___spec__4___rarg(x_14, x_15, x_11, x_13, x_16, x_3, x_4, x_5, x_6, x_12); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_18); +x_20 = l_Lean_Meta_isTypeCorrect(x_18, x_3, x_4, x_5, x_6, x_19); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; uint8_t x_22; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_unbox(x_21); +lean_dec(x_21); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +lean_inc(x_18); +x_24 = l_Lean_indentExpr(x_18); +x_25 = l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3; +x_26 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +x_27 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_28 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +x_29 = 2; +lean_inc(x_5); +x_30 = l_Lean_log___at_Lean_Elab_Term_reportUnsolvedGoals___spec__1(x_28, x_29, x_3, x_4, x_5, x_6, x_23); +x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_31); +lean_dec(x_30); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_18); +x_32 = l_Lean_Meta_check(x_18, x_3, x_4, x_5, x_6, x_31); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_Tactic_FunInd_deriveCases___lambda__5(x_18, x_1, x_33, x_3, x_4, x_5, x_6, x_34); +lean_dec(x_33); +return x_35; +} +else +{ +uint8_t x_36; +lean_dec(x_18); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_36 = !lean_is_exclusive(x_32); +if (x_36 == 0) +{ +return x_32; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_32, 0); +x_38 = lean_ctor_get(x_32, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_32); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_20, 1); +lean_inc(x_40); +lean_dec(x_20); +x_41 = lean_box(0); +x_42 = l_Lean_Tactic_FunInd_deriveCases___lambda__5(x_18, x_1, x_41, x_3, x_4, x_5, x_6, x_40); +return x_42; +} +} +else +{ +uint8_t x_43; +lean_dec(x_18); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_43 = !lean_is_exclusive(x_20); +if (x_43 == 0) +{ +return x_20; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_20, 0); +x_45 = lean_ctor_get(x_20, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_20); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +else +{ +uint8_t x_47; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_47 = !lean_is_exclusive(x_17); +if (x_47 == 0) +{ +return x_17; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_17, 0); +x_49 = lean_ctor_get(x_17, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_17); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; +} +} +} +else +{ +uint8_t x_51; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_51 = !lean_is_exclusive(x_10); +if (x_51 == 0) +{ +return x_10; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_10, 0); +x_53 = lean_ctor_get(x_10, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_10); +x_54 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; +} +} +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Eq", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Type of ", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" not an equality: ", 18, 18); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_9 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2; +x_10 = lean_unsigned_to_nat(3u); +x_11 = l_Lean_Expr_isAppOfArity(x_3, x_9, x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_12 = l_Lean_MessageData_ofName(x_1); +x_13 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4; +x_14 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_12); +x_15 = l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6; +x_16 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +x_17 = l_Lean_MessageData_ofExpr(x_3); +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +x_19 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_20, x_4, x_5, x_6, x_7, x_8); +return x_21; +} +else +{ +lean_object* x_22; uint8_t x_23; uint8_t x_24; uint8_t x_25; lean_object* x_26; +lean_dec(x_1); +x_22 = l_Lean_Expr_appArg_x21(x_3); +lean_dec(x_3); +x_23 = 0; +x_24 = 1; +x_25 = 1; +x_26 = l_Lean_Meta_mkLambdaFVars(x_2, x_22, x_23, x_24, x_23, x_25, x_4, x_5, x_6, x_7, x_8); +return x_26; +} +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' does not have an unfold theorem nor a value", 45, 45); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +lean_inc(x_1); +x_7 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(x_1, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_7) == 0) +{ +lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = 0; +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_11 = l_Lean_Meta_getUnfoldEqnFor_x3f(x_1, x_10, x_2, x_3, x_4, x_5, x_9); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +lean_inc(x_8); +x_14 = l_Lean_ConstantInfo_value_x3f(x_8, x_10); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +lean_dec(x_8); +x_15 = l_Lean_MessageData_ofName(x_1); +x_16 = l_Lean_getConstInfo___at_Lean_Tactic_FunInd_foldAndCollect___spec__3___closed__4; +x_17 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_15); +x_18 = l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_17); +lean_ctor_set(x_19, 1, x_18); +x_20 = l_Lean_throwError___at_Lean_Expr_abstractRangeM___spec__1(x_19, x_2, x_3, x_4, x_5, x_13); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +return x_20; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_20, 0); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_20); +x_24 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_24, 0, x_22); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; +lean_dec(x_1); +x_25 = lean_ctor_get(x_14, 0); +lean_inc(x_25); +lean_dec(x_14); +x_26 = l_Lean_Tactic_FunInd_deriveCases___lambda__6(x_8, x_25, x_2, x_3, x_4, x_5, x_13); +lean_dec(x_8); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_1); +x_27 = lean_ctor_get(x_11, 1); +lean_inc(x_27); +lean_dec(x_11); +x_28 = lean_ctor_get(x_12, 0); +lean_inc(x_28); +lean_dec(x_12); +lean_inc(x_28); +x_29 = l_Lean_getConstInfo___at_Lean_Meta_mkConstWithFreshMVarLevels___spec__1(x_28, x_2, x_3, x_4, x_5, x_27); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = l_Lean_ConstantInfo_type(x_30); +lean_dec(x_30); +x_33 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__7___boxed), 8, 1); +lean_closure_set(x_33, 0, x_28); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_34 = l_Lean_Meta_forallTelescope___at_Lean_Meta_mapForallTelescope_x27___spec__1___rarg(x_32, x_33, x_10, x_2, x_3, x_4, x_5, x_31); +if (lean_obj_tag(x_34) == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +lean_dec(x_34); +x_37 = l_Lean_Tactic_FunInd_deriveCases___lambda__6(x_8, x_35, x_2, x_3, x_4, x_5, x_36); +lean_dec(x_8); +return x_37; +} +else +{ +uint8_t x_38; +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_38 = !lean_is_exclusive(x_34); +if (x_38 == 0) +{ +return x_34; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_34, 0); +x_40 = lean_ctor_get(x_34, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_34); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +else +{ +uint8_t x_42; +lean_dec(x_28); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_42 = !lean_is_exclusive(x_29); +if (x_42 == 0) +{ +return x_29; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_29, 0); +x_44 = lean_ctor_get(x_29, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_29); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; +} +} +} +} +else +{ +uint8_t x_46; +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_46 = !lean_is_exclusive(x_11); +if (x_46 == 0) +{ +return x_11; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_11, 0); +x_48 = lean_ctor_get(x_11, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_11); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +return x_49; +} +} +} +else +{ +uint8_t x_50; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_50 = !lean_is_exclusive(x_7); +if (x_50 == 0) +{ +return x_7; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_7, 0); +x_52 = lean_ctor_get(x_7, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_7); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Cannot derive functional cases principle (please report this issue)\n", 68, 68); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__9(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l_Lean_indentD(x_1); +x_3 = l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2; +x_4 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_4, 0, x_3); +lean_ctor_set(x_4, 1, x_2); +x_5 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_6 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_6, 0, x_4); +lean_ctor_set(x_6, 1, x_5); +return x_6; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveCases___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__9), 1, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_deriveCases___lambda__8), 6, 1); +lean_closure_set(x_7, 0, x_1); +x_8 = l_Lean_Tactic_FunInd_deriveCases___closed__1; +x_9 = l_Lean_Meta_mapErrorImp___rarg(x_7, x_8, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_9) == 0) +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +return x_9; +} +else +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_9); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set(x_13, 1, x_12); +return x_13; +} +} +else +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_9); +if (x_14 == 0) +{ +return x_9; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_9, 0); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_inc(x_15); +lean_dec(x_9); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; +} +} +} +} +LEAN_EXPORT lean_object* l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_List_filterTR_loop___at_Lean_Tactic_FunInd_deriveCases___spec__1(x_1, x_2, x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Tactic_FunInd_deriveCases___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Tactic_FunInd_deriveCases___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_4); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Tactic_FunInd_deriveCases___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Tactic_FunInd_deriveCases___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; +x_8 = l_Lean_Tactic_FunInd_deriveCases___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_1); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveCases___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +_start: +{ +lean_object* x_9; +x_9 = l_Lean_Tactic_FunInd_deriveCases___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +return x_9; +} +} static lean_object* _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1() { _start: { @@ -77563,7 +79177,7 @@ static lean_object* _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___clo _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked(" is not defined by structural or well-founded recursion", 55, 55); +x_1 = lean_mk_string_unchecked("constant '", 10, 10); return x_1; } } @@ -77576,6 +79190,23 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("' is not structurally or well-founded recursive", 47, 47); +return x_1; +} +} +static lean_object* _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_deriveInduction___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -77615,11 +79246,11 @@ if (lean_obj_tag(x_22) == 0) { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_23 = l_Lean_MessageData_ofName(x_1); -x_24 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_24 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; lean_ctor_set_tag(x_15, 7); lean_ctor_set(x_15, 1, x_23); lean_ctor_set(x_15, 0, x_24); -x_25 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; +x_25 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5; lean_ctor_set_tag(x_7, 7); lean_ctor_set(x_7, 1, x_25); lean_ctor_set(x_7, 0, x_15); @@ -77667,11 +79298,11 @@ if (lean_obj_tag(x_36) == 0) { lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_37 = l_Lean_MessageData_ofName(x_1); -x_38 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_38 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; x_39 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_39, 0, x_38); lean_ctor_set(x_39, 1, x_37); -x_40 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; +x_40 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5; lean_ctor_set_tag(x_7, 7); lean_ctor_set(x_7, 1, x_40); lean_ctor_set(x_7, 0, x_39); @@ -77855,7 +79486,7 @@ if (lean_obj_tag(x_78) == 0) { lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; x_79 = l_Lean_MessageData_ofName(x_1); -x_80 = l_Lean_Tactic_FunInd_removeLamda___rarg___lambda__2___closed__4; +x_80 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; if (lean_is_scalar(x_74)) { x_81 = lean_alloc_ctor(7, 2, 0); } else { @@ -77864,7 +79495,7 @@ if (lean_is_scalar(x_74)) { } lean_ctor_set(x_81, 0, x_80); lean_ctor_set(x_81, 1, x_79); -x_82 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3; +x_82 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5; x_83 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_83, 0, x_81); lean_ctor_set(x_83, 1, x_82); @@ -78158,36 +79789,7 @@ return x_17; } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_5 = lean_ctor_get(x_1, 1); -x_6 = lean_array_get_size(x_5); -x_7 = lean_unsigned_to_nat(1u); -x_8 = lean_nat_dec_lt(x_7, x_6); -lean_dec(x_6); -if (x_8 == 0) -{ -lean_object* x_9; lean_object* x_10; -x_9 = lean_box(0); -x_10 = lean_apply_1(x_2, x_9); -return x_10; -} -else -{ -lean_object* x_11; lean_object* x_12; uint8_t x_13; lean_object* x_14; -lean_dec(x_2); -x_11 = lean_unsigned_to_nat(0u); -x_12 = lean_array_fget(x_5, x_11); -x_13 = lean_name_eq(x_12, x_3); -lean_dec(x_12); -x_14 = lean_box(x_13); -return x_14; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -78210,32 +79812,6 @@ return x_9; } } } -LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunInductName___lambda__5(lean_object* x_1) { -_start: -{ -uint8_t x_2; -x_2 = 1; -return x_2; -} -} -static lean_object* _init_l_Lean_Tactic_FunInd_isFunInductName___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_isFunInductName___lambda__5___boxed), 1, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Tactic_FunInd_isFunInductName___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Tactic_FunInd_isFunInductName___closed__1; -x_2 = lean_box(0); -x_3 = lean_apply_1(x_1, x_2); -return x_3; -} -} LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName(lean_object* x_1, lean_object* x_2) { _start: { @@ -78266,105 +79842,92 @@ return x_10; } else { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = l_Lean_Elab_WF_instInhabitedEqnInfo; +x_12 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; lean_inc(x_3); lean_inc(x_1); -x_11 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_isFunInductName___lambda__2___boxed), 3, 2); -lean_closure_set(x_11, 0, x_1); -lean_closure_set(x_11, 1, x_3); -x_12 = l_Lean_Elab_WF_instInhabitedEqnInfo; -x_13 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; -lean_inc(x_3); -lean_inc(x_1); -x_14 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_12, x_13, x_1, x_3); -if (lean_obj_tag(x_14) == 0) +x_13 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_11, x_12, x_1, x_3); +if (lean_obj_tag(x_13) == 0) { -lean_object* x_15; lean_object* x_16; -lean_dec(x_11); -x_15 = lean_box(0); -x_16 = l_Lean_Tactic_FunInd_isFunInductName___lambda__2(x_1, x_3, x_15); -return x_16; +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Tactic_FunInd_isFunInductName___lambda__2(x_1, x_3, x_14); +return x_15; } else { -lean_object* x_17; uint8_t x_18; -lean_dec(x_1); -x_17 = lean_ctor_get(x_14, 0); +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_16 = lean_ctor_get(x_13, 0); +lean_inc(x_16); +lean_dec(x_13); +x_17 = lean_ctor_get(x_16, 1); lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_ctor_get_uint8(x_17, sizeof(void*)*5); -if (x_18 == 0) -{ -uint8_t x_19; lean_object* x_20; -lean_dec(x_17); -lean_dec(x_11); -lean_dec(x_3); -x_19 = 0; -x_20 = lean_box(x_19); -return x_20; -} -else +lean_dec(x_16); +x_18 = lean_array_get_size(x_17); +x_19 = lean_unsigned_to_nat(1u); +x_20 = lean_nat_dec_lt(x_19, x_18); +lean_dec(x_18); +if (x_20 == 0) { lean_object* x_21; lean_object* x_22; -x_21 = lean_box(0); -x_22 = l_Lean_Tactic_FunInd_isFunInductName___lambda__3(x_17, x_11, x_3, x_21); -lean_dec(x_3); lean_dec(x_17); +x_21 = lean_box(0); +x_22 = l_Lean_Tactic_FunInd_isFunInductName___lambda__2(x_1, x_3, x_21); return x_22; } +else +{ +lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; +lean_dec(x_1); +x_23 = lean_unsigned_to_nat(0u); +x_24 = lean_array_fget(x_17, x_23); +lean_dec(x_17); +x_25 = lean_name_eq(x_24, x_3); +lean_dec(x_3); +lean_dec(x_24); +x_26 = lean_box(x_25); +return x_26; +} } } } else { -lean_object* x_23; lean_object* x_24; lean_object* x_25; +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_dec(x_4); -x_23 = l_Lean_Elab_WF_instInhabitedEqnInfo; -x_24 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; +x_27 = l_Lean_Elab_WF_instInhabitedEqnInfo; +x_28 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; lean_inc(x_3); lean_inc(x_1); -x_25 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_23, x_24, x_1, x_3); -if (lean_obj_tag(x_25) == 0) +x_29 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_27, x_28, x_1, x_3); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_26; lean_object* x_27; -x_26 = lean_box(0); -x_27 = l_Lean_Tactic_FunInd_isFunInductName___lambda__4(x_1, x_3, x_26); -return x_27; -} -else -{ -lean_object* x_28; uint8_t x_29; -lean_dec(x_3); -lean_dec(x_1); -x_28 = lean_ctor_get(x_25, 0); -lean_inc(x_28); -lean_dec(x_25); -x_29 = lean_ctor_get_uint8(x_28, sizeof(void*)*5); -lean_dec(x_28); -if (x_29 == 0) -{ -uint8_t x_30; lean_object* x_31; -x_30 = 0; -x_31 = lean_box(x_30); +lean_object* x_30; lean_object* x_31; +x_30 = lean_box(0); +x_31 = l_Lean_Tactic_FunInd_isFunInductName___lambda__3(x_1, x_3, x_30); return x_31; } else { -lean_object* x_32; -x_32 = l_Lean_Tactic_FunInd_isFunInductName___closed__2; -return x_32; -} +uint8_t x_32; lean_object* x_33; +lean_dec(x_29); +lean_dec(x_3); +lean_dec(x_1); +x_32 = 1; +x_33 = lean_box(x_32); +return x_33; } } } else { -uint8_t x_33; lean_object* x_34; +uint8_t x_34; lean_object* x_35; lean_dec(x_2); lean_dec(x_1); -x_33 = 0; -x_34 = lean_box(x_33); -return x_34; +x_34 = 0; +x_35 = lean_box(x_34); +return x_35; } } } @@ -78387,37 +79950,154 @@ lean_dec(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_Tactic_FunInd_isFunInductName___lambda__3(x_1, x_2, x_3, x_4); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Lean_Tactic_FunInd_isFunInductName___lambda__4(x_1, x_2, x_3); +x_4 = l_Lean_Tactic_FunInd_isFunInductName___lambda__3(x_1, x_2, x_3); lean_dec(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunInductName___lambda__5___boxed(lean_object* x_1) { +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -uint8_t x_2; lean_object* x_3; -x_2 = l_Lean_Tactic_FunInd_isFunInductName___lambda__5(x_1); +lean_object* x_4; +x_4 = l_Lean_Environment_find_x3f(x_1, x_2); +if (lean_obj_tag(x_4) == 0) +{ +uint8_t x_5; +x_5 = 0; +return x_5; +} +else +{ +lean_object* x_6; uint8_t x_7; uint8_t x_8; +x_6 = lean_ctor_get(x_4, 0); +lean_inc(x_6); +lean_dec(x_4); +x_7 = 0; +x_8 = l_Lean_ConstantInfo_hasValue(x_6, x_7); +lean_dec(x_6); +return x_8; +} +} +} +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_4 = l_Lean_Elab_Structural_instInhabitedEqnInfo; +x_5 = l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__2___closed__1; +lean_inc(x_2); +lean_inc(x_1); +x_6 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_4, x_5, x_1, x_2); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; uint8_t x_8; +x_7 = lean_box(0); +x_8 = l_Lean_Tactic_FunInd_isFunCasesName___lambda__1(x_1, x_2, x_7); +return x_8; +} +else +{ +uint8_t x_9; +lean_dec(x_6); +lean_dec(x_2); lean_dec(x_1); -x_3 = lean_box(x_2); -return x_3; +x_9 = 1; +return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +} +LEAN_EXPORT uint8_t l_Lean_Tactic_FunInd_isFunCasesName(lean_object* x_1, lean_object* x_2) { +_start: +{ +if (lean_obj_tag(x_2) == 1) +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_3 = lean_ctor_get(x_2, 0); +lean_inc(x_3); +x_4 = lean_ctor_get(x_2, 1); +lean_inc(x_4); +lean_dec(x_2); +x_5 = l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1; +x_6 = lean_string_dec_eq(x_4, x_5); +lean_dec(x_4); +if (x_6 == 0) +{ +uint8_t x_7; +lean_dec(x_3); +lean_dec(x_1); +x_7 = 0; +return x_7; +} +else +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = l_Lean_Elab_WF_instInhabitedEqnInfo; +x_9 = l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1; +lean_inc(x_3); +lean_inc(x_1); +x_10 = l_Lean_MapDeclarationExtension_find_x3f___rarg(x_8, x_9, x_1, x_3); +if (lean_obj_tag(x_10) == 0) +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_box(0); +x_12 = l_Lean_Tactic_FunInd_isFunCasesName___lambda__2(x_1, x_3, x_11); +return x_12; +} +else +{ +uint8_t x_13; +lean_dec(x_10); +lean_dec(x_3); +lean_dec(x_1); +x_13 = 1; +return x_13; +} +} +} +else +{ +uint8_t x_14; +lean_dec(x_2); +lean_dec(x_1); +x_14 = 0; +return x_14; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = l_Lean_Tactic_FunInd_isFunCasesName___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +x_5 = lean_box(x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = l_Lean_Tactic_FunInd_isFunCasesName___lambda__2(x_1, x_2, x_3); +lean_dec(x_3); +x_5 = lean_box(x_4); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_isFunCasesName___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Tactic_FunInd_isFunCasesName(x_1, x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { uint8_t x_5; lean_object* x_6; lean_object* x_7; @@ -78429,15 +80109,15 @@ lean_ctor_set(x_7, 1, x_4); return x_7; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1___boxed), 4, 0); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2() { _start: { uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; @@ -78467,16 +80147,16 @@ lean_ctor_set_uint8(x_6, 16, x_2); return x_6; } } -static uint64_t _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__3() { +static uint64_t _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__3() { _start: { lean_object* x_1; uint64_t x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2; x_2 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4() { _start: { lean_object* x_1; @@ -78484,21 +80164,21 @@ x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5; x_2 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___closed__3; x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -78506,16 +80186,16 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; uint64_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_1 = lean_box(0); x_2 = lean_box(0); -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2; -x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__3; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2; +x_4 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__3; x_5 = 0; -x_6 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6; +x_6 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6; x_7 = l_Lean_Tactic_FunInd_M_run___rarg___closed__1; x_8 = lean_unsigned_to_nat(0u); x_9 = lean_alloc_ctor(0, 7, 11); @@ -78533,12 +80213,12 @@ lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 10, x_5); return x_9; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_unsigned_to_nat(0u); -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5; x_3 = lean_alloc_ctor(0, 9, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_1); @@ -78552,11 +80232,11 @@ lean_ctor_set(x_3, 8, x_2); return x_3; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5; x_2 = lean_alloc_ctor(0, 6, 0); lean_ctor_set(x_2, 0, x_1); lean_ctor_set(x_2, 1, x_1); @@ -78567,11 +80247,11 @@ lean_ctor_set(x_2, 5, x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5; +x_1 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5; x_2 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_2, 0, x_1); lean_ctor_set(x_2, 1, x_1); @@ -78580,15 +80260,15 @@ lean_ctor_set(x_2, 3, x_1); return x_2; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = lean_box(0); -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8; -x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8; +x_3 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9; x_4 = l___private_Lean_Util_Trace_0__Lean_getResetTraces___at_Lean_Tactic_FunInd_foldAndCollect___spec__32___closed__3; -x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10; +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10; x_6 = lean_alloc_ctor(0, 5, 0); lean_ctor_set(x_6, 0, x_2); lean_ctor_set(x_6, 1, x_3); @@ -78598,32 +80278,30 @@ lean_ctor_set(x_6, 4, x_5); return x_6; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -lean_object* x_5; uint8_t x_6; -x_5 = lean_st_ref_get(x_3, x_4); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) +lean_object* x_6; uint8_t x_7; +x_6 = lean_st_ref_get(x_4, x_5); +x_7 = !lean_is_exclusive(x_6); +if (x_7 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_ctor_get(x_7, 0); -lean_inc(x_9); -lean_dec(x_7); -x_10 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1; +lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_8 = lean_ctor_get(x_6, 0); +x_9 = lean_ctor_get(x_6, 1); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +lean_dec(x_8); +x_11 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1; lean_inc(x_1); -x_11 = l_Lean_Tactic_FunInd_isFunInductName(x_9, x_1); -x_12 = lean_unbox(x_11); -lean_dec(x_11); +x_12 = l_Lean_Tactic_FunInd_isFunCasesName(x_10, x_1); if (x_12 == 0) { lean_object* x_13; lean_object* x_14; -lean_free_object(x_5); +lean_free_object(x_6); lean_dec(x_1); x_13 = lean_box(0); -x_14 = lean_apply_4(x_10, x_13, x_2, x_3, x_8); +x_14 = lean_apply_4(x_11, x_13, x_3, x_4, x_9); return x_14; } else @@ -78631,20 +80309,20 @@ else if (lean_obj_tag(x_1) == 1) { lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -lean_free_object(x_5); +lean_free_object(x_6); x_15 = lean_ctor_get(x_1, 0); lean_inc(x_15); lean_dec(x_1); -x_16 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11; -x_17 = lean_st_mk_ref(x_16, x_8); +x_16 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11; +x_17 = lean_st_mk_ref(x_16, x_9); x_18 = lean_ctor_get(x_17, 0); lean_inc(x_18); x_19 = lean_ctor_get(x_17, 1); lean_inc(x_19); lean_dec(x_17); -x_20 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7; +x_20 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7; lean_inc(x_18); -x_21 = l_Lean_Tactic_FunInd_deriveInduction(x_15, x_20, x_18, x_2, x_3, x_19); +x_21 = l_Lean_Tactic_FunInd_deriveCases(x_15, x_20, x_18, x_3, x_4, x_19); if (lean_obj_tag(x_21) == 0) { lean_object* x_22; lean_object* x_23; uint8_t x_24; @@ -78705,131 +80383,356 @@ return x_35; else { uint8_t x_36; lean_object* x_37; +lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); lean_dec(x_1); x_36 = 0; x_37 = lean_box(x_36); -lean_ctor_set(x_5, 0, x_37); +lean_ctor_set(x_6, 0, x_37); +return x_6; +} +} +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_38 = lean_ctor_get(x_6, 0); +x_39 = lean_ctor_get(x_6, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_6); +x_40 = lean_ctor_get(x_38, 0); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1; +lean_inc(x_1); +x_42 = l_Lean_Tactic_FunInd_isFunCasesName(x_40, x_1); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_1); +x_43 = lean_box(0); +x_44 = lean_apply_4(x_41, x_43, x_3, x_4, x_39); +return x_44; +} +else +{ +if (lean_obj_tag(x_1) == 1) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_45 = lean_ctor_get(x_1, 0); +lean_inc(x_45); +lean_dec(x_1); +x_46 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11; +x_47 = lean_st_mk_ref(x_46, x_39); +x_48 = lean_ctor_get(x_47, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_47, 1); +lean_inc(x_49); +lean_dec(x_47); +x_50 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7; +lean_inc(x_48); +x_51 = l_Lean_Tactic_FunInd_deriveCases(x_45, x_50, x_48, x_3, x_4, x_49); +if (lean_obj_tag(x_51) == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = lean_st_ref_get(x_48, x_52); +lean_dec(x_48); +x_54 = lean_ctor_get(x_53, 1); +lean_inc(x_54); +if (lean_is_exclusive(x_53)) { + lean_ctor_release(x_53, 0); + lean_ctor_release(x_53, 1); + x_55 = x_53; +} else { + lean_dec_ref(x_53); + x_55 = lean_box(0); +} +x_56 = 1; +x_57 = lean_box(x_56); +if (lean_is_scalar(x_55)) { + x_58 = lean_alloc_ctor(0, 2, 0); +} else { + x_58 = x_55; +} +lean_ctor_set(x_58, 0, x_57); +lean_ctor_set(x_58, 1, x_54); +return x_58; +} +else +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_48); +x_59 = lean_ctor_get(x_51, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_51, 1); +lean_inc(x_60); +if (lean_is_exclusive(x_51)) { + lean_ctor_release(x_51, 0); + lean_ctor_release(x_51, 1); + x_61 = x_51; +} else { + lean_dec_ref(x_51); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(1, 2, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_59); +lean_ctor_set(x_62, 1, x_60); +return x_62; +} +} +else +{ +uint8_t x_63; lean_object* x_64; lean_object* x_65; +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_63 = 0; +x_64 = lean_box(x_63); +x_65 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_65, 0, x_64); +lean_ctor_set(x_65, 1, x_39); +return x_65; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_st_ref_get(x_3, x_4); +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_7 = lean_ctor_get(x_5, 0); +x_8 = lean_ctor_get(x_5, 1); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +lean_dec(x_7); +lean_inc(x_1); +x_10 = l_Lean_Tactic_FunInd_isFunInductName(x_9, x_1); +x_11 = lean_unbox(x_10); +lean_dec(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; +lean_free_object(x_5); +x_12 = lean_box(0); +x_13 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2(x_1, x_12, x_2, x_3, x_8); +return x_13; +} +else +{ +if (lean_obj_tag(x_1) == 1) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_free_object(x_5); +x_14 = lean_ctor_get(x_1, 0); +lean_inc(x_14); +lean_dec(x_1); +x_15 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11; +x_16 = lean_st_mk_ref(x_15, x_8); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7; +lean_inc(x_17); +x_20 = l_Lean_Tactic_FunInd_deriveInduction(x_14, x_19, x_17, x_2, x_3, x_18); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +x_22 = lean_st_ref_get(x_17, x_21); +lean_dec(x_17); +x_23 = !lean_is_exclusive(x_22); +if (x_23 == 0) +{ +lean_object* x_24; uint8_t x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_22, 0); +lean_dec(x_24); +x_25 = 1; +x_26 = lean_box(x_25); +lean_ctor_set(x_22, 0, x_26); +return x_22; +} +else +{ +lean_object* x_27; uint8_t x_28; lean_object* x_29; lean_object* x_30; +x_27 = lean_ctor_get(x_22, 1); +lean_inc(x_27); +lean_dec(x_22); +x_28 = 1; +x_29 = lean_box(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_27); +return x_30; +} +} +else +{ +uint8_t x_31; +lean_dec(x_17); +x_31 = !lean_is_exclusive(x_20); +if (x_31 == 0) +{ +return x_20; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_20, 0); +x_33 = lean_ctor_get(x_20, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_20); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} +else +{ +uint8_t x_35; lean_object* x_36; +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_35 = 0; +x_36 = lean_box(x_35); +lean_ctor_set(x_5, 0, x_36); return x_5; } } } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; -x_38 = lean_ctor_get(x_5, 0); -x_39 = lean_ctor_get(x_5, 1); -lean_inc(x_39); +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_37 = lean_ctor_get(x_5, 0); +x_38 = lean_ctor_get(x_5, 1); lean_inc(x_38); +lean_inc(x_37); lean_dec(x_5); -x_40 = lean_ctor_get(x_38, 0); -lean_inc(x_40); -lean_dec(x_38); -x_41 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1; +x_39 = lean_ctor_get(x_37, 0); +lean_inc(x_39); +lean_dec(x_37); lean_inc(x_1); -x_42 = l_Lean_Tactic_FunInd_isFunInductName(x_40, x_1); -x_43 = lean_unbox(x_42); -lean_dec(x_42); -if (x_43 == 0) +x_40 = l_Lean_Tactic_FunInd_isFunInductName(x_39, x_1); +x_41 = lean_unbox(x_40); +lean_dec(x_40); +if (x_41 == 0) { -lean_object* x_44; lean_object* x_45; -lean_dec(x_1); -x_44 = lean_box(0); -x_45 = lean_apply_4(x_41, x_44, x_2, x_3, x_39); -return x_45; +lean_object* x_42; lean_object* x_43; +x_42 = lean_box(0); +x_43 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2(x_1, x_42, x_2, x_3, x_38); +return x_43; } else { if (lean_obj_tag(x_1) == 1) { -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_46 = lean_ctor_get(x_1, 0); -lean_inc(x_46); +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_44 = lean_ctor_get(x_1, 0); +lean_inc(x_44); lean_dec(x_1); -x_47 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11; -x_48 = lean_st_mk_ref(x_47, x_39); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 1); -lean_inc(x_50); -lean_dec(x_48); -x_51 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7; -lean_inc(x_49); -x_52 = l_Lean_Tactic_FunInd_deriveInduction(x_46, x_51, x_49, x_2, x_3, x_50); -if (lean_obj_tag(x_52) == 0) +x_45 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11; +x_46 = lean_st_mk_ref(x_45, x_38); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7; +lean_inc(x_47); +x_50 = l_Lean_Tactic_FunInd_deriveInduction(x_44, x_49, x_47, x_2, x_3, x_48); +if (lean_obj_tag(x_50) == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_object* x_58; lean_object* x_59; +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; lean_object* x_56; lean_object* x_57; +x_51 = lean_ctor_get(x_50, 1); +lean_inc(x_51); +lean_dec(x_50); +x_52 = lean_st_ref_get(x_47, x_51); +lean_dec(x_47); x_53 = lean_ctor_get(x_52, 1); lean_inc(x_53); -lean_dec(x_52); -x_54 = lean_st_ref_get(x_49, x_53); -lean_dec(x_49); -x_55 = lean_ctor_get(x_54, 1); -lean_inc(x_55); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - x_56 = x_54; -} else { - lean_dec_ref(x_54); - x_56 = lean_box(0); -} -x_57 = 1; -x_58 = lean_box(x_57); -if (lean_is_scalar(x_56)) { - x_59 = lean_alloc_ctor(0, 2, 0); -} else { - x_59 = x_56; -} -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_55); -return x_59; -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -lean_dec(x_49); -x_60 = lean_ctor_get(x_52, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_52, 1); -lean_inc(x_61); if (lean_is_exclusive(x_52)) { lean_ctor_release(x_52, 0); lean_ctor_release(x_52, 1); - x_62 = x_52; + x_54 = x_52; } else { lean_dec_ref(x_52); - x_62 = lean_box(0); + x_54 = lean_box(0); } -if (lean_is_scalar(x_62)) { - x_63 = lean_alloc_ctor(1, 2, 0); +x_55 = 1; +x_56 = lean_box(x_55); +if (lean_is_scalar(x_54)) { + x_57 = lean_alloc_ctor(0, 2, 0); } else { - x_63 = x_62; + x_57 = x_54; } -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_61); -return x_63; +lean_ctor_set(x_57, 0, x_56); +lean_ctor_set(x_57, 1, x_53); +return x_57; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +lean_dec(x_47); +x_58 = lean_ctor_get(x_50, 0); +lean_inc(x_58); +x_59 = lean_ctor_get(x_50, 1); +lean_inc(x_59); +if (lean_is_exclusive(x_50)) { + lean_ctor_release(x_50, 0); + lean_ctor_release(x_50, 1); + x_60 = x_50; +} else { + lean_dec_ref(x_50); + x_60 = lean_box(0); +} +if (lean_is_scalar(x_60)) { + x_61 = lean_alloc_ctor(1, 2, 0); +} else { + x_61 = x_60; +} +lean_ctor_set(x_61, 0, x_58); +lean_ctor_set(x_61, 1, x_59); +return x_61; } } else { -uint8_t x_64; lean_object* x_65; lean_object* x_66; +uint8_t x_62; lean_object* x_63; lean_object* x_64; lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_64 = 0; -x_65 = lean_box(x_64); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_65); -lean_ctor_set(x_66, 1, x_39); -return x_66; +x_62 = 0; +x_63 = lean_box(x_62); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_38); +return x_64; } } } } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1() { _start: { lean_object* x_1; @@ -78837,19 +80740,27 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_isFunInductName), 2, 0); return x_1; } } -static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2() { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_isFunCasesName___boxed), 2, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913_(lean_object* x_1) { +static lean_object* _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__3), 4, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1; +x_2 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1; x_3 = l_Lean_registerReservedNamePredicate(x_2, x_1); if (lean_obj_tag(x_3) == 0) { @@ -78857,46 +80768,86 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; x_4 = lean_ctor_get(x_3, 1); lean_inc(x_4); lean_dec(x_3); -x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2; -x_6 = l_Lean_registerReservedNameAction(x_5, x_4); +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2; +x_6 = l_Lean_registerReservedNamePredicate(x_5, x_4); +if (lean_obj_tag(x_6) == 0) +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_6, 1); +lean_inc(x_7); +lean_dec(x_6); +x_8 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3; +x_9 = l_Lean_registerReservedNameAction(x_8, x_7); +return x_9; +} +else +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_6); +if (x_10 == 0) +{ return x_6; } else { -uint8_t x_7; -x_7 = !lean_is_exclusive(x_3); -if (x_7 == 0) +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_6, 0); +x_12 = lean_ctor_get(x_6, 1); +lean_inc(x_12); +lean_inc(x_11); +lean_dec(x_6); +x_13 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_13, 0, x_11); +lean_ctor_set(x_13, 1, x_12); +return x_13; +} +} +} +else +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_3); +if (x_14 == 0) { return x_3; } else { -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_3, 0); -x_9 = lean_ctor_get(x_3, 1); -lean_inc(x_9); -lean_inc(x_8); +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_3, 0); +x_16 = lean_ctor_get(x_3, 1); +lean_inc(x_16); +lean_inc(x_15); lean_dec(x_3); -x_10 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_10, 0, x_8); -lean_ctor_set(x_10, 1, x_9); -return x_10; +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_15); +lean_ctor_set(x_17, 1, x_16); +return x_17; } } } } -LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; -x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__1(x_1, x_2, x_3, x_4); +x_5 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__1(x_1, x_2, x_3, x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); return x_5; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1() { +LEAN_EXPORT lean_object* l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_2); +return x_6; +} +} +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1() { _start: { lean_object* x_1; @@ -78904,17 +80855,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1; +x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3() { _start: { lean_object* x_1; @@ -78922,17 +80873,17 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2; -x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2; +x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5() { _start: { lean_object* x_1; @@ -78940,47 +80891,47 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4; -x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4; +x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6; x_2 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7; x_2 = l_Lean_logAt___at_Lean_Tactic_FunInd_buildInductionBody___spec__42___lambda__2___closed__3; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8; x_2 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10() { _start: { lean_object* x_1; @@ -78988,33 +80939,33 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9; -x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10; +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9; +x_2 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12() { +static lean_object* _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11; -x_2 = lean_unsigned_to_nat(17059u); +x_1 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11; +x_2 = lean_unsigned_to_nat(17973u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Tactic_FunInd_foldAndCollect___lambda__27___closed__3; x_3 = 0; -x_4 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12; +x_4 = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -79336,12 +81287,14 @@ l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__1 = _init_l_Lean_ lean_mark_persistent(l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__1); l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__2 = _init_l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_buildInductionBody___lambda__29___closed__2); -l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1(); -lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_abstractIndependentMVars___spec__2___closed__1); +l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__1___closed__1); l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__1); -l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__3___closed__2); +l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__1); +l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___lambda__4___closed__2); l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__1 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__1); l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__2 = _init_l_Lean_Tactic_FunInd_abstractIndependentMVars___closed__2(); @@ -79530,88 +81483,82 @@ l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveIndu lean_mark_persistent(l_Lean_Elab_Structural_Positions_groupAndSort___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__3___closed__6); l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8___closed__1 = _init_l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8___closed__1(); lean_mark_persistent(l_Array_mapMUnsafe_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__8___closed__1); -l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1 = _init_l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1(); -lean_mark_persistent(l_Array_mapFinIdxM_map___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__9___closed__1); -l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1 = _init_l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1(); -lean_mark_persistent(l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__13___closed__1); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__2); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__3); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__4); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__5); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__6); -l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7(); -lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__7); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__3); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__3); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__4___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__17___lambda__2___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__1); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__2); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__3); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__4); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__5); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__6); -l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7(); -lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__19___lambda__3___closed__7); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__1); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__2); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__3); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__4___closed__4); +l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1 = _init_l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1(); +lean_mark_persistent(l_panic___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__12___closed__1); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__1); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__2); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__3); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__4); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__5); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__6); +l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7 = _init_l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7(); +lean_mark_persistent(l_Lean_Elab_Structural_Positions_mapMwith___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__11___closed__7); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__2___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___lambda__4___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__15___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__16___lambda__2___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__1); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__2); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__3); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__4); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__5); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__6); +l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7 = _init_l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at_Lean_Tactic_FunInd_deriveInductionStructural___spec__18___lambda__3___closed__7); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__2___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__2); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__3); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__5___closed__4); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__2); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__6___closed__3); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__2); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__7___closed__3); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__1); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__2); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__9___closed__3); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__1); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__2); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__8___closed__3); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__10___closed__2(); @@ -79622,6 +81569,8 @@ l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1 = _init_ lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__2); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__11___closed__3); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__12___closed__2(); @@ -79634,10 +81583,6 @@ l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1 = _init_ lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__2); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__3); -l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4(); -lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__14___closed__4); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__2(); @@ -79646,18 +81591,74 @@ l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3 = _init_ lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__3); l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__15___closed__4); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__1); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__2); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__3); +l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___lambda__16___closed__4); l_Lean_Tactic_FunInd_deriveInductionStructural___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___closed__1); l_Lean_Tactic_FunInd_deriveInductionStructural___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___closed__2); l_Lean_Tactic_FunInd_deriveInductionStructural___boxed__const__1 = _init_l_Lean_Tactic_FunInd_deriveInductionStructural___boxed__const__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInductionStructural___boxed__const__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__1___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__2); +l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__3); +l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__4); +l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__3___closed__5); +l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__5___closed__2); +l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__2); +l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__6___closed__3); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__2); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__3); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__4); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__5); +l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__7___closed__6); +l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__8___closed__2); +l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__1); +l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2 = _init_l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___lambda__9___closed__2); +l_Lean_Tactic_FunInd_deriveCases___closed__1 = _init_l_Lean_Tactic_FunInd_deriveCases___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveCases___closed__1); l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__1); l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__2); l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__3); +l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__4); +l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__1___closed__5); l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__1); l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_deriveInduction___lambda__2___closed__2(); @@ -79668,63 +81669,61 @@ l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__1 = _init_l_Lean_Tact lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__1); l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2(); lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___lambda__2___closed__2); -l_Lean_Tactic_FunInd_isFunInductName___closed__1 = _init_l_Lean_Tactic_FunInd_isFunInductName___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___closed__1); -l_Lean_Tactic_FunInd_isFunInductName___closed__2 = _init_l_Lean_Tactic_FunInd_isFunInductName___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_isFunInductName___closed__2); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__1); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__2); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__3(); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__4); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__5); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__6); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__7); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__8); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__9); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__10); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____lambda__2___closed__11); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__1); -l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2(); -lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913____closed__2); -if (builtin) {res = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_16913_(lean_io_mk_world()); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__1); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__2); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__3 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__3(); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__4); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__5); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__6); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__7); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__8); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__9); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__10); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____lambda__2___closed__11); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__1); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__2); +l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3 = _init_l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3(); +lean_mark_persistent(l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706____closed__3); +if (builtin) {res = l_Lean_Tactic_FunInd_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17706_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__1); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__2); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__3); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__4); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__5); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__6); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__7); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__8); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__9); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__10); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__11); -l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12(); -lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059____closed__12); -if (builtin) {res = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17059_(lean_io_mk_world()); +}l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__1); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__2); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__3); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__4); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__5); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__6); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__7); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__8); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__9); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__10); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__11); +l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12 = _init_l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12(); +lean_mark_persistent(l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973____closed__12); +if (builtin) {res = l_initFn____x40_Lean_Meta_Tactic_FunInd___hyg_17973_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind.c b/stage0/stdlib/Lean/Meta/Tactic/Grind.c index f9745716db..52a28fc416 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind -// Imports: Lean.Meta.Tactic.Grind.Attr Lean.Meta.Tactic.Grind.RevertAll Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Cases Lean.Meta.Tactic.Grind.Injection Lean.Meta.Tactic.Grind.Core Lean.Meta.Tactic.Grind.Canon Lean.Meta.Tactic.Grind.MarkNestedProofs Lean.Meta.Tactic.Grind.Inv Lean.Meta.Tactic.Grind.Proof Lean.Meta.Tactic.Grind.Propagate Lean.Meta.Tactic.Grind.PP Lean.Meta.Tactic.Grind.Simp Lean.Meta.Tactic.Grind.Ctor Lean.Meta.Tactic.Grind.Parser Lean.Meta.Tactic.Grind.EMatchTheorem Lean.Meta.Tactic.Grind.EMatch Lean.Meta.Tactic.Grind.Main Lean.Meta.Tactic.Grind.CasesMatch Lean.Meta.Tactic.Grind.Arith Lean.Meta.Tactic.Grind.Ext +// Imports: Lean.Meta.Tactic.Grind.Attr Lean.Meta.Tactic.Grind.RevertAll Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Cases Lean.Meta.Tactic.Grind.Injection Lean.Meta.Tactic.Grind.Core Lean.Meta.Tactic.Grind.Canon Lean.Meta.Tactic.Grind.MarkNestedProofs Lean.Meta.Tactic.Grind.Inv Lean.Meta.Tactic.Grind.Proof Lean.Meta.Tactic.Grind.Propagate Lean.Meta.Tactic.Grind.PP Lean.Meta.Tactic.Grind.Simp Lean.Meta.Tactic.Grind.Ctor Lean.Meta.Tactic.Grind.Parser Lean.Meta.Tactic.Grind.EMatchTheorem Lean.Meta.Tactic.Grind.EMatch Lean.Meta.Tactic.Grind.Main Lean.Meta.Tactic.Grind.CasesMatch Lean.Meta.Tactic.Grind.Arith Lean.Meta.Tactic.Grind.Ext Lean.Meta.Tactic.Grind.MatchCond Lean.Meta.Tactic.Grind.DoNotSimp #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -37,6 +37,7 @@ LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1081_ LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_820_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_858____closed__2; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_226____closed__3; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_820____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_448____closed__2; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__2; @@ -63,6 +64,7 @@ static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____close LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_448_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1155____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_411____closed__2; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_970____closed__1; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_745____closed__1; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_858_(lean_object*); @@ -77,11 +79,14 @@ static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_559____clo LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_559_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_115____closed__3; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_633_(lean_object*); +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_933____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_41____closed__3; +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_337____closed__1; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_152_(lean_object*); LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_300_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1377____closed__1; @@ -92,6 +97,7 @@ static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_226____clo LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_896_(lean_object*); LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1266_(lean_object*); LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_374_(lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1; lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1229____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_596____closed__3; @@ -99,6 +105,7 @@ LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_708_( static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__6; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_300____closed__1; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_896____closed__2; +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1155_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_596____closed__1; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_78_(lean_object*); @@ -142,6 +149,7 @@ static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_374____clo static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_782____closed__1; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_41_(lean_object*); LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1044_(lean_object*); +static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3; static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_782____closed__2; LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_782_(lean_object*); static lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_337____closed__2; @@ -1783,6 +1791,87 @@ x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } } +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("matchCond", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__1; +x_2 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_896____closed__1; +x_3 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__17; +x_2 = lean_unsigned_to_nat(1414u); +x_3 = l_Lean_Name_num___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414_(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2; +x_3 = 0; +x_4 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3; +x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); +return x_5; +} +} +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("lambda", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__1; +x_2 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_896____closed__1; +x_3 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1; +x_4 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__17; +x_2 = lean_unsigned_to_nat(1451u); +x_3 = l_Lean_Name_num___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451_(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2; +x_3 = 0; +x_4 = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3; +x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); +return x_5; +} +} lean_object* initialize_Lean_Meta_Tactic_Grind_Attr(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_RevertAll(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Types(uint8_t builtin, lean_object*); @@ -1805,6 +1894,8 @@ lean_object* initialize_Lean_Meta_Tactic_Grind_Main(uint8_t builtin, lean_object lean_object* initialize_Lean_Meta_Tactic_Grind_CasesMatch(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Arith(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Ext(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_DoNotSimp(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind(uint8_t builtin, lean_object* w) { lean_object * res; @@ -1876,6 +1967,12 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Ext(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_MatchCond(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_DoNotSimp(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__1(); lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__1); l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_4____closed__2(); @@ -2236,6 +2333,24 @@ lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1377____c if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1377_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__1); +l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__2); +l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414____closed__3); +if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1414_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__1); +l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__2); +l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3 = _init_l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3(); +lean_mark_persistent(l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451____closed__3); +if (builtin) {res = l_Lean_initFn____x40_Lean_Meta_Tactic_Grind___hyg_1451_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Arith/Model.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Arith/Model.c index 775e38a44c..75edf24426 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Arith/Model.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Arith/Model.c @@ -63,6 +63,7 @@ static lean_object* l_panic___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__5_ uint8_t lean_nat_dec_le(lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Arith_Offset_mkModel___closed__1; +lean_object* l_Lean_Meta_isLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_AssocList_foldlM___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -1123,37 +1124,37 @@ return x_19; } else { -lean_object* x_20; lean_object* x_21; lean_object* x_27; lean_object* x_58; uint8_t x_59; -x_58 = lean_box(0); -x_59 = lean_nat_dec_lt(x_9, x_5); -if (x_59 == 0) +lean_object* x_20; lean_object* x_21; lean_object* x_27; lean_object* x_59; uint8_t x_60; +x_59 = lean_box(0); +x_60 = lean_nat_dec_lt(x_9, x_5); +if (x_60 == 0) { -lean_object* x_60; -x_60 = l_outOfBounds___rarg(x_58); -if (lean_obj_tag(x_60) == 0) +lean_object* x_61; +x_61 = l_outOfBounds___rarg(x_59); +if (lean_obj_tag(x_61) == 0) { -lean_object* x_61; lean_object* x_62; -x_61 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__5; +lean_object* x_62; lean_object* x_63; +x_62 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__5; lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_62 = l_panic___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__5(x_61, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_62) == 0) +x_63 = l_panic___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__5(x_62, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_63) == 0) { -lean_object* x_63; lean_object* x_64; -x_63 = lean_ctor_get(x_62, 1); -lean_inc(x_63); -lean_dec(x_62); -x_64 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_64, 0, x_8); -x_20 = x_64; -x_21 = x_63; +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_8); +x_20 = x_65; +x_21 = x_64; goto block_26; } else { -uint8_t x_65; +uint8_t x_66; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -1161,64 +1162,64 @@ lean_dec(x_12); lean_dec(x_9); lean_dec(x_8); lean_dec(x_1); -x_65 = !lean_is_exclusive(x_62); -if (x_65 == 0) +x_66 = !lean_is_exclusive(x_63); +if (x_66 == 0) { -return x_62; +return x_63; } else { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -x_66 = lean_ctor_get(x_62, 0); -x_67 = lean_ctor_get(x_62, 1); +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_63, 0); +x_68 = lean_ctor_get(x_63, 1); +lean_inc(x_68); lean_inc(x_67); -lean_inc(x_66); -lean_dec(x_62); -x_68 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -return x_68; +lean_dec(x_63); +x_69 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_69, 0, x_67); +lean_ctor_set(x_69, 1, x_68); +return x_69; } } } else { -lean_object* x_69; -x_69 = lean_ctor_get(x_60, 0); -lean_inc(x_69); -lean_dec(x_60); -x_27 = x_69; -goto block_57; -} -} -else -{ lean_object* x_70; -x_70 = lean_array_fget(x_4, x_9); -if (lean_obj_tag(x_70) == 0) +x_70 = lean_ctor_get(x_61, 0); +lean_inc(x_70); +lean_dec(x_61); +x_27 = x_70; +goto block_58; +} +} +else { -lean_object* x_71; lean_object* x_72; -x_71 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__5; +lean_object* x_71; +x_71 = lean_array_fget(x_4, x_9); +if (lean_obj_tag(x_71) == 0) +{ +lean_object* x_72; lean_object* x_73; +x_72 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__5; lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -x_72 = l_panic___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__5(x_71, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_72) == 0) +x_73 = l_panic___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__5(x_72, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_73) == 0) { -lean_object* x_73; lean_object* x_74; -x_73 = lean_ctor_get(x_72, 1); -lean_inc(x_73); -lean_dec(x_72); -x_74 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_74, 0, x_8); -x_20 = x_74; -x_21 = x_73; +lean_object* x_74; lean_object* x_75; +x_74 = lean_ctor_get(x_73, 1); +lean_inc(x_74); +lean_dec(x_73); +x_75 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_75, 0, x_8); +x_20 = x_75; +x_21 = x_74; goto block_26; } else { -uint8_t x_75; +uint8_t x_76; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -1226,34 +1227,34 @@ lean_dec(x_12); lean_dec(x_9); lean_dec(x_8); lean_dec(x_1); -x_75 = !lean_is_exclusive(x_72); -if (x_75 == 0) +x_76 = !lean_is_exclusive(x_73); +if (x_76 == 0) { -return x_72; +return x_73; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_72, 0); -x_77 = lean_ctor_get(x_72, 1); +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_ctor_get(x_73, 0); +x_78 = lean_ctor_get(x_73, 1); +lean_inc(x_78); lean_inc(x_77); -lean_inc(x_76); -lean_dec(x_72); -x_78 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_78, 0, x_76); -lean_ctor_set(x_78, 1, x_77); -return x_78; +lean_dec(x_73); +x_79 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_79, 0, x_77); +lean_ctor_set(x_79, 1, x_78); +return x_79; } } } else { -lean_object* x_79; -x_79 = lean_ctor_get(x_70, 0); -lean_inc(x_79); -lean_dec(x_70); -x_27 = x_79; -goto block_57; +lean_object* x_80; +x_80 = lean_ctor_get(x_71, 0); +lean_inc(x_80); +lean_dec(x_71); +x_27 = x_80; +goto block_58; } } block_26: @@ -1272,151 +1273,163 @@ x_11 = lean_box(0); x_16 = x_21; goto _start; } -block_57: +block_58: { -lean_object* x_28; lean_object* x_29; uint8_t x_30; +lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_53; x_28 = lean_int_sub(x_27, x_6); lean_dec(x_27); x_29 = l_Int_toNat(x_28); lean_dec(x_28); -x_30 = lean_nat_dec_lt(x_9, x_2); -if (x_30 == 0) +x_53 = lean_nat_dec_lt(x_9, x_2); +if (x_53 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = l_Lean_instInhabitedExpr; -x_32 = l_outOfBounds___rarg(x_31); -lean_inc(x_32); -x_33 = l_Lean_Meta_Grind_Arith_isNatOffset_x3f(x_32); -if (lean_obj_tag(x_33) == 0) -{ -lean_object* x_34; lean_object* x_35; uint8_t x_36; -lean_inc(x_32); -x_34 = l_Lean_Meta_Grind_Arith_isNatNum_x3f(x_32); -x_35 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__1; -x_36 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_159____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_1294____spec__1(x_34, x_35); -lean_dec(x_34); -if (x_36 == 0) -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_32); -lean_ctor_set(x_37, 1, x_29); -x_38 = lean_array_push(x_8, x_37); -x_39 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_39, 0, x_38); -x_20 = x_39; -x_21 = x_16; -goto block_26; +lean_object* x_54; lean_object* x_55; +x_54 = l_Lean_instInhabitedExpr; +x_55 = l_outOfBounds___rarg(x_54); +x_30 = x_55; +goto block_52; } else { -lean_object* x_40; +lean_object* x_56; lean_object* x_57; +x_56 = l_Lean_instInhabitedExpr; +lean_inc(x_1); +x_57 = l_Lean_PersistentArray_get_x21___rarg(x_56, x_1, x_9); +x_30 = x_57; +goto block_52; +} +block_52: +{ +lean_object* x_31; +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_30); +x_31 = l_Lean_Meta_isLitValue(x_30, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; uint8_t x_33; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_unbox(x_32); lean_dec(x_32); -lean_dec(x_29); -x_40 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_40, 0, x_8); -x_20 = x_40; -x_21 = x_16; +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_31, 1); +lean_inc(x_34); +lean_dec(x_31); +lean_inc(x_30); +x_35 = l_Lean_Meta_Grind_Arith_isNatOffset_x3f(x_30); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; uint8_t x_38; +lean_inc(x_30); +x_36 = l_Lean_Meta_Grind_Arith_isNatNum_x3f(x_30); +x_37 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__1; +x_38 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_159____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_1294____spec__1(x_36, x_37); +lean_dec(x_36); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_30); +lean_ctor_set(x_39, 1, x_29); +x_40 = lean_array_push(x_8, x_39); +x_41 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_41, 0, x_40); +x_20 = x_41; +x_21 = x_34; goto block_26; } -} else { -uint8_t x_41; -lean_dec(x_32); -lean_dec(x_29); -x_41 = !lean_is_exclusive(x_33); -if (x_41 == 0) -{ lean_object* x_42; -x_42 = lean_ctor_get(x_33, 0); -lean_dec(x_42); -lean_ctor_set(x_33, 0, x_8); -x_20 = x_33; -x_21 = x_16; -goto block_26; -} -else -{ -lean_object* x_43; -lean_dec(x_33); -x_43 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_43, 0, x_8); -x_20 = x_43; -x_21 = x_16; -goto block_26; -} -} -} -else -{ -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = l_Lean_instInhabitedExpr; -lean_inc(x_1); -x_45 = l_Lean_PersistentArray_get_x21___rarg(x_44, x_1, x_9); -lean_inc(x_45); -x_46 = l_Lean_Meta_Grind_Arith_isNatOffset_x3f(x_45); -if (lean_obj_tag(x_46) == 0) -{ -lean_object* x_47; lean_object* x_48; uint8_t x_49; -lean_inc(x_45); -x_47 = l_Lean_Meta_Grind_Arith_isNatNum_x3f(x_45); -x_48 = l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Arith_Offset_mkModel___spec__6___closed__1; -x_49 = l___private_Init_Data_Option_Basic_0__Option_beqOption____x40_Init_Data_Option_Basic___hyg_159____at___private_Lean_Meta_Basic_0__Lean_Meta_beqInfoCacheKey____x40_Lean_Meta_Basic___hyg_1294____spec__1(x_47, x_48); -lean_dec(x_47); -if (x_49 == 0) -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_50, 0, x_45); -lean_ctor_set(x_50, 1, x_29); -x_51 = lean_array_push(x_8, x_50); -x_52 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_52, 0, x_51); -x_20 = x_52; -x_21 = x_16; -goto block_26; -} -else -{ -lean_object* x_53; -lean_dec(x_45); +lean_dec(x_30); lean_dec(x_29); -x_53 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_53, 0, x_8); -x_20 = x_53; -x_21 = x_16; +x_42 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_42, 0, x_8); +x_20 = x_42; +x_21 = x_34; goto block_26; } } else { -uint8_t x_54; -lean_dec(x_45); +uint8_t x_43; +lean_dec(x_30); lean_dec(x_29); -x_54 = !lean_is_exclusive(x_46); -if (x_54 == 0) +x_43 = !lean_is_exclusive(x_35); +if (x_43 == 0) { -lean_object* x_55; -x_55 = lean_ctor_get(x_46, 0); -lean_dec(x_55); -lean_ctor_set(x_46, 0, x_8); -x_20 = x_46; -x_21 = x_16; +lean_object* x_44; +x_44 = lean_ctor_get(x_35, 0); +lean_dec(x_44); +lean_ctor_set(x_35, 0, x_8); +x_20 = x_35; +x_21 = x_34; goto block_26; } else { -lean_object* x_56; -lean_dec(x_46); -x_56 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_56, 0, x_8); -x_20 = x_56; -x_21 = x_16; +lean_object* x_45; +lean_dec(x_35); +x_45 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_45, 0, x_8); +x_20 = x_45; +x_21 = x_34; goto block_26; } } } +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_30); +lean_dec(x_29); +x_46 = lean_ctor_get(x_31, 1); +lean_inc(x_46); +lean_dec(x_31); +x_47 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_47, 0, x_8); +x_20 = x_47; +x_21 = x_46; +goto block_26; +} +} +else +{ +uint8_t x_48; +lean_dec(x_30); +lean_dec(x_29); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_1); +x_48 = !lean_is_exclusive(x_31); +if (x_48 == 0) +{ +return x_31; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_31, 0); +x_50 = lean_ctor_get(x_31, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_31); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} } } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c index 5368393d04..893d6711f9 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Attr.c @@ -13,1430 +13,109 @@ #ifdef __cplusplus extern "C" { #endif -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isGrindCasesTarget___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__32; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3; lean_object* lean_mk_empty_array_with_capacity(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getAttrKindFromOpt(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__22; -lean_object* l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__15; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19; -uint8_t l_Lean_Exception_isInterrupt(lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_grindCasesExt; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21; +static uint64_t l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__2; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__26; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_getAttrKindCore___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369_(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____lambda__1(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4; -lean_object* l_Lean_RBNode_insert___at_Lean_NameSet_insert___spec__1(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__9; -static uint64_t l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__8; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getAttrKindCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10; +static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__30; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__19; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15; lean_object* l_Lean_Meta_Grind_eraseCasesAttr(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__18; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__11; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7; lean_object* l_Lean_Meta_Grind_addEMatchAttr(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__21; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__29; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24; -static lean_object* l_Lean_Meta_Grind_isGrindCasesTarget___closed__1; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14; -lean_object* lean_st_ref_take(lean_object*, lean_object*); -lean_object* l_Lean_getConstInfo___at___private_Lean_Compiler_InlineAttrs_0__Lean_Compiler_isValidMacroInline___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__12; -lean_object* l_Lean_registerSimpleScopedEnvExtension___rarg(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7; lean_object* l_Lean_MessageData_ofSyntax(lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__23; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971_(lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__16; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__4; lean_object* lean_st_ref_get(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9; lean_object* lean_st_mk_ref(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5; lean_object* l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__20; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isGrindCasesTarget(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__7; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__27; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__24; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__6; lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__25; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__8; lean_object* l_Lean_Meta_Grind_eraseEMatchAttr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getAttrKindCore(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_addCasesAttr(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526_(lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__28; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_getAttrKindCore___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -extern lean_object* l_Lean_NameSet_empty; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23; -lean_object* l_id___rarg___boxed(lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__10; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__14; -uint8_t l_Lean_NameSet_contains(lean_object*, lean_object*); -lean_object* l_Lean_Expr_getAppFn_x27(lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25; uint8_t l_Lean_Syntax_isNone(lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__13; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3_(lean_object*); -lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16; -lean_object* l_Lean_ScopedEnvExtension_addCore___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18; -LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13; lean_object* l_Lean_registerBuiltinAttribute(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6; lean_object* lean_array_mk(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__5; -extern lean_object* l_Lean_NameSet_instInhabited; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7; +static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__31; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__2; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20; static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__17; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9; -uint8_t l_Lean_Exception_isRuntime(lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1; -lean_object* l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1; +static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__33; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getAttrKindFromOpt___boxed(lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_throwError___at_Lean_Attribute_Builtin_ensureNoArgs___spec__2(lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(lean_object*); static lean_object* l_Lean_Meta_Grind_getAttrKindCore___closed__3; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22; -lean_object* l_Lean_MessageData_ofName(lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____lambda__1(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; -x_3 = lean_box(0); -x_4 = l_Lean_RBNode_insert___at_Lean_NameSet_insert___spec__1(x_1, x_2, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Meta", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Grind", 5, 5); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindCasesExt", 13, 13); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3; -x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____lambda__1), 2, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_id___rarg___boxed), 1, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6; -x_3 = l_Lean_NameSet_empty; -x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7; -x_5 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_2); -lean_ctor_set(x_5, 2, x_3); -lean_ctor_set(x_5, 3, x_4); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3_(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8; -x_3 = l_Lean_registerSimpleScopedEnvExtension___rarg(x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_isGrindCasesTarget___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_Meta_Grind_grindCasesExt; -return x_1; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isGrindCasesTarget(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; uint8_t x_6; -x_5 = lean_st_ref_get(x_3, x_4); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; lean_object* x_13; -x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_7, 0); -lean_inc(x_8); -lean_dec(x_7); -x_9 = l_Lean_NameSet_instInhabited; -x_10 = l_Lean_Meta_Grind_isGrindCasesTarget___closed__1; -x_11 = l_Lean_ScopedEnvExtension_getState___rarg(x_9, x_10, x_8); -x_12 = l_Lean_NameSet_contains(x_11, x_1); -lean_dec(x_11); -x_13 = lean_box(x_12); -lean_ctor_set(x_5, 0, x_13); -return x_5; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; -x_14 = lean_ctor_get(x_5, 0); -x_15 = lean_ctor_get(x_5, 1); -lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_5); -x_16 = lean_ctor_get(x_14, 0); -lean_inc(x_16); -lean_dec(x_14); -x_17 = l_Lean_NameSet_instInhabited; -x_18 = l_Lean_Meta_Grind_isGrindCasesTarget___closed__1; -x_19 = l_Lean_ScopedEnvExtension_getState___rarg(x_17, x_18, x_16); -x_20 = l_Lean_NameSet_contains(x_19, x_1); -lean_dec(x_19); -x_21 = lean_box(x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_15); -return x_22; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isGrindCasesTarget___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_Meta_Grind_isGrindCasesTarget(x_1, x_2, x_3, x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Expr_getAppFn_x27(x_2); -if (lean_obj_tag(x_8) == 4) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -lean_dec(x_8); -x_10 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_10, 0, x_9); -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_7); -return x_11; -} -else -{ -lean_object* x_12; lean_object* x_13; -lean_dec(x_8); -x_12 = lean_box(0); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_7); -return x_13; -} -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1___boxed), 7, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; uint8_t x_8; lean_object* x_9; -x_7 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1; -x_8 = 0; -x_9 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_1, x_7, x_8, x_2, x_3, x_4, x_5, x_6); -return x_9; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_8; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("`", 1, 1); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("` is not an inductive datatype or an alias for one", 50, 50); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("` is a definition, but it is not an alias/abbreviation for an inductive datatype", 80, 80); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7() { -_start: -{ -uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; -x_1 = 0; -x_2 = 1; -x_3 = 1; -x_4 = 0; -x_5 = 2; -x_6 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_6, 0, x_1); -lean_ctor_set_uint8(x_6, 1, x_1); -lean_ctor_set_uint8(x_6, 2, x_1); -lean_ctor_set_uint8(x_6, 3, x_1); -lean_ctor_set_uint8(x_6, 4, x_1); -lean_ctor_set_uint8(x_6, 5, x_2); -lean_ctor_set_uint8(x_6, 6, x_2); -lean_ctor_set_uint8(x_6, 7, x_1); -lean_ctor_set_uint8(x_6, 8, x_2); -lean_ctor_set_uint8(x_6, 9, x_3); -lean_ctor_set_uint8(x_6, 10, x_4); -lean_ctor_set_uint8(x_6, 11, x_2); -lean_ctor_set_uint8(x_6, 12, x_2); -lean_ctor_set_uint8(x_6, 13, x_2); -lean_ctor_set_uint8(x_6, 14, x_5); -lean_ctor_set_uint8(x_6, 15, x_2); -lean_ctor_set_uint8(x_6, 16, x_2); -return x_6; -} -} -static uint64_t _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__8() { -_start: -{ -lean_object* x_1; uint64_t x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7; -x_2 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9() { -_start: -{ -lean_object* x_1; -x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(32u); -x_2 = lean_mk_empty_array_with_capacity(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11; -x_2 = lean_alloc_ctor(0, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13() { -_start: -{ -size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = 5; -x_2 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12; -x_3 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11; -x_4 = lean_unsigned_to_nat(0u); -x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); -lean_ctor_set(x_5, 0, x_2); -lean_ctor_set(x_5, 1, x_3); -lean_ctor_set(x_5, 2, x_4); -lean_ctor_set(x_5, 3, x_4); -lean_ctor_set_usize(x_5, 4, x_1); -return x_5; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; -x_2 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13; -x_3 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; uint64_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_1 = lean_box(0); -x_2 = lean_box(0); -x_3 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7; -x_4 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__8; -x_5 = 0; -x_6 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14; -x_7 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15; -x_8 = lean_unsigned_to_nat(0u); -x_9 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_9, 0, x_3); -lean_ctor_set(x_9, 1, x_1); -lean_ctor_set(x_9, 2, x_6); -lean_ctor_set(x_9, 3, x_7); -lean_ctor_set(x_9, 4, x_2); -lean_ctor_set(x_9, 5, x_8); -lean_ctor_set(x_9, 6, x_2); -lean_ctor_set_uint64(x_9, sizeof(void*)*7, x_4); -lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 8, x_5); -lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 9, x_5); -lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 10, x_5); -return x_9; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_unsigned_to_nat(0u); -x_2 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; -x_3 = lean_alloc_ctor(0, 9, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_1); -lean_ctor_set(x_3, 2, x_1); -lean_ctor_set(x_3, 3, x_2); -lean_ctor_set(x_3, 4, x_2); -lean_ctor_set(x_3, 5, x_2); -lean_ctor_set(x_3, 6, x_2); -lean_ctor_set(x_3, 7, x_2); -lean_ctor_set(x_3, 8, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; -x_2 = lean_alloc_ctor(0, 6, 0); -lean_ctor_set(x_2, 0, x_1); -lean_ctor_set(x_2, 1, x_1); -lean_ctor_set(x_2, 2, x_1); -lean_ctor_set(x_2, 3, x_1); -lean_ctor_set(x_2, 4, x_1); -lean_ctor_set(x_2, 5, x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; -x_2 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_2, 0, x_1); -lean_ctor_set(x_2, 1, x_1); -lean_ctor_set(x_2, 2, x_1); -lean_ctor_set(x_2, 3, x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17; -x_3 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18; -x_4 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13; -x_5 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19; -x_6 = lean_alloc_ctor(0, 5, 0); -lean_ctor_set(x_6, 0, x_2); -lean_ctor_set(x_6, 1, x_3); -lean_ctor_set(x_6, 2, x_1); -lean_ctor_set(x_6, 3, x_4); -lean_ctor_set(x_6, 4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("` is a recursive datatype", 25, 25); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -lean_inc(x_1); -x_5 = l_Lean_getConstInfo___at___private_Lean_Compiler_InlineAttrs_0__Lean_Compiler_isValidMacroInline___spec__1(x_1, x_2, x_3, x_4); -if (lean_obj_tag(x_5) == 0) -{ -lean_object* x_6; -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -switch (lean_obj_tag(x_6)) { -case 1: -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -lean_dec(x_5); -x_8 = lean_ctor_get(x_6, 0); -lean_inc(x_8); -lean_dec(x_6); -x_9 = l_Lean_MessageData_ofName(x_1); -x_10 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; -x_11 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_11, 0, x_10); -lean_ctor_set(x_11, 1, x_9); -x_12 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6; -x_13 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_13, 0, x_11); -lean_ctor_set(x_13, 1, x_12); -x_14 = lean_ctor_get(x_8, 1); -lean_inc(x_14); -lean_dec(x_8); -x_15 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20; -x_16 = lean_st_mk_ref(x_15, x_7); -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1; -x_20 = 0; -x_21 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16; -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_17); -x_22 = l_Lean_Meta_lambdaTelescope___at___private_Lean_Meta_Eqns_0__Lean_Meta_mkSimpleEqThm___spec__1___rarg(x_14, x_19, x_20, x_21, x_17, x_2, x_3, x_18); -if (lean_obj_tag(x_22) == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); -x_24 = lean_ctor_get(x_22, 1); -lean_inc(x_24); -lean_dec(x_22); -x_25 = lean_st_ref_get(x_17, x_24); -lean_dec(x_17); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_26; lean_object* x_27; -x_26 = lean_ctor_get(x_25, 1); -lean_inc(x_26); -lean_dec(x_25); -x_27 = l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(x_13, x_2, x_3, x_26); -lean_dec(x_3); -lean_dec(x_2); -return x_27; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_25, 1); -lean_inc(x_28); -lean_dec(x_25); -x_29 = lean_ctor_get(x_23, 0); -lean_inc(x_29); -lean_dec(x_23); -lean_inc(x_3); -lean_inc(x_2); -x_30 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr(x_29, x_2, x_3, x_28); -if (lean_obj_tag(x_30) == 0) -{ -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -return x_30; -} -else -{ -uint8_t x_31; -x_31 = !lean_is_exclusive(x_30); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_32 = lean_ctor_get(x_30, 0); -x_33 = lean_ctor_get(x_30, 1); -x_34 = l_Lean_Exception_isInterrupt(x_32); -if (x_34 == 0) -{ -uint8_t x_35; -x_35 = l_Lean_Exception_isRuntime(x_32); -if (x_35 == 0) -{ -lean_object* x_36; -lean_free_object(x_30); -lean_dec(x_32); -x_36 = l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(x_13, x_2, x_3, x_33); -lean_dec(x_3); -lean_dec(x_2); -return x_36; -} -else -{ -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -return x_30; -} -} -else -{ -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -return x_30; -} -} -else -{ -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_ctor_get(x_30, 0); -x_38 = lean_ctor_get(x_30, 1); -lean_inc(x_38); -lean_inc(x_37); -lean_dec(x_30); -x_39 = l_Lean_Exception_isInterrupt(x_37); -if (x_39 == 0) -{ -uint8_t x_40; -x_40 = l_Lean_Exception_isRuntime(x_37); -if (x_40 == 0) -{ -lean_object* x_41; -lean_dec(x_37); -x_41 = l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(x_13, x_2, x_3, x_38); -lean_dec(x_3); -lean_dec(x_2); -return x_41; -} -else -{ -lean_object* x_42; -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -x_42 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_42, 0, x_37); -lean_ctor_set(x_42, 1, x_38); -return x_42; -} -} -else -{ -lean_object* x_43; -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_37); -lean_ctor_set(x_43, 1, x_38); -return x_43; -} -} -} -} -} -else -{ -uint8_t x_44; -lean_dec(x_17); -lean_dec(x_13); -lean_dec(x_3); -lean_dec(x_2); -x_44 = !lean_is_exclusive(x_22); -if (x_44 == 0) -{ -return x_22; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_22, 0); -x_46 = lean_ctor_get(x_22, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_22); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; -} -} -} -case 5: -{ -lean_object* x_48; uint8_t x_49; -x_48 = lean_ctor_get(x_6, 0); -lean_inc(x_48); -lean_dec(x_6); -x_49 = lean_ctor_get_uint8(x_48, sizeof(void*)*6); -lean_dec(x_48); -if (x_49 == 0) -{ -uint8_t x_50; -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_50 = !lean_is_exclusive(x_5); -if (x_50 == 0) -{ -lean_object* x_51; lean_object* x_52; -x_51 = lean_ctor_get(x_5, 0); -lean_dec(x_51); -x_52 = lean_box(0); -lean_ctor_set(x_5, 0, x_52); -return x_5; -} -else -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_5, 1); -lean_inc(x_53); -lean_dec(x_5); -x_54 = lean_box(0); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_53); -return x_55; -} -} -else -{ -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_56 = lean_ctor_get(x_5, 1); -lean_inc(x_56); -lean_dec(x_5); -x_57 = l_Lean_MessageData_ofName(x_1); -x_58 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_57); -x_60 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22; -x_61 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -x_62 = l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(x_61, x_2, x_3, x_56); -lean_dec(x_3); -lean_dec(x_2); -return x_62; -} -} -default: -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_6); -x_63 = lean_ctor_get(x_5, 1); -lean_inc(x_63); -lean_dec(x_5); -x_64 = l_Lean_MessageData_ofName(x_1); -x_65 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; -x_66 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_66, 0, x_65); -lean_ctor_set(x_66, 1, x_64); -x_67 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4; -x_68 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_68, 0, x_66); -lean_ctor_set(x_68, 1, x_67); -x_69 = l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(x_68, x_2, x_3, x_63); -lean_dec(x_3); -lean_dec(x_2); -return x_69; -} -} -} -else -{ -uint8_t x_70; -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_70 = !lean_is_exclusive(x_5); -if (x_70 == 0) -{ -return x_5; -} -else -{ -lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_71 = lean_ctor_get(x_5, 0); -x_72 = lean_ctor_get(x_5, 1); -lean_inc(x_72); -lean_inc(x_71); -lean_dec(x_5); -x_73 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -return x_73; -} -} -} -} -static lean_object* _init_l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10; -x_2 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_2, 0, x_1); -lean_ctor_set(x_2, 1, x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; -x_7 = lean_ctor_get(x_4, 6); -lean_inc(x_7); -lean_dec(x_4); -x_8 = lean_st_ref_take(x_5, x_6); -x_9 = lean_ctor_get(x_8, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_8, 1); -lean_inc(x_10); -lean_dec(x_8); -x_11 = !lean_is_exclusive(x_9); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_12 = lean_ctor_get(x_9, 0); -x_13 = lean_ctor_get(x_9, 4); -lean_dec(x_13); -x_14 = l_Lean_ScopedEnvExtension_addCore___rarg(x_12, x_1, x_2, x_3, x_7); -x_15 = l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1; -lean_ctor_set(x_9, 4, x_15); -lean_ctor_set(x_9, 0, x_14); -x_16 = lean_st_ref_set(x_5, x_9, x_10); -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; -x_18 = lean_ctor_get(x_16, 0); -lean_dec(x_18); -x_19 = lean_box(0); -lean_ctor_set(x_16, 0, x_19); -return x_16; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_16, 1); -lean_inc(x_20); -lean_dec(x_16); -x_21 = lean_box(0); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_20); -return x_22; -} -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_23 = lean_ctor_get(x_9, 0); -x_24 = lean_ctor_get(x_9, 1); -x_25 = lean_ctor_get(x_9, 2); -x_26 = lean_ctor_get(x_9, 3); -x_27 = lean_ctor_get(x_9, 5); -x_28 = lean_ctor_get(x_9, 6); -x_29 = lean_ctor_get(x_9, 7); -lean_inc(x_29); -lean_inc(x_28); -lean_inc(x_27); -lean_inc(x_26); -lean_inc(x_25); -lean_inc(x_24); -lean_inc(x_23); -lean_dec(x_9); -x_30 = l_Lean_ScopedEnvExtension_addCore___rarg(x_23, x_1, x_2, x_3, x_7); -x_31 = l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1; -x_32 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_32, 0, x_30); -lean_ctor_set(x_32, 1, x_24); -lean_ctor_set(x_32, 2, x_25); -lean_ctor_set(x_32, 3, x_26); -lean_ctor_set(x_32, 4, x_31); -lean_ctor_set(x_32, 5, x_27); -lean_ctor_set(x_32, 6, x_28); -lean_ctor_set(x_32, 7, x_29); -x_33 = lean_st_ref_set(x_5, x_32, x_10); -x_34 = lean_ctor_get(x_33, 1); -lean_inc(x_34); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - x_35 = x_33; -} else { - lean_dec_ref(x_33); - x_35 = lean_box(0); -} -x_36 = lean_box(0); -if (lean_is_scalar(x_35)) { - x_37 = lean_alloc_ctor(0, 2, 0); -} else { - x_37 = x_35; -} -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_34); -return x_37; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_1); -x_7 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr(x_1, x_4, x_5, x_6); -if (lean_obj_tag(x_7) == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_8 = lean_ctor_get(x_7, 1); -lean_inc(x_8); -lean_dec(x_7); -x_9 = l_Lean_Meta_Grind_isGrindCasesTarget___closed__1; -x_10 = l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1(x_9, x_1, x_3, x_4, x_5, x_8); -lean_dec(x_5); -return x_10; -} -else -{ -uint8_t x_11; -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_1); -x_11 = !lean_is_exclusive(x_7); -if (x_11 == 0) -{ -return x_7; -} -else -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_7, 0); -x_13 = lean_ctor_get(x_7, 1); -lean_inc(x_13); -lean_inc(x_12); -lean_dec(x_7); -x_14 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -return x_14; -} -} -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("attribute cannot be erased", 26, 26); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; -x_5 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2; -x_6 = l_Lean_throwError___at_Lean_Attribute_Builtin_ensureNoArgs___spec__2(x_5, x_2, x_3, x_4); -return x_6; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("initFn", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("_@", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Tactic", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Attr", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("_hyg", 4, 4); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16; -x_2 = lean_unsigned_to_nat(369u); -x_3 = l_Lean_Name_num___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("grind_cases", 11, 11); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("`grind` tactic applies `cases` to (non-recursive) inductives during pre-processing step", 87, 87); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20; -x_4 = 0; -x_5 = lean_alloc_ctor(0, 3, 1); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_2); -lean_ctor_set(x_5, 2, x_3); -lean_ctor_set_uint8(x_5, sizeof(void*)*3, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1___boxed), 6, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___boxed), 4, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23; -x_4 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_4, 0, x_1); -lean_ctor_set(x_4, 1, x_2); -lean_ctor_set(x_4, 2, x_3); -return x_4; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369_(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24; -x_3 = l_Lean_registerBuiltinAttribute(x_2, x_1); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -uint8_t x_7; lean_object* x_8; -x_7 = lean_unbox(x_3); -lean_dec(x_3); -x_8 = l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1(x_1, x_2, x_7, x_4, x_5, x_6); -lean_dec(x_5); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -uint8_t x_7; lean_object* x_8; -x_7 = lean_unbox(x_3); -lean_dec(x_3); -x_8 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__1(x_1, x_2, x_7, x_4, x_5, x_6); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2(x_1, x_2, x_3, x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_getAttrKindCore___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -1479,7 +158,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__1() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Parser", 6, 6); +x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } @@ -1487,23 +166,39 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__2() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindMod", 8, 8); +x_1 = lean_mk_string_unchecked("Parser", 6, 6); return x_1; } } static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__3() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Attr", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("grindMod", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; -x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; +x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__4() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__6() { _start: { lean_object* x_1; @@ -1511,16 +206,33 @@ x_1 = lean_mk_string_unchecked("unexpected `grind` theorem kind: `", 34, 34); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__5() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__4; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__6; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__6() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("`", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__8; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__10() { _start: { lean_object* x_1; @@ -1528,53 +240,13 @@ x_1 = lean_mk_string_unchecked("grindEq", 7, 7); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__7() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; -x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__6; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__8() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindFwd", 8, 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; -x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__8; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__10() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindBwd", 8, 8); -return x_1; -} -} static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__10; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1584,7 +256,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__12() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindEqRhs", 10, 10); +x_1 = lean_mk_string_unchecked("grindFwd", 8, 8); return x_1; } } @@ -1592,9 +264,9 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__12; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1604,7 +276,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__14() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindEqBoth", 11, 11); +x_1 = lean_mk_string_unchecked("grindBwd", 8, 8); return x_1; } } @@ -1612,9 +284,9 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__14; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1624,7 +296,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__16() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindEqBwd", 10, 10); +x_1 = lean_mk_string_unchecked("grindEqRhs", 10, 10); return x_1; } } @@ -1632,9 +304,9 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__17() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__16; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1644,7 +316,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__18() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindCases", 10, 10); +x_1 = lean_mk_string_unchecked("grindEqBoth", 11, 11); return x_1; } } @@ -1652,9 +324,9 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__19() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__18; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1664,7 +336,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__20() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("grindCasesEager", 15, 15); +x_1 = lean_mk_string_unchecked("grindEqBwd", 10, 10); return x_1; } } @@ -1672,9 +344,9 @@ static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1; -x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__20; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; @@ -1683,6 +355,46 @@ return x_5; static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__22() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("grindCases", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__23() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; +x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__22; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__24() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("grindCasesEager", 15, 15); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__25() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__2; +x_3 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; +x_4 = l_Lean_Meta_Grind_getAttrKindCore___closed__24; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__26() { +_start: +{ uint8_t x_1; lean_object* x_2; x_1 = 1; x_2 = lean_alloc_ctor(1, 0, 1); @@ -1690,7 +402,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__23() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__27() { _start: { uint8_t x_1; lean_object* x_2; @@ -1700,7 +412,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__24() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__28() { _start: { uint8_t x_1; lean_object* x_2; @@ -1710,7 +422,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__25() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__29() { _start: { uint8_t x_1; lean_object* x_2; @@ -1720,7 +432,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__26() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__30() { _start: { uint8_t x_1; lean_object* x_2; @@ -1730,7 +442,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__27() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__31() { _start: { uint8_t x_1; lean_object* x_2; @@ -1740,7 +452,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__28() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__32() { _start: { uint8_t x_1; lean_object* x_2; @@ -1750,7 +462,7 @@ lean_ctor_set_uint8(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__29() { +static lean_object* _init_l_Lean_Meta_Grind_getAttrKindCore___closed__33() { _start: { uint8_t x_1; lean_object* x_2; @@ -1764,18 +476,18 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getAttrKindCore(lean_object* x_1, lea _start: { lean_object* x_5; uint8_t x_6; -x_5 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; +x_5 = l_Lean_Meta_Grind_getAttrKindCore___closed__5; lean_inc(x_1); x_6 = l_Lean_Syntax_isOfKind(x_1, x_5); if (x_6 == 0) { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_7 = l_Lean_MessageData_ofSyntax(x_1); -x_8 = l_Lean_Meta_Grind_getAttrKindCore___closed__5; +x_8 = l_Lean_Meta_Grind_getAttrKindCore___closed__7; x_9 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_9, 0, x_8); lean_ctor_set(x_9, 1, x_7); -x_10 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; +x_10 = l_Lean_Meta_Grind_getAttrKindCore___closed__9; x_11 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_11, 0, x_9); lean_ctor_set(x_11, 1, x_10); @@ -1787,59 +499,59 @@ else lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; x_13 = lean_unsigned_to_nat(0u); x_14 = l_Lean_Syntax_getArg(x_1, x_13); -x_15 = l_Lean_Meta_Grind_getAttrKindCore___closed__7; +x_15 = l_Lean_Meta_Grind_getAttrKindCore___closed__11; lean_inc(x_14); x_16 = l_Lean_Syntax_isOfKind(x_14, x_15); if (x_16 == 0) { lean_object* x_17; uint8_t x_18; -x_17 = l_Lean_Meta_Grind_getAttrKindCore___closed__9; +x_17 = l_Lean_Meta_Grind_getAttrKindCore___closed__13; lean_inc(x_14); x_18 = l_Lean_Syntax_isOfKind(x_14, x_17); if (x_18 == 0) { lean_object* x_19; uint8_t x_20; -x_19 = l_Lean_Meta_Grind_getAttrKindCore___closed__11; +x_19 = l_Lean_Meta_Grind_getAttrKindCore___closed__15; lean_inc(x_14); x_20 = l_Lean_Syntax_isOfKind(x_14, x_19); if (x_20 == 0) { lean_object* x_21; uint8_t x_22; -x_21 = l_Lean_Meta_Grind_getAttrKindCore___closed__13; +x_21 = l_Lean_Meta_Grind_getAttrKindCore___closed__17; lean_inc(x_14); x_22 = l_Lean_Syntax_isOfKind(x_14, x_21); if (x_22 == 0) { lean_object* x_23; uint8_t x_24; -x_23 = l_Lean_Meta_Grind_getAttrKindCore___closed__15; +x_23 = l_Lean_Meta_Grind_getAttrKindCore___closed__19; lean_inc(x_14); x_24 = l_Lean_Syntax_isOfKind(x_14, x_23); if (x_24 == 0) { lean_object* x_25; uint8_t x_26; -x_25 = l_Lean_Meta_Grind_getAttrKindCore___closed__17; +x_25 = l_Lean_Meta_Grind_getAttrKindCore___closed__21; lean_inc(x_14); x_26 = l_Lean_Syntax_isOfKind(x_14, x_25); if (x_26 == 0) { lean_object* x_27; uint8_t x_28; -x_27 = l_Lean_Meta_Grind_getAttrKindCore___closed__19; +x_27 = l_Lean_Meta_Grind_getAttrKindCore___closed__23; lean_inc(x_14); x_28 = l_Lean_Syntax_isOfKind(x_14, x_27); if (x_28 == 0) { lean_object* x_29; uint8_t x_30; -x_29 = l_Lean_Meta_Grind_getAttrKindCore___closed__21; +x_29 = l_Lean_Meta_Grind_getAttrKindCore___closed__25; x_30 = l_Lean_Syntax_isOfKind(x_14, x_29); if (x_30 == 0) { lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; x_31 = l_Lean_MessageData_ofSyntax(x_1); -x_32 = l_Lean_Meta_Grind_getAttrKindCore___closed__5; +x_32 = l_Lean_Meta_Grind_getAttrKindCore___closed__7; x_33 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_33, 0, x_32); lean_ctor_set(x_33, 1, x_31); -x_34 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2; +x_34 = l_Lean_Meta_Grind_getAttrKindCore___closed__9; x_35 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_35, 0, x_33); lean_ctor_set(x_35, 1, x_34); @@ -1850,7 +562,7 @@ else { lean_object* x_37; lean_object* x_38; lean_dec(x_1); -x_37 = l_Lean_Meta_Grind_getAttrKindCore___closed__22; +x_37 = l_Lean_Meta_Grind_getAttrKindCore___closed__26; x_38 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_38, 0, x_37); lean_ctor_set(x_38, 1, x_4); @@ -1862,7 +574,7 @@ else lean_object* x_39; lean_object* x_40; lean_dec(x_14); lean_dec(x_1); -x_39 = l_Lean_Meta_Grind_getAttrKindCore___closed__23; +x_39 = l_Lean_Meta_Grind_getAttrKindCore___closed__27; x_40 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_40, 0, x_39); lean_ctor_set(x_40, 1, x_4); @@ -1874,7 +586,7 @@ else lean_object* x_41; lean_object* x_42; lean_dec(x_14); lean_dec(x_1); -x_41 = l_Lean_Meta_Grind_getAttrKindCore___closed__24; +x_41 = l_Lean_Meta_Grind_getAttrKindCore___closed__28; x_42 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_42, 0, x_41); lean_ctor_set(x_42, 1, x_4); @@ -1886,7 +598,7 @@ else lean_object* x_43; lean_object* x_44; lean_dec(x_14); lean_dec(x_1); -x_43 = l_Lean_Meta_Grind_getAttrKindCore___closed__25; +x_43 = l_Lean_Meta_Grind_getAttrKindCore___closed__29; x_44 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_44, 0, x_43); lean_ctor_set(x_44, 1, x_4); @@ -1898,7 +610,7 @@ else lean_object* x_45; lean_object* x_46; lean_dec(x_14); lean_dec(x_1); -x_45 = l_Lean_Meta_Grind_getAttrKindCore___closed__26; +x_45 = l_Lean_Meta_Grind_getAttrKindCore___closed__30; x_46 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_46, 0, x_45); lean_ctor_set(x_46, 1, x_4); @@ -1910,7 +622,7 @@ else lean_object* x_47; lean_object* x_48; lean_dec(x_14); lean_dec(x_1); -x_47 = l_Lean_Meta_Grind_getAttrKindCore___closed__27; +x_47 = l_Lean_Meta_Grind_getAttrKindCore___closed__31; x_48 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_48, 0, x_47); lean_ctor_set(x_48, 1, x_4); @@ -1922,7 +634,7 @@ else lean_object* x_49; lean_object* x_50; lean_dec(x_14); lean_dec(x_1); -x_49 = l_Lean_Meta_Grind_getAttrKindCore___closed__28; +x_49 = l_Lean_Meta_Grind_getAttrKindCore___closed__32; x_50 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_50, 0, x_49); lean_ctor_set(x_50, 1, x_4); @@ -1934,7 +646,7 @@ else lean_object* x_51; lean_object* x_52; lean_dec(x_14); lean_dec(x_1); -x_51 = l_Lean_Meta_Grind_getAttrKindCore___closed__29; +x_51 = l_Lean_Meta_Grind_getAttrKindCore___closed__33; x_52 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_52, 0, x_51); lean_ctor_set(x_52, 1, x_4); @@ -2002,11 +714,217 @@ lean_dec(x_1); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1() { +_start: +{ +uint8_t x_1; uint8_t x_2; uint8_t x_3; uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_1 = 0; +x_2 = 1; +x_3 = 1; +x_4 = 0; +x_5 = 2; +x_6 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_6, 0, x_1); +lean_ctor_set_uint8(x_6, 1, x_1); +lean_ctor_set_uint8(x_6, 2, x_1); +lean_ctor_set_uint8(x_6, 3, x_1); +lean_ctor_set_uint8(x_6, 4, x_1); +lean_ctor_set_uint8(x_6, 5, x_2); +lean_ctor_set_uint8(x_6, 6, x_2); +lean_ctor_set_uint8(x_6, 7, x_1); +lean_ctor_set_uint8(x_6, 8, x_2); +lean_ctor_set_uint8(x_6, 9, x_3); +lean_ctor_set_uint8(x_6, 10, x_4); +lean_ctor_set_uint8(x_6, 11, x_2); +lean_ctor_set_uint8(x_6, 12, x_2); +lean_ctor_set_uint8(x_6, 13, x_2); +lean_ctor_set_uint8(x_6, 14, x_5); +lean_ctor_set_uint8(x_6, 15, x_2); +lean_ctor_set_uint8(x_6, 16, x_2); +return x_6; +} +} +static uint64_t _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__2() { +_start: +{ +lean_object* x_1; uint64_t x_2; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1; +x_2 = l___private_Lean_Meta_Basic_0__Lean_Meta_Config_toKey(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_box(0), lean_box(0)); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(32u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7() { +_start: +{ +size_t x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = 5; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6; +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_alloc_ctor(0, 4, sizeof(size_t)*1); +lean_ctor_set(x_5, 0, x_2); +lean_ctor_set(x_5, 1, x_3); +lean_ctor_set(x_5, 2, x_4); +lean_ctor_set(x_5, 3, x_4); +lean_ctor_set_usize(x_5, 4, x_1); +return x_5; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7; +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; uint64_t x_4; uint8_t x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1; +x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__2; +x_5 = 0; +x_6 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8; +x_7 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9; +x_8 = lean_unsigned_to_nat(0u); +x_9 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_9, 0, x_3); +lean_ctor_set(x_9, 1, x_1); +lean_ctor_set(x_9, 2, x_6); +lean_ctor_set(x_9, 3, x_7); +lean_ctor_set(x_9, 4, x_2); +lean_ctor_set(x_9, 5, x_8); +lean_ctor_set(x_9, 6, x_2); +lean_ctor_set_uint64(x_9, sizeof(void*)*7, x_4); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 8, x_5); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 9, x_5); +lean_ctor_set_uint8(x_9, sizeof(void*)*7 + 10, x_5); +return x_9; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4; +x_3 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 2, x_1); +lean_ctor_set(x_3, 3, x_2); +lean_ctor_set(x_3, 4, x_2); +lean_ctor_set(x_3, 5, x_2); +lean_ctor_set(x_3, 6, x_2); +lean_ctor_set(x_3, 7, x_2); +lean_ctor_set(x_3, 8, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4; +x_2 = lean_alloc_ctor(0, 6, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +lean_ctor_set(x_2, 4, x_1); +lean_ctor_set(x_2, 5, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4; +x_2 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_2, 0, x_1); +lean_ctor_set(x_2, 1, x_1); +lean_ctor_set(x_2, 2, x_1); +lean_ctor_set(x_2, 3, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11; +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12; +x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7; +x_5 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13; +x_6 = lean_alloc_ctor(0, 5, 0); +lean_ctor_set(x_6, 0, x_2); +lean_ctor_set(x_6, 1, x_3); +lean_ctor_set(x_6, 2, x_1); +lean_ctor_set(x_6, 3, x_4); +lean_ctor_set(x_6, 4, x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; -x_7 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20; +x_7 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14; x_8 = lean_st_mk_ref(x_7, x_6); x_9 = lean_ctor_get(x_8, 0); lean_inc(x_9); @@ -2028,7 +946,7 @@ lean_inc(x_13); lean_dec(x_11); x_14 = lean_ctor_get_uint8(x_12, 0); lean_dec(x_12); -x_15 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16; +x_15 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10; lean_inc(x_9); x_16 = l_Lean_Meta_Grind_addEMatchAttr(x_1, x_3, x_14, x_15, x_9, x_4, x_5, x_13); if (lean_obj_tag(x_16) == 0) @@ -2175,7 +1093,7 @@ x_47 = lean_ctor_get(x_44, 1); lean_inc(x_47); lean_dec(x_44); x_48 = 6; -x_49 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16; +x_49 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10; lean_inc(x_9); x_50 = l_Lean_Meta_Grind_addEMatchAttr(x_1, x_3, x_48, x_49, x_9, x_4, x_5, x_47); if (lean_obj_tag(x_50) == 0) @@ -2353,11 +1271,11 @@ return x_82; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; lean_object* x_10; -x_5 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20; +x_5 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14; x_6 = lean_st_mk_ref(x_5, x_4); x_7 = lean_ctor_get(x_6, 0); lean_inc(x_7); @@ -2382,7 +1300,7 @@ lean_object* x_13; lean_object* x_14; lean_object* x_15; x_13 = lean_ctor_get(x_10, 1); lean_inc(x_13); lean_dec(x_10); -x_14 = l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16; +x_14 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10; lean_inc(x_7); x_15 = l_Lean_Meta_Grind_eraseEMatchAttr(x_1, x_14, x_7, x_2, x_3, x_13); if (lean_obj_tag(x_15) == 0) @@ -2533,17 +1451,175 @@ return x_43; } } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16; -x_2 = lean_unsigned_to_nat(971u); +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Meta", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Grind", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("initFn", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_@", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Tactic", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14; +x_2 = l_Lean_Meta_Grind_getAttrKindCore___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_hyg", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17; +x_2 = lean_unsigned_to_nat(526u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19() { _start: { lean_object* x_1; @@ -2551,17 +1627,17 @@ x_1 = lean_mk_string_unchecked("grind", 5, 5); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21() { _start: { lean_object* x_1; @@ -2569,13 +1645,13 @@ x_1 = lean_mk_string_unchecked("The `[grind]` attribute is used to annotate decl return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; uint8_t x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20; +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21; x_4 = 1; x_5 = lean_alloc_ctor(0, 3, 1); lean_ctor_set(x_5, 0, x_1); @@ -2585,29 +1661,29 @@ lean_ctor_set_uint8(x_5, sizeof(void*)*3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1___boxed), 6, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___boxed), 6, 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__2), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__2), 4, 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23; +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24; x_4 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_4, 0, x_1); lean_ctor_set(x_4, 1, x_2); @@ -2615,22 +1691,22 @@ lean_ctor_set(x_4, 2, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25; x_3 = l_Lean_registerBuiltinAttribute(x_2, x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { uint8_t x_7; lean_object* x_8; x_7 = lean_unbox(x_3); lean_dec(x_3); -x_8 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____lambda__1(x_1, x_2, x_7, x_4, x_5, x_6); +x_8 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1(x_1, x_2, x_7, x_4, x_5, x_6); lean_dec(x_2); return x_8; } @@ -2648,132 +1724,7 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Cases(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__2); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__3); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__4); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__5); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__6); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__7); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3____closed__8); -if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_3_(lean_io_mk_world()); -if (lean_io_result_is_error(res)) return res; -l_Lean_Meta_Grind_grindCasesExt = lean_io_result_get_value(res); -lean_mark_persistent(l_Lean_Meta_Grind_grindCasesExt); -lean_dec_ref(res); -}l_Lean_Meta_Grind_isGrindCasesTarget___closed__1 = _init_l_Lean_Meta_Grind_isGrindCasesTarget___closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_isGrindCasesTarget___closed__1); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_getAlias_x3f___closed__1); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__1); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__2); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__3); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__4); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__5); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__6); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__7); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__8 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__8(); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__9); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__10); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__11); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__12); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__13); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__14); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__15); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__16); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__17); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__18); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__19); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__20); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__21); -l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22 = _init_l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Attr_0__Lean_Meta_Grind_validateGrindCasesAttr___closed__22); -l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1 = _init_l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1(); -lean_mark_persistent(l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____spec__1___closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____lambda__2___closed__2); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__2); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__3); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__4); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__5); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__6); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__7); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__8); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__9); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__10); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__11); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__12); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__13); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__14); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__15); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__16); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__17); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__18); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__19); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__20); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__21); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__22); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__23); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369____closed__24); -if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_369_(lean_io_mk_world()); -if (lean_io_result_is_error(res)) return res; -lean_dec_ref(res); -}l_Lean_Meta_Grind_getAttrKindCore___closed__1 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__1(); +l_Lean_Meta_Grind_getAttrKindCore___closed__1 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__1); l_Lean_Meta_Grind_getAttrKindCore___closed__2 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__2(); lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__2); @@ -2831,23 +1782,92 @@ l_Lean_Meta_Grind_getAttrKindCore___closed__28 = _init_l_Lean_Meta_Grind_getAttr lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__28); l_Lean_Meta_Grind_getAttrKindCore___closed__29 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__29(); lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__29); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__2); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__3); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__4); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__5); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__6); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__7); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971____closed__8); -if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_971_(lean_io_mk_world()); +l_Lean_Meta_Grind_getAttrKindCore___closed__30 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__30(); +lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__30); +l_Lean_Meta_Grind_getAttrKindCore___closed__31 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__31(); +lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__31); +l_Lean_Meta_Grind_getAttrKindCore___closed__32 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__32(); +lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__32); +l_Lean_Meta_Grind_getAttrKindCore___closed__33 = _init_l_Lean_Meta_Grind_getAttrKindCore___closed__33(); +lean_mark_persistent(l_Lean_Meta_Grind_getAttrKindCore___closed__33); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__1); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__2(); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__3); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__4); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__5); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__6); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__7); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__8); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__9); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__10); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__11); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__12); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__13); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____lambda__1___closed__14); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__1); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__2); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__3); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__4); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__5); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__6); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__7); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__8); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__9); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__10); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__11); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__12); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__13); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__14); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__15); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__16); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__17); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__18); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__19); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__20); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__21); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__22); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__23); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__24); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526____closed__25); +if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Attr___hyg_526_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Beta.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Beta.c index 322bbfad57..b60b661342 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Beta.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Beta.c @@ -763,7 +763,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Grind_getEqcLambdas___lambda__1___closed__1; x_2 = l_Lean_Meta_Grind_getEqcLambdas___lambda__1___closed__2; -x_3 = lean_unsigned_to_nat(816u); +x_3 = lean_unsigned_to_nat(814u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_Meta_Grind_getEqcLambdas___lambda__1___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Canon.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Canon.c index a26a9850ba..be94a8cd5a 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Canon.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Canon.c @@ -53,7 +53,7 @@ uint8_t l_Lean_Expr_isApp(lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__10___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_sort___override(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_Canon_canonElemCore___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); @@ -81,11 +81,11 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_M lean_object* l___private_Lean_CoreM_0__Lean_Core_withCurrHeartbeatsImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_Canon_canonElemCore___spec__13(lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__11___closed__2; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__10___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__7___closed__2; lean_object* l_Lean_stringToMessageData(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_instReprShouldCanonResult(uint8_t, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_ShouldCanonResult_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__3___closed__2; @@ -111,7 +111,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Lean_Meta size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__10___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__7; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__2; uint8_t lean_expr_eqv(lean_object*, lean_object*); @@ -128,7 +128,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_G LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_Canon_canonElemCore___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_ReaderT_instMonadLift(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__7; static lean_object* l_Lean_Meta_Grind_Canon_instReprShouldCanonResult___closed__1; @@ -150,7 +150,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_Canon_canonElemCore___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_Canon_instInhabitedShouldCanonResult; extern lean_object* l_Lean_instInhabitedExpr; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t l_Lean_Expr_hash(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_Canon_canonElemCore___spec__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__3___closed__1; @@ -275,7 +275,6 @@ static lean_object* l_Lean_Meta_Grind_Canon_instReprShouldCanonResult___closed__ static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_modify_x27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isForall(lean_object*); -lean_object* l_Lean_Meta_Grind_getConfig___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_ShouldCanonResult_toCtorIdx___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonImpl_visit___spec__10___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); @@ -728,9 +727,10 @@ x_15 = l_Lean_Exception_isRuntime(x_1); if (x_15 == 0) { lean_object* x_16; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); x_16 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_16, 0, x_1); lean_ctor_set(x_16, 1, x_14); @@ -738,164 +738,76 @@ return x_16; } else { -lean_object* x_17; uint8_t x_18; +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; lean_dec(x_1); -x_17 = l_Lean_Meta_Grind_getConfig___rarg(x_2, x_3, x_4, x_5, x_12, x_13, x_14); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; -x_19 = lean_ctor_get(x_17, 0); -x_20 = lean_ctor_get(x_17, 1); -x_21 = lean_ctor_get(x_19, 5); -lean_inc(x_21); -lean_dec(x_19); -x_22 = l_Lean_indentExpr(x_6); -x_23 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__2; -lean_ctor_set_tag(x_17, 7); -lean_ctor_set(x_17, 1, x_22); -lean_ctor_set(x_17, 0, x_23); -x_24 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__4; +x_17 = l_Lean_indentExpr(x_2); +x_18 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__2; +x_19 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +x_20 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__4; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +x_22 = l_Lean_indentExpr(x_3); +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__6; x_25 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_25, 0, x_17); +lean_ctor_set(x_25, 0, x_23); lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_indentExpr(x_7); +x_26 = l_Lean_indentExpr(x_4); x_27 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_27, 0, x_25); lean_ctor_set(x_27, 1, x_26); -x_28 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__6; +x_28 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__8; x_29 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_29, 0, x_27); lean_ctor_set(x_29, 1, x_28); -x_30 = l_Lean_indentExpr(x_8); -x_31 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -x_32 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__8; +x_30 = l___private_Init_Data_Repr_0__Nat_reprFast(x_5); +x_31 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_31, 0, x_30); +x_32 = l_Lean_MessageData_ofFormat(x_31); +lean_inc(x_32); x_33 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 0, x_29); lean_ctor_set(x_33, 1, x_32); -x_34 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); -x_35 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_35, 0, x_34); -x_36 = l_Lean_MessageData_ofFormat(x_35); -lean_inc(x_36); -x_37 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_37, 0, x_33); -lean_ctor_set(x_37, 1, x_36); -x_38 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__10; -x_39 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -x_40 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_36); -x_41 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__12; -x_42 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -x_43 = l_Lean_Meta_Grind_reportIssue(x_42, x_9, x_10, x_2, x_3, x_4, x_5, x_12, x_13, x_20); -x_44 = !lean_is_exclusive(x_43); -if (x_44 == 0) +x_34 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__10; +x_35 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_32); +x_37 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__12; +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +x_39 = l_Lean_Meta_Grind_reportIssue(x_38, x_6, x_7, x_8, x_9, x_10, x_12, x_13, x_14); +x_40 = !lean_is_exclusive(x_39); +if (x_40 == 0) { -lean_object* x_45; uint8_t x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_43, 0); -lean_dec(x_45); -x_46 = 0; -x_47 = lean_box(x_46); -lean_ctor_set(x_43, 0, x_47); -return x_43; +lean_object* x_41; uint8_t x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_39, 0); +lean_dec(x_41); +x_42 = 0; +x_43 = lean_box(x_42); +lean_ctor_set(x_39, 0, x_43); +return x_39; } else { -lean_object* x_48; uint8_t x_49; lean_object* x_50; lean_object* x_51; -x_48 = lean_ctor_get(x_43, 1); -lean_inc(x_48); -lean_dec(x_43); -x_49 = 0; -x_50 = lean_box(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_48); -return x_51; -} -} -else -{ -lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; uint8_t x_80; lean_object* x_81; lean_object* x_82; -x_52 = lean_ctor_get(x_17, 0); -x_53 = lean_ctor_get(x_17, 1); -lean_inc(x_53); -lean_inc(x_52); -lean_dec(x_17); -x_54 = lean_ctor_get(x_52, 5); -lean_inc(x_54); -lean_dec(x_52); -x_55 = l_Lean_indentExpr(x_6); -x_56 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__2; -x_57 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_55); -x_58 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__4; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -x_60 = l_Lean_indentExpr(x_7); -x_61 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -x_62 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__6; -x_63 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -x_64 = l_Lean_indentExpr(x_8); -x_65 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -x_66 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__8; -x_67 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); -x_68 = l___private_Init_Data_Repr_0__Nat_reprFast(x_54); -x_69 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_69, 0, x_68); -x_70 = l_Lean_MessageData_ofFormat(x_69); -lean_inc(x_70); -x_71 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_71, 0, x_67); -lean_ctor_set(x_71, 1, x_70); -x_72 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__10; -x_73 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -x_74 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_74, 0, x_73); -lean_ctor_set(x_74, 1, x_70); -x_75 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1___closed__12; -x_76 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_76, 0, x_74); -lean_ctor_set(x_76, 1, x_75); -x_77 = l_Lean_Meta_Grind_reportIssue(x_76, x_9, x_10, x_2, x_3, x_4, x_5, x_12, x_13, x_53); -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -if (lean_is_exclusive(x_77)) { - lean_ctor_release(x_77, 0); - lean_ctor_release(x_77, 1); - x_79 = x_77; -} else { - lean_dec_ref(x_77); - x_79 = lean_box(0); -} -x_80 = 0; -x_81 = lean_box(x_80); -if (lean_is_scalar(x_79)) { - x_82 = lean_alloc_ctor(0, 2, 0); -} else { - x_82 = x_79; -} -lean_ctor_set(x_82, 0, x_81); -lean_ctor_set(x_82, 1, x_78); -return x_82; +lean_object* x_44; uint8_t x_45; lean_object* x_46; lean_object* x_47; +x_44 = lean_ctor_get(x_39, 1); +lean_inc(x_44); +lean_dec(x_39); +x_45 = 0; +x_46 = lean_box(x_45); +x_47 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set(x_47, 1, x_44); +return x_47; } } } @@ -912,24 +824,28 @@ return x_2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; uint8_t x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint64_t x_30; uint8_t x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_14 = lean_ctor_get(x_11, 0); -x_15 = lean_ctor_get(x_11, 1); -x_16 = lean_ctor_get(x_11, 2); -x_17 = lean_ctor_get(x_11, 3); -x_18 = lean_ctor_get(x_11, 4); -x_19 = lean_ctor_get(x_11, 5); -x_20 = lean_ctor_get(x_11, 6); -x_21 = lean_ctor_get(x_11, 7); -x_22 = lean_ctor_get(x_11, 8); -x_23 = lean_ctor_get(x_11, 10); -x_24 = lean_ctor_get_uint8(x_11, sizeof(void*)*12); -x_25 = lean_ctor_get(x_11, 11); -x_26 = lean_ctor_get_uint8(x_11, sizeof(void*)*12 + 1); -x_27 = lean_ctor_get(x_4, 5); -lean_inc(x_25); +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint64_t x_32; uint8_t x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_14 = lean_ctor_get(x_4, 5); +lean_inc(x_14); +lean_dec(x_4); +x_15 = lean_ctor_get(x_11, 0); +x_16 = lean_ctor_get(x_11, 1); +x_17 = lean_ctor_get(x_11, 2); +x_18 = lean_ctor_get(x_11, 3); +x_19 = lean_ctor_get(x_11, 4); +x_20 = lean_ctor_get(x_11, 5); +x_21 = lean_ctor_get(x_11, 6); +x_22 = lean_ctor_get(x_11, 7); +x_23 = lean_ctor_get(x_11, 8); +x_24 = lean_ctor_get(x_11, 10); +x_25 = lean_ctor_get_uint8(x_11, sizeof(void*)*12); +x_26 = lean_ctor_get(x_11, 11); +x_27 = lean_ctor_get_uint8(x_11, sizeof(void*)*12 + 1); +x_28 = lean_unsigned_to_nat(1000u); +x_29 = lean_nat_mul(x_14, x_28); +lean_inc(x_26); +lean_inc(x_24); lean_inc(x_23); -lean_inc(x_27); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); @@ -938,301 +854,305 @@ lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); lean_inc(x_15); -lean_inc(x_14); -x_28 = lean_alloc_ctor(0, 12, 2); -lean_ctor_set(x_28, 0, x_14); -lean_ctor_set(x_28, 1, x_15); -lean_ctor_set(x_28, 2, x_16); -lean_ctor_set(x_28, 3, x_17); -lean_ctor_set(x_28, 4, x_18); -lean_ctor_set(x_28, 5, x_19); -lean_ctor_set(x_28, 6, x_20); -lean_ctor_set(x_28, 7, x_21); -lean_ctor_set(x_28, 8, x_22); -lean_ctor_set(x_28, 9, x_27); -lean_ctor_set(x_28, 10, x_23); -lean_ctor_set(x_28, 11, x_25); -lean_ctor_set_uint8(x_28, sizeof(void*)*12, x_24); -lean_ctor_set_uint8(x_28, sizeof(void*)*12 + 1, x_26); -x_29 = lean_ctor_get(x_9, 0); -lean_inc(x_29); -x_30 = lean_ctor_get_uint64(x_9, sizeof(void*)*7); -x_31 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 8); -x_32 = lean_ctor_get(x_9, 1); -lean_inc(x_32); -x_33 = lean_ctor_get(x_9, 2); -lean_inc(x_33); -x_34 = lean_ctor_get(x_9, 3); +x_30 = lean_alloc_ctor(0, 12, 2); +lean_ctor_set(x_30, 0, x_15); +lean_ctor_set(x_30, 1, x_16); +lean_ctor_set(x_30, 2, x_17); +lean_ctor_set(x_30, 3, x_18); +lean_ctor_set(x_30, 4, x_19); +lean_ctor_set(x_30, 5, x_20); +lean_ctor_set(x_30, 6, x_21); +lean_ctor_set(x_30, 7, x_22); +lean_ctor_set(x_30, 8, x_23); +lean_ctor_set(x_30, 9, x_29); +lean_ctor_set(x_30, 10, x_24); +lean_ctor_set(x_30, 11, x_26); +lean_ctor_set_uint8(x_30, sizeof(void*)*12, x_25); +lean_ctor_set_uint8(x_30, sizeof(void*)*12 + 1, x_27); +x_31 = lean_ctor_get(x_9, 0); +lean_inc(x_31); +x_32 = lean_ctor_get_uint64(x_9, sizeof(void*)*7); +x_33 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 8); +x_34 = lean_ctor_get(x_9, 1); lean_inc(x_34); -x_35 = lean_ctor_get(x_9, 4); +x_35 = lean_ctor_get(x_9, 2); lean_inc(x_35); -x_36 = lean_ctor_get(x_9, 5); +x_36 = lean_ctor_get(x_9, 3); lean_inc(x_36); -x_37 = lean_ctor_get(x_9, 6); +x_37 = lean_ctor_get(x_9, 4); lean_inc(x_37); -x_38 = !lean_is_exclusive(x_29); -if (x_38 == 0) +x_38 = lean_ctor_get(x_9, 5); +lean_inc(x_38); +x_39 = lean_ctor_get(x_9, 6); +lean_inc(x_39); +x_40 = !lean_is_exclusive(x_31); +if (x_40 == 0) { -uint8_t x_39; uint8_t x_40; uint8_t x_41; uint64_t x_42; uint64_t x_43; uint64_t x_44; uint64_t x_45; uint64_t x_46; lean_object* x_47; lean_object* x_48; -x_39 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); -x_40 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); -x_41 = 1; -lean_ctor_set_uint8(x_29, 9, x_41); -x_42 = 2; -x_43 = lean_uint64_shift_right(x_30, x_42); -x_44 = lean_uint64_shift_left(x_43, x_42); -x_45 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; -x_46 = lean_uint64_lor(x_44, x_45); -x_47 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_47, 0, x_29); -lean_ctor_set(x_47, 1, x_32); -lean_ctor_set(x_47, 2, x_33); -lean_ctor_set(x_47, 3, x_34); -lean_ctor_set(x_47, 4, x_35); -lean_ctor_set(x_47, 5, x_36); -lean_ctor_set(x_47, 6, x_37); -lean_ctor_set_uint64(x_47, sizeof(void*)*7, x_46); -lean_ctor_set_uint8(x_47, sizeof(void*)*7 + 8, x_31); -lean_ctor_set_uint8(x_47, sizeof(void*)*7 + 9, x_39); -lean_ctor_set_uint8(x_47, sizeof(void*)*7 + 10, x_40); +uint8_t x_41; uint8_t x_42; uint8_t x_43; uint64_t x_44; uint64_t x_45; uint64_t x_46; uint64_t x_47; uint64_t x_48; lean_object* x_49; lean_object* x_50; +x_41 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_42 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_43 = 1; +lean_ctor_set_uint8(x_31, 9, x_43); +x_44 = 2; +x_45 = lean_uint64_shift_right(x_32, x_44); +x_46 = lean_uint64_shift_left(x_45, x_44); +x_47 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; +x_48 = lean_uint64_lor(x_46, x_47); +x_49 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_49, 0, x_31); +lean_ctor_set(x_49, 1, x_34); +lean_ctor_set(x_49, 2, x_35); +lean_ctor_set(x_49, 3, x_36); +lean_ctor_set(x_49, 4, x_37); +lean_ctor_set(x_49, 5, x_38); +lean_ctor_set(x_49, 6, x_39); +lean_ctor_set_uint64(x_49, sizeof(void*)*7, x_48); +lean_ctor_set_uint8(x_49, sizeof(void*)*7 + 8, x_33); +lean_ctor_set_uint8(x_49, sizeof(void*)*7 + 9, x_41); +lean_ctor_set_uint8(x_49, sizeof(void*)*7 + 10, x_42); lean_inc(x_12); lean_inc(x_10); lean_inc(x_2); lean_inc(x_1); -x_48 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_47, x_10, x_28, x_12, x_13); -if (lean_obj_tag(x_48) == 0) +x_50 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_49, x_10, x_30, x_12, x_13); +if (lean_obj_tag(x_50) == 0) { -uint8_t x_49; +uint8_t x_51; +lean_dec(x_14); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_49 = !lean_is_exclusive(x_48); -if (x_49 == 0) +x_51 = !lean_is_exclusive(x_50); +if (x_51 == 0) { -return x_48; +return x_50; } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_48, 0); -x_51 = lean_ctor_get(x_48, 1); -lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_48); -x_52 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_52, 0, x_50); -lean_ctor_set(x_52, 1, x_51); -return x_52; +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_50, 0); +x_53 = lean_ctor_get(x_50, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_50); +x_54 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; } } else { -uint8_t x_53; -x_53 = !lean_is_exclusive(x_48); -if (x_53 == 0) +uint8_t x_55; +x_55 = !lean_is_exclusive(x_50); +if (x_55 == 0) { -lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_54 = lean_ctor_get(x_48, 0); -x_55 = lean_ctor_get(x_48, 1); -x_56 = l_Lean_Exception_isInterrupt(x_54); -if (x_56 == 0) +lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_56 = lean_ctor_get(x_50, 0); +x_57 = lean_ctor_get(x_50, 1); +x_58 = l_Lean_Exception_isInterrupt(x_56); +if (x_58 == 0) { -lean_object* x_57; lean_object* x_58; -lean_free_object(x_48); -x_57 = lean_box(0); -x_58 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_54, x_7, x_8, x_9, x_10, x_1, x_2, x_3, x_5, x_6, x_57, x_11, x_12, x_55); +lean_object* x_59; lean_object* x_60; +lean_free_object(x_50); +x_59 = lean_box(0); +x_60 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_56, x_1, x_2, x_3, x_14, x_6, x_7, x_8, x_9, x_10, x_59, x_11, x_12, x_57); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); -return x_58; +return x_60; } else { +lean_dec(x_14); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -return x_48; +return x_50; } } else { -lean_object* x_59; lean_object* x_60; uint8_t x_61; -x_59 = lean_ctor_get(x_48, 0); -x_60 = lean_ctor_get(x_48, 1); -lean_inc(x_60); -lean_inc(x_59); -lean_dec(x_48); -x_61 = l_Lean_Exception_isInterrupt(x_59); -if (x_61 == 0) +lean_object* x_61; lean_object* x_62; uint8_t x_63; +x_61 = lean_ctor_get(x_50, 0); +x_62 = lean_ctor_get(x_50, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_50); +x_63 = l_Lean_Exception_isInterrupt(x_61); +if (x_63 == 0) { -lean_object* x_62; lean_object* x_63; -x_62 = lean_box(0); -x_63 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_59, x_7, x_8, x_9, x_10, x_1, x_2, x_3, x_5, x_6, x_62, x_11, x_12, x_60); +lean_object* x_64; lean_object* x_65; +x_64 = lean_box(0); +x_65 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_61, x_1, x_2, x_3, x_14, x_6, x_7, x_8, x_9, x_10, x_64, x_11, x_12, x_62); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); -return x_63; +return x_65; } else { -lean_object* x_64; +lean_object* x_66; +lean_dec(x_14); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_64 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_64, 0, x_59); -lean_ctor_set(x_64, 1, x_60); -return x_64; +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_61); +lean_ctor_set(x_66, 1, x_62); +return x_66; } } } } else { -uint8_t x_65; uint8_t x_66; uint8_t x_67; uint8_t x_68; uint8_t x_69; uint8_t x_70; uint8_t x_71; uint8_t x_72; uint8_t x_73; uint8_t x_74; uint8_t x_75; uint8_t x_76; uint8_t x_77; uint8_t x_78; uint8_t x_79; uint8_t x_80; uint8_t x_81; uint8_t x_82; uint8_t x_83; lean_object* x_84; uint64_t x_85; uint64_t x_86; uint64_t x_87; uint64_t x_88; uint64_t x_89; lean_object* x_90; lean_object* x_91; -x_65 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); -x_66 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); -x_67 = lean_ctor_get_uint8(x_29, 0); -x_68 = lean_ctor_get_uint8(x_29, 1); -x_69 = lean_ctor_get_uint8(x_29, 2); -x_70 = lean_ctor_get_uint8(x_29, 3); -x_71 = lean_ctor_get_uint8(x_29, 4); -x_72 = lean_ctor_get_uint8(x_29, 5); -x_73 = lean_ctor_get_uint8(x_29, 6); -x_74 = lean_ctor_get_uint8(x_29, 7); -x_75 = lean_ctor_get_uint8(x_29, 8); -x_76 = lean_ctor_get_uint8(x_29, 10); -x_77 = lean_ctor_get_uint8(x_29, 11); -x_78 = lean_ctor_get_uint8(x_29, 12); -x_79 = lean_ctor_get_uint8(x_29, 13); -x_80 = lean_ctor_get_uint8(x_29, 14); -x_81 = lean_ctor_get_uint8(x_29, 15); -x_82 = lean_ctor_get_uint8(x_29, 16); -lean_dec(x_29); -x_83 = 1; -x_84 = lean_alloc_ctor(0, 0, 17); -lean_ctor_set_uint8(x_84, 0, x_67); -lean_ctor_set_uint8(x_84, 1, x_68); -lean_ctor_set_uint8(x_84, 2, x_69); -lean_ctor_set_uint8(x_84, 3, x_70); -lean_ctor_set_uint8(x_84, 4, x_71); -lean_ctor_set_uint8(x_84, 5, x_72); -lean_ctor_set_uint8(x_84, 6, x_73); -lean_ctor_set_uint8(x_84, 7, x_74); -lean_ctor_set_uint8(x_84, 8, x_75); -lean_ctor_set_uint8(x_84, 9, x_83); -lean_ctor_set_uint8(x_84, 10, x_76); -lean_ctor_set_uint8(x_84, 11, x_77); -lean_ctor_set_uint8(x_84, 12, x_78); -lean_ctor_set_uint8(x_84, 13, x_79); -lean_ctor_set_uint8(x_84, 14, x_80); -lean_ctor_set_uint8(x_84, 15, x_81); -lean_ctor_set_uint8(x_84, 16, x_82); -x_85 = 2; -x_86 = lean_uint64_shift_right(x_30, x_85); -x_87 = lean_uint64_shift_left(x_86, x_85); -x_88 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; -x_89 = lean_uint64_lor(x_87, x_88); -x_90 = lean_alloc_ctor(0, 7, 11); -lean_ctor_set(x_90, 0, x_84); -lean_ctor_set(x_90, 1, x_32); -lean_ctor_set(x_90, 2, x_33); -lean_ctor_set(x_90, 3, x_34); -lean_ctor_set(x_90, 4, x_35); -lean_ctor_set(x_90, 5, x_36); -lean_ctor_set(x_90, 6, x_37); -lean_ctor_set_uint64(x_90, sizeof(void*)*7, x_89); -lean_ctor_set_uint8(x_90, sizeof(void*)*7 + 8, x_31); -lean_ctor_set_uint8(x_90, sizeof(void*)*7 + 9, x_65); -lean_ctor_set_uint8(x_90, sizeof(void*)*7 + 10, x_66); +uint8_t x_67; uint8_t x_68; uint8_t x_69; uint8_t x_70; uint8_t x_71; uint8_t x_72; uint8_t x_73; uint8_t x_74; uint8_t x_75; uint8_t x_76; uint8_t x_77; uint8_t x_78; uint8_t x_79; uint8_t x_80; uint8_t x_81; uint8_t x_82; uint8_t x_83; uint8_t x_84; uint8_t x_85; lean_object* x_86; uint64_t x_87; uint64_t x_88; uint64_t x_89; uint64_t x_90; uint64_t x_91; lean_object* x_92; lean_object* x_93; +x_67 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 9); +x_68 = lean_ctor_get_uint8(x_9, sizeof(void*)*7 + 10); +x_69 = lean_ctor_get_uint8(x_31, 0); +x_70 = lean_ctor_get_uint8(x_31, 1); +x_71 = lean_ctor_get_uint8(x_31, 2); +x_72 = lean_ctor_get_uint8(x_31, 3); +x_73 = lean_ctor_get_uint8(x_31, 4); +x_74 = lean_ctor_get_uint8(x_31, 5); +x_75 = lean_ctor_get_uint8(x_31, 6); +x_76 = lean_ctor_get_uint8(x_31, 7); +x_77 = lean_ctor_get_uint8(x_31, 8); +x_78 = lean_ctor_get_uint8(x_31, 10); +x_79 = lean_ctor_get_uint8(x_31, 11); +x_80 = lean_ctor_get_uint8(x_31, 12); +x_81 = lean_ctor_get_uint8(x_31, 13); +x_82 = lean_ctor_get_uint8(x_31, 14); +x_83 = lean_ctor_get_uint8(x_31, 15); +x_84 = lean_ctor_get_uint8(x_31, 16); +lean_dec(x_31); +x_85 = 1; +x_86 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_86, 0, x_69); +lean_ctor_set_uint8(x_86, 1, x_70); +lean_ctor_set_uint8(x_86, 2, x_71); +lean_ctor_set_uint8(x_86, 3, x_72); +lean_ctor_set_uint8(x_86, 4, x_73); +lean_ctor_set_uint8(x_86, 5, x_74); +lean_ctor_set_uint8(x_86, 6, x_75); +lean_ctor_set_uint8(x_86, 7, x_76); +lean_ctor_set_uint8(x_86, 8, x_77); +lean_ctor_set_uint8(x_86, 9, x_85); +lean_ctor_set_uint8(x_86, 10, x_78); +lean_ctor_set_uint8(x_86, 11, x_79); +lean_ctor_set_uint8(x_86, 12, x_80); +lean_ctor_set_uint8(x_86, 13, x_81); +lean_ctor_set_uint8(x_86, 14, x_82); +lean_ctor_set_uint8(x_86, 15, x_83); +lean_ctor_set_uint8(x_86, 16, x_84); +x_87 = 2; +x_88 = lean_uint64_shift_right(x_32, x_87); +x_89 = lean_uint64_shift_left(x_88, x_87); +x_90 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; +x_91 = lean_uint64_lor(x_89, x_90); +x_92 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_92, 0, x_86); +lean_ctor_set(x_92, 1, x_34); +lean_ctor_set(x_92, 2, x_35); +lean_ctor_set(x_92, 3, x_36); +lean_ctor_set(x_92, 4, x_37); +lean_ctor_set(x_92, 5, x_38); +lean_ctor_set(x_92, 6, x_39); +lean_ctor_set_uint64(x_92, sizeof(void*)*7, x_91); +lean_ctor_set_uint8(x_92, sizeof(void*)*7 + 8, x_33); +lean_ctor_set_uint8(x_92, sizeof(void*)*7 + 9, x_67); +lean_ctor_set_uint8(x_92, sizeof(void*)*7 + 10, x_68); lean_inc(x_12); lean_inc(x_10); lean_inc(x_2); lean_inc(x_1); -x_91 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_90, x_10, x_28, x_12, x_13); -if (lean_obj_tag(x_91) == 0) +x_93 = l_Lean_Meta_isExprDefEq(x_1, x_2, x_92, x_10, x_30, x_12, x_13); +if (lean_obj_tag(x_93) == 0) { -lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +lean_dec(x_14); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_92 = lean_ctor_get(x_91, 0); -lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 1); -lean_inc(x_93); -if (lean_is_exclusive(x_91)) { - lean_ctor_release(x_91, 0); - lean_ctor_release(x_91, 1); - x_94 = x_91; +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); +if (lean_is_exclusive(x_93)) { + lean_ctor_release(x_93, 0); + lean_ctor_release(x_93, 1); + x_96 = x_93; } else { - lean_dec_ref(x_91); - x_94 = lean_box(0); + lean_dec_ref(x_93); + x_96 = lean_box(0); } -if (lean_is_scalar(x_94)) { - x_95 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_96)) { + x_97 = lean_alloc_ctor(0, 2, 0); } else { - x_95 = x_94; + x_97 = x_96; } -lean_ctor_set(x_95, 0, x_92); -lean_ctor_set(x_95, 1, x_93); -return x_95; +lean_ctor_set(x_97, 0, x_94); +lean_ctor_set(x_97, 1, x_95); +return x_97; } else { -lean_object* x_96; lean_object* x_97; lean_object* x_98; uint8_t x_99; -x_96 = lean_ctor_get(x_91, 0); -lean_inc(x_96); -x_97 = lean_ctor_get(x_91, 1); -lean_inc(x_97); -if (lean_is_exclusive(x_91)) { - lean_ctor_release(x_91, 0); - lean_ctor_release(x_91, 1); - x_98 = x_91; +lean_object* x_98; lean_object* x_99; lean_object* x_100; uint8_t x_101; +x_98 = lean_ctor_get(x_93, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_93, 1); +lean_inc(x_99); +if (lean_is_exclusive(x_93)) { + lean_ctor_release(x_93, 0); + lean_ctor_release(x_93, 1); + x_100 = x_93; } else { - lean_dec_ref(x_91); - x_98 = lean_box(0); + lean_dec_ref(x_93); + x_100 = lean_box(0); } -x_99 = l_Lean_Exception_isInterrupt(x_96); -if (x_99 == 0) +x_101 = l_Lean_Exception_isInterrupt(x_98); +if (x_101 == 0) { -lean_object* x_100; lean_object* x_101; -lean_dec(x_98); -x_100 = lean_box(0); -x_101 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_96, x_7, x_8, x_9, x_10, x_1, x_2, x_3, x_5, x_6, x_100, x_11, x_12, x_97); +lean_object* x_102; lean_object* x_103; +lean_dec(x_100); +x_102 = lean_box(0); +x_103 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__1(x_98, x_1, x_2, x_3, x_14, x_6, x_7, x_8, x_9, x_10, x_102, x_11, x_12, x_99); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); -return x_101; +return x_103; } else { -lean_object* x_102; +lean_object* x_104; +lean_dec(x_14); lean_dec(x_12); lean_dec(x_10); lean_dec(x_9); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -if (lean_is_scalar(x_98)) { - x_102 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_100)) { + x_104 = lean_alloc_ctor(1, 2, 0); } else { - x_102 = x_98; + x_104 = x_100; } -lean_ctor_set(x_102, 0, x_96); -lean_ctor_set(x_102, 1, x_97); -return x_102; +lean_ctor_set(x_104, 0, x_98); +lean_ctor_set(x_104, 1, x_99); +return x_104; } } } @@ -1282,10 +1202,9 @@ lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); return x_15; } } @@ -1299,7 +1218,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); return x_14; } } @@ -3149,12 +3067,13 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19) { +LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20) { _start: { -if (lean_obj_tag(x_8) == 0) +if (lean_obj_tag(x_9) == 0) { -lean_object* x_20; +lean_object* x_21; +lean_dec(x_19); lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); @@ -3162,52 +3081,134 @@ lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_5); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_9); -lean_ctor_set(x_20, 1, x_19); -return x_20; +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_10); +lean_ctor_set(x_21, 1, x_20); +return x_21; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_31; -lean_dec(x_9); -x_21 = lean_ctor_get(x_8, 0); -lean_inc(x_21); -x_22 = lean_ctor_get(x_8, 1); +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_32; uint8_t x_33; +lean_dec(x_10); +x_22 = lean_ctor_get(x_9, 0); lean_inc(x_22); -if (lean_is_exclusive(x_8)) { - lean_ctor_release(x_8, 0); - lean_ctor_release(x_8, 1); - x_23 = x_8; +x_23 = lean_ctor_get(x_9, 1); +lean_inc(x_23); +if (lean_is_exclusive(x_9)) { + lean_ctor_release(x_9, 0); + lean_ctor_release(x_9, 1); + x_24 = x_9; } else { - lean_dec_ref(x_8); - x_23 = lean_box(0); + lean_dec_ref(x_9); + x_24 = lean_box(0); } +x_32 = lean_ctor_get(x_16, 0); +lean_inc(x_32); +x_33 = !lean_is_exclusive(x_22); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; uint64_t x_36; uint8_t x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_34 = lean_ctor_get(x_22, 0); +x_35 = lean_ctor_get(x_22, 1); +x_36 = lean_ctor_get_uint64(x_16, sizeof(void*)*7); +x_37 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 8); +x_38 = lean_ctor_get(x_16, 1); +lean_inc(x_38); +x_39 = lean_ctor_get(x_16, 2); +lean_inc(x_39); +x_40 = lean_ctor_get(x_16, 3); +lean_inc(x_40); +x_41 = lean_ctor_get(x_16, 4); +lean_inc(x_41); +x_42 = lean_ctor_get(x_16, 5); +lean_inc(x_42); +x_43 = lean_ctor_get(x_16, 6); +lean_inc(x_43); +x_44 = !lean_is_exclusive(x_32); +if (x_44 == 0) +{ +uint8_t x_45; uint8_t x_46; uint8_t x_47; uint64_t x_48; uint64_t x_49; uint64_t x_50; uint64_t x_51; uint64_t x_52; lean_object* x_53; lean_object* x_54; +x_45 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 9); +x_46 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 10); +x_47 = 1; +lean_ctor_set_uint8(x_32, 9, x_47); +x_48 = 2; +x_49 = lean_uint64_shift_right(x_36, x_48); +x_50 = lean_uint64_shift_left(x_49, x_48); +x_51 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; +x_52 = lean_uint64_lor(x_50, x_51); +x_53 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_53, 0, x_32); +lean_ctor_set(x_53, 1, x_38); +lean_ctor_set(x_53, 2, x_39); +lean_ctor_set(x_53, 3, x_40); +lean_ctor_set(x_53, 4, x_41); +lean_ctor_set(x_53, 5, x_42); +lean_ctor_set(x_53, 6, x_43); +lean_ctor_set_uint64(x_53, sizeof(void*)*7, x_52); +lean_ctor_set_uint8(x_53, sizeof(void*)*7 + 8, x_37); +lean_ctor_set_uint8(x_53, sizeof(void*)*7 + 9, x_45); +lean_ctor_set_uint8(x_53, sizeof(void*)*7 + 10, x_46); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_4); +x_54 = l_Lean_Meta_isExprDefEq(x_4, x_35, x_53, x_17, x_18, x_19, x_20); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; uint8_t x_56; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +x_56 = lean_unbox(x_55); +lean_dec(x_55); +if (x_56 == 0) +{ +lean_object* x_57; lean_object* x_58; +lean_free_object(x_22); +lean_dec(x_34); +x_57 = lean_ctor_get(x_54, 1); +lean_inc(x_57); +lean_dec(x_54); +lean_inc(x_6); +x_58 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_58, 0, x_6); +x_25 = x_58; +x_26 = x_57; +goto block_31; +} +else +{ +lean_object* x_59; lean_object* x_60; +x_59 = lean_ctor_get(x_54, 1); +lean_inc(x_59); +lean_dec(x_54); +lean_inc(x_19); lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); -lean_inc(x_15); -lean_inc(x_21); -lean_inc(x_2); -x_31 = l_Lean_Meta_isExprDefEq(x_2, x_21, x_15, x_16, x_17, x_18, x_19); -if (lean_obj_tag(x_31) == 0) -{ -lean_object* x_32; uint8_t x_33; -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_unbox(x_32); -lean_dec(x_32); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_31, 1); lean_inc(x_34); -lean_dec(x_31); -x_35 = lean_box(0); +lean_inc(x_2); +x_60 = l_Lean_Meta_isExprDefEq(x_2, x_34, x_16, x_17, x_18, x_19, x_59); +if (lean_obj_tag(x_60) == 0) +{ +lean_object* x_61; uint8_t x_62; +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_unbox(x_61); +lean_dec(x_61); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; +lean_free_object(x_22); +x_63 = lean_ctor_get(x_60, 1); +lean_inc(x_63); +lean_dec(x_60); +x_64 = lean_box(0); +lean_inc(x_19); lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); @@ -3215,865 +3216,872 @@ lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); -lean_inc(x_11); lean_inc(x_1); lean_inc(x_2); -lean_inc(x_5); -x_36 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2(x_3, x_5, x_2, x_21, x_1, x_35, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_34); -if (lean_obj_tag(x_36) == 0) +lean_inc(x_6); +x_65 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2(x_3, x_6, x_2, x_34, x_1, x_64, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_63); +if (lean_obj_tag(x_65) == 0) { -lean_object* x_37; lean_object* x_38; -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); -lean_dec(x_36); -x_24 = x_37; -x_25 = x_38; -goto block_30; -} -else -{ -uint8_t x_39; -lean_dec(x_23); -lean_dec(x_22); -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_39 = !lean_is_exclusive(x_36); -if (x_39 == 0) -{ -return x_36; -} -else -{ -lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_40 = lean_ctor_get(x_36, 0); -x_41 = lean_ctor_get(x_36, 1); -lean_inc(x_41); -lean_inc(x_40); -lean_dec(x_36); -x_42 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -return x_42; -} -} -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; -x_43 = lean_ctor_get(x_31, 1); -lean_inc(x_43); -lean_dec(x_31); -x_44 = lean_st_ref_take(x_11, x_43); -x_45 = lean_ctor_get(x_44, 0); -lean_inc(x_45); -x_46 = lean_ctor_get(x_45, 1); -lean_inc(x_46); -x_47 = !lean_is_exclusive(x_44); -if (x_47 == 0) -{ -lean_object* x_48; lean_object* x_49; uint8_t x_50; -x_48 = lean_ctor_get(x_44, 1); -x_49 = lean_ctor_get(x_44, 0); -lean_dec(x_49); -x_50 = !lean_is_exclusive(x_45); -if (x_50 == 0) -{ -lean_object* x_51; uint8_t x_52; -x_51 = lean_ctor_get(x_45, 1); -lean_dec(x_51); -x_52 = !lean_is_exclusive(x_46); -if (x_52 == 0) -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; -x_53 = lean_ctor_get(x_46, 1); -lean_inc(x_21); -lean_inc(x_2); -x_54 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_53, x_2, x_21); -lean_ctor_set(x_46, 1, x_54); -x_55 = lean_st_ref_set(x_11, x_45, x_48); -x_56 = !lean_is_exclusive(x_55); -if (x_56 == 0) -{ -lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; uint8_t x_62; -x_57 = lean_ctor_get(x_55, 1); -x_58 = lean_ctor_get(x_55, 0); -lean_dec(x_58); -x_59 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; -x_60 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_59, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_57); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_unbox(x_61); -lean_dec(x_61); -if (x_62 == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_free_object(x_55); -lean_free_object(x_44); -x_63 = lean_ctor_get(x_60, 1); -lean_inc(x_63); -lean_dec(x_60); -x_64 = lean_box(0); -x_65 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_64, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_63); +lean_object* x_66; lean_object* x_67; x_66 = lean_ctor_get(x_65, 0); lean_inc(x_66); x_67 = lean_ctor_get(x_65, 1); lean_inc(x_67); lean_dec(x_65); -x_24 = x_66; -x_25 = x_67; -goto block_30; +x_25 = x_66; +x_26 = x_67; +goto block_31; } else { uint8_t x_68; -x_68 = !lean_is_exclusive(x_60); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_68 = !lean_is_exclusive(x_65); if (x_68 == 0) { -lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; -x_69 = lean_ctor_get(x_60, 1); -x_70 = lean_ctor_get(x_60, 0); -lean_dec(x_70); -lean_inc(x_2); -x_71 = l_Lean_MessageData_ofExpr(x_2); -x_72 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -lean_ctor_set_tag(x_60, 7); -lean_ctor_set(x_60, 1, x_71); -lean_ctor_set(x_60, 0, x_72); -x_73 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -lean_ctor_set_tag(x_55, 7); -lean_ctor_set(x_55, 1, x_73); -lean_ctor_set(x_55, 0, x_60); -lean_inc(x_21); -x_74 = l_Lean_MessageData_ofExpr(x_21); -lean_ctor_set_tag(x_44, 7); -lean_ctor_set(x_44, 1, x_74); -lean_ctor_set(x_44, 0, x_55); -x_75 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_76 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_76, 0, x_44); -lean_ctor_set(x_76, 1, x_75); -x_77 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_59, x_76, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_69); -x_78 = lean_ctor_get(x_77, 0); -lean_inc(x_78); -x_79 = lean_ctor_get(x_77, 1); -lean_inc(x_79); -lean_dec(x_77); -x_80 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_78, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_79); -lean_dec(x_78); -x_81 = lean_ctor_get(x_80, 0); -lean_inc(x_81); -x_82 = lean_ctor_get(x_80, 1); -lean_inc(x_82); -lean_dec(x_80); -x_24 = x_81; -x_25 = x_82; -goto block_30; +return x_65; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; -x_83 = lean_ctor_get(x_60, 1); -lean_inc(x_83); +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_65, 0); +x_70 = lean_ctor_get(x_65, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_65); +x_71 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +return x_71; +} +} +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; uint8_t x_76; +x_72 = lean_ctor_get(x_60, 1); +lean_inc(x_72); lean_dec(x_60); +x_73 = lean_st_ref_take(x_12, x_72); +x_74 = lean_ctor_get(x_73, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_74, 1); +lean_inc(x_75); +x_76 = !lean_is_exclusive(x_73); +if (x_76 == 0) +{ +lean_object* x_77; lean_object* x_78; uint8_t x_79; +x_77 = lean_ctor_get(x_73, 1); +x_78 = lean_ctor_get(x_73, 0); +lean_dec(x_78); +x_79 = !lean_is_exclusive(x_74); +if (x_79 == 0) +{ +lean_object* x_80; uint8_t x_81; +x_80 = lean_ctor_get(x_74, 1); +lean_dec(x_80); +x_81 = !lean_is_exclusive(x_75); +if (x_81 == 0) +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; uint8_t x_85; +x_82 = lean_ctor_get(x_75, 1); +lean_inc(x_34); lean_inc(x_2); -x_84 = l_Lean_MessageData_ofExpr(x_2); -x_85 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -x_86 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_86, 0, x_85); -lean_ctor_set(x_86, 1, x_84); -x_87 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -lean_ctor_set_tag(x_55, 7); -lean_ctor_set(x_55, 1, x_87); -lean_ctor_set(x_55, 0, x_86); -lean_inc(x_21); -x_88 = l_Lean_MessageData_ofExpr(x_21); -lean_ctor_set_tag(x_44, 7); -lean_ctor_set(x_44, 1, x_88); -lean_ctor_set(x_44, 0, x_55); -x_89 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_90 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_90, 0, x_44); -lean_ctor_set(x_90, 1, x_89); -x_91 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_59, x_90, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_83); -x_92 = lean_ctor_get(x_91, 0); +x_83 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_82, x_2, x_34); +lean_ctor_set(x_75, 1, x_83); +x_84 = lean_st_ref_set(x_12, x_74, x_77); +x_85 = !lean_is_exclusive(x_84); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; uint8_t x_91; +x_86 = lean_ctor_get(x_84, 1); +x_87 = lean_ctor_get(x_84, 0); +lean_dec(x_87); +x_88 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_89 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_88, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_86); +x_90 = lean_ctor_get(x_89, 0); +lean_inc(x_90); +x_91 = lean_unbox(x_90); +lean_dec(x_90); +if (x_91 == 0) +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; +lean_free_object(x_84); +lean_free_object(x_73); +lean_free_object(x_22); +x_92 = lean_ctor_get(x_89, 1); lean_inc(x_92); -x_93 = lean_ctor_get(x_91, 1); -lean_inc(x_93); -lean_dec(x_91); -x_94 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_92, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_93); -lean_dec(x_92); +lean_dec(x_89); +x_93 = lean_box(0); +x_94 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_93, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_92); x_95 = lean_ctor_get(x_94, 0); lean_inc(x_95); x_96 = lean_ctor_get(x_94, 1); lean_inc(x_96); lean_dec(x_94); -x_24 = x_95; -x_25 = x_96; -goto block_30; -} -} +x_25 = x_95; +x_26 = x_96; +goto block_31; } else { -lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; uint8_t x_101; -x_97 = lean_ctor_get(x_55, 1); -lean_inc(x_97); -lean_dec(x_55); -x_98 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; -x_99 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_98, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_97); -x_100 = lean_ctor_get(x_99, 0); -lean_inc(x_100); -x_101 = lean_unbox(x_100); -lean_dec(x_100); -if (x_101 == 0) +uint8_t x_97; +x_97 = !lean_is_exclusive(x_89); +if (x_97 == 0) { -lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; -lean_free_object(x_44); -x_102 = lean_ctor_get(x_99, 1); -lean_inc(x_102); +lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; +x_98 = lean_ctor_get(x_89, 1); +x_99 = lean_ctor_get(x_89, 0); lean_dec(x_99); -x_103 = lean_box(0); -x_104 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_103, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_102); -x_105 = lean_ctor_get(x_104, 0); -lean_inc(x_105); -x_106 = lean_ctor_get(x_104, 1); +lean_inc(x_2); +x_100 = l_Lean_MessageData_ofExpr(x_2); +x_101 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +lean_ctor_set_tag(x_89, 7); +lean_ctor_set(x_89, 1, x_100); +lean_ctor_set(x_89, 0, x_101); +x_102 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +lean_ctor_set_tag(x_84, 7); +lean_ctor_set(x_84, 1, x_102); +lean_ctor_set(x_84, 0, x_89); +lean_inc(x_34); +x_103 = l_Lean_MessageData_ofExpr(x_34); +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_103); +lean_ctor_set(x_73, 0, x_84); +x_104 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_104); +lean_ctor_set(x_22, 0, x_73); +x_105 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_88, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_98); +x_106 = lean_ctor_get(x_105, 0); lean_inc(x_106); -lean_dec(x_104); -x_24 = x_105; -x_25 = x_106; -goto block_30; -} -else -{ -lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; -x_107 = lean_ctor_get(x_99, 1); +x_107 = lean_ctor_get(x_105, 1); lean_inc(x_107); -if (lean_is_exclusive(x_99)) { - lean_ctor_release(x_99, 0); - lean_ctor_release(x_99, 1); - x_108 = x_99; -} else { - lean_dec_ref(x_99); - x_108 = lean_box(0); +lean_dec(x_105); +x_108 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_106, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_107); +lean_dec(x_106); +x_109 = lean_ctor_get(x_108, 0); +lean_inc(x_109); +x_110 = lean_ctor_get(x_108, 1); +lean_inc(x_110); +lean_dec(x_108); +x_25 = x_109; +x_26 = x_110; +goto block_31; } +else +{ +lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_111 = lean_ctor_get(x_89, 1); +lean_inc(x_111); +lean_dec(x_89); lean_inc(x_2); -x_109 = l_Lean_MessageData_ofExpr(x_2); -x_110 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -if (lean_is_scalar(x_108)) { - x_111 = lean_alloc_ctor(7, 2, 0); -} else { - x_111 = x_108; - lean_ctor_set_tag(x_111, 7); -} -lean_ctor_set(x_111, 0, x_110); -lean_ctor_set(x_111, 1, x_109); -x_112 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -x_113 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_113, 0, x_111); -lean_ctor_set(x_113, 1, x_112); -lean_inc(x_21); -x_114 = l_Lean_MessageData_ofExpr(x_21); -lean_ctor_set_tag(x_44, 7); -lean_ctor_set(x_44, 1, x_114); -lean_ctor_set(x_44, 0, x_113); -x_115 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_116 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_116, 0, x_44); -lean_ctor_set(x_116, 1, x_115); -x_117 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_98, x_116, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_107); -x_118 = lean_ctor_get(x_117, 0); -lean_inc(x_118); -x_119 = lean_ctor_get(x_117, 1); +x_112 = l_Lean_MessageData_ofExpr(x_2); +x_113 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +x_114 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_114, 0, x_113); +lean_ctor_set(x_114, 1, x_112); +x_115 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +lean_ctor_set_tag(x_84, 7); +lean_ctor_set(x_84, 1, x_115); +lean_ctor_set(x_84, 0, x_114); +lean_inc(x_34); +x_116 = l_Lean_MessageData_ofExpr(x_34); +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_116); +lean_ctor_set(x_73, 0, x_84); +x_117 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_117); +lean_ctor_set(x_22, 0, x_73); +x_118 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_88, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_111); +x_119 = lean_ctor_get(x_118, 0); lean_inc(x_119); -lean_dec(x_117); -x_120 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_118, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_119); +x_120 = lean_ctor_get(x_118, 1); +lean_inc(x_120); lean_dec(x_118); -x_121 = lean_ctor_get(x_120, 0); -lean_inc(x_121); -x_122 = lean_ctor_get(x_120, 1); +x_121 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_119, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_120); +lean_dec(x_119); +x_122 = lean_ctor_get(x_121, 0); lean_inc(x_122); -lean_dec(x_120); -x_24 = x_121; -x_25 = x_122; -goto block_30; -} -} -} -else -{ -lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; uint8_t x_134; -x_123 = lean_ctor_get(x_46, 0); -x_124 = lean_ctor_get(x_46, 1); -x_125 = lean_ctor_get(x_46, 2); -lean_inc(x_125); -lean_inc(x_124); +x_123 = lean_ctor_get(x_121, 1); lean_inc(x_123); -lean_dec(x_46); -lean_inc(x_21); -lean_inc(x_2); -x_126 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_124, x_2, x_21); -x_127 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_127, 0, x_123); -lean_ctor_set(x_127, 1, x_126); -lean_ctor_set(x_127, 2, x_125); -lean_ctor_set(x_45, 1, x_127); -x_128 = lean_st_ref_set(x_11, x_45, x_48); -x_129 = lean_ctor_get(x_128, 1); +lean_dec(x_121); +x_25 = x_122; +x_26 = x_123; +goto block_31; +} +} +} +else +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; uint8_t x_128; +x_124 = lean_ctor_get(x_84, 1); +lean_inc(x_124); +lean_dec(x_84); +x_125 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_126 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_125, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_124); +x_127 = lean_ctor_get(x_126, 0); +lean_inc(x_127); +x_128 = lean_unbox(x_127); +lean_dec(x_127); +if (x_128 == 0) +{ +lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; +lean_free_object(x_73); +lean_free_object(x_22); +x_129 = lean_ctor_get(x_126, 1); lean_inc(x_129); -if (lean_is_exclusive(x_128)) { - lean_ctor_release(x_128, 0); - lean_ctor_release(x_128, 1); - x_130 = x_128; -} else { - lean_dec_ref(x_128); - x_130 = lean_box(0); -} -x_131 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; -x_132 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_131, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_129); -x_133 = lean_ctor_get(x_132, 0); +lean_dec(x_126); +x_130 = lean_box(0); +x_131 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_130, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_129); +x_132 = lean_ctor_get(x_131, 0); +lean_inc(x_132); +x_133 = lean_ctor_get(x_131, 1); lean_inc(x_133); -x_134 = lean_unbox(x_133); -lean_dec(x_133); -if (x_134 == 0) -{ -lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; -lean_dec(x_130); -lean_free_object(x_44); -x_135 = lean_ctor_get(x_132, 1); -lean_inc(x_135); -lean_dec(x_132); -x_136 = lean_box(0); -x_137 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_136, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_135); -x_138 = lean_ctor_get(x_137, 0); -lean_inc(x_138); -x_139 = lean_ctor_get(x_137, 1); -lean_inc(x_139); -lean_dec(x_137); -x_24 = x_138; -x_25 = x_139; -goto block_30; +lean_dec(x_131); +x_25 = x_132; +x_26 = x_133; +goto block_31; } else { -lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; -x_140 = lean_ctor_get(x_132, 1); -lean_inc(x_140); -if (lean_is_exclusive(x_132)) { - lean_ctor_release(x_132, 0); - lean_ctor_release(x_132, 1); - x_141 = x_132; +lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +x_134 = lean_ctor_get(x_126, 1); +lean_inc(x_134); +if (lean_is_exclusive(x_126)) { + lean_ctor_release(x_126, 0); + lean_ctor_release(x_126, 1); + x_135 = x_126; } else { - lean_dec_ref(x_132); - x_141 = lean_box(0); + lean_dec_ref(x_126); + x_135 = lean_box(0); } lean_inc(x_2); -x_142 = l_Lean_MessageData_ofExpr(x_2); -x_143 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -if (lean_is_scalar(x_141)) { - x_144 = lean_alloc_ctor(7, 2, 0); +x_136 = l_Lean_MessageData_ofExpr(x_2); +x_137 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_135)) { + x_138 = lean_alloc_ctor(7, 2, 0); } else { - x_144 = x_141; - lean_ctor_set_tag(x_144, 7); + x_138 = x_135; + lean_ctor_set_tag(x_138, 7); } -lean_ctor_set(x_144, 0, x_143); -lean_ctor_set(x_144, 1, x_142); -x_145 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -if (lean_is_scalar(x_130)) { - x_146 = lean_alloc_ctor(7, 2, 0); -} else { - x_146 = x_130; - lean_ctor_set_tag(x_146, 7); +lean_ctor_set(x_138, 0, x_137); +lean_ctor_set(x_138, 1, x_136); +x_139 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +x_140 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_140, 0, x_138); +lean_ctor_set(x_140, 1, x_139); +lean_inc(x_34); +x_141 = l_Lean_MessageData_ofExpr(x_34); +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_141); +lean_ctor_set(x_73, 0, x_140); +x_142 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_142); +lean_ctor_set(x_22, 0, x_73); +x_143 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_125, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_134); +x_144 = lean_ctor_get(x_143, 0); +lean_inc(x_144); +x_145 = lean_ctor_get(x_143, 1); +lean_inc(x_145); +lean_dec(x_143); +x_146 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_144, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_145); +lean_dec(x_144); +x_147 = lean_ctor_get(x_146, 0); +lean_inc(x_147); +x_148 = lean_ctor_get(x_146, 1); +lean_inc(x_148); +lean_dec(x_146); +x_25 = x_147; +x_26 = x_148; +goto block_31; } -lean_ctor_set(x_146, 0, x_144); -lean_ctor_set(x_146, 1, x_145); -lean_inc(x_21); -x_147 = l_Lean_MessageData_ofExpr(x_21); -lean_ctor_set_tag(x_44, 7); -lean_ctor_set(x_44, 1, x_147); -lean_ctor_set(x_44, 0, x_146); -x_148 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_149 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_149, 0, x_44); -lean_ctor_set(x_149, 1, x_148); -x_150 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_131, x_149, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_140); -x_151 = lean_ctor_get(x_150, 0); +} +} +else +{ +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; uint8_t x_160; +x_149 = lean_ctor_get(x_75, 0); +x_150 = lean_ctor_get(x_75, 1); +x_151 = lean_ctor_get(x_75, 2); lean_inc(x_151); -x_152 = lean_ctor_get(x_150, 1); -lean_inc(x_152); -lean_dec(x_150); -x_153 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_151, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_152); -lean_dec(x_151); -x_154 = lean_ctor_get(x_153, 0); -lean_inc(x_154); -x_155 = lean_ctor_get(x_153, 1); +lean_inc(x_150); +lean_inc(x_149); +lean_dec(x_75); +lean_inc(x_34); +lean_inc(x_2); +x_152 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_150, x_2, x_34); +x_153 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_153, 0, x_149); +lean_ctor_set(x_153, 1, x_152); +lean_ctor_set(x_153, 2, x_151); +lean_ctor_set(x_74, 1, x_153); +x_154 = lean_st_ref_set(x_12, x_74, x_77); +x_155 = lean_ctor_get(x_154, 1); lean_inc(x_155); -lean_dec(x_153); -x_24 = x_154; -x_25 = x_155; -goto block_30; +if (lean_is_exclusive(x_154)) { + lean_ctor_release(x_154, 0); + lean_ctor_release(x_154, 1); + x_156 = x_154; +} else { + lean_dec_ref(x_154); + x_156 = lean_box(0); } -} -} -else -{ -lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; uint8_t x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; uint8_t x_194; -x_156 = lean_ctor_get(x_45, 0); -x_157 = lean_ctor_get(x_45, 2); -x_158 = lean_ctor_get(x_45, 3); -x_159 = lean_ctor_get(x_45, 4); -x_160 = lean_ctor_get(x_45, 5); -x_161 = lean_ctor_get(x_45, 6); -x_162 = lean_ctor_get_uint8(x_45, sizeof(void*)*25); -x_163 = lean_ctor_get(x_45, 7); -x_164 = lean_ctor_get(x_45, 8); -x_165 = lean_ctor_get(x_45, 9); -x_166 = lean_ctor_get(x_45, 10); -x_167 = lean_ctor_get(x_45, 11); -x_168 = lean_ctor_get(x_45, 12); -x_169 = lean_ctor_get(x_45, 13); -x_170 = lean_ctor_get(x_45, 14); -x_171 = lean_ctor_get(x_45, 15); -x_172 = lean_ctor_get(x_45, 16); -x_173 = lean_ctor_get(x_45, 17); -x_174 = lean_ctor_get(x_45, 18); -x_175 = lean_ctor_get(x_45, 19); -x_176 = lean_ctor_get(x_45, 20); -x_177 = lean_ctor_get(x_45, 21); -x_178 = lean_ctor_get(x_45, 22); -x_179 = lean_ctor_get(x_45, 23); -x_180 = lean_ctor_get(x_45, 24); -lean_inc(x_180); -lean_inc(x_179); -lean_inc(x_178); -lean_inc(x_177); -lean_inc(x_176); -lean_inc(x_175); -lean_inc(x_174); -lean_inc(x_173); -lean_inc(x_172); -lean_inc(x_171); -lean_inc(x_170); -lean_inc(x_169); -lean_inc(x_168); -lean_inc(x_167); -lean_inc(x_166); -lean_inc(x_165); -lean_inc(x_164); -lean_inc(x_163); -lean_inc(x_161); -lean_inc(x_160); +x_157 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_158 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_157, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_155); +x_159 = lean_ctor_get(x_158, 0); lean_inc(x_159); -lean_inc(x_158); -lean_inc(x_157); -lean_inc(x_156); -lean_dec(x_45); -x_181 = lean_ctor_get(x_46, 0); -lean_inc(x_181); -x_182 = lean_ctor_get(x_46, 1); -lean_inc(x_182); -x_183 = lean_ctor_get(x_46, 2); -lean_inc(x_183); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - lean_ctor_release(x_46, 2); - x_184 = x_46; -} else { - lean_dec_ref(x_46); - x_184 = lean_box(0); -} -lean_inc(x_21); -lean_inc(x_2); -x_185 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_182, x_2, x_21); -if (lean_is_scalar(x_184)) { - x_186 = lean_alloc_ctor(0, 3, 0); -} else { - x_186 = x_184; -} -lean_ctor_set(x_186, 0, x_181); -lean_ctor_set(x_186, 1, x_185); -lean_ctor_set(x_186, 2, x_183); -x_187 = lean_alloc_ctor(0, 25, 1); -lean_ctor_set(x_187, 0, x_156); -lean_ctor_set(x_187, 1, x_186); -lean_ctor_set(x_187, 2, x_157); -lean_ctor_set(x_187, 3, x_158); -lean_ctor_set(x_187, 4, x_159); -lean_ctor_set(x_187, 5, x_160); -lean_ctor_set(x_187, 6, x_161); -lean_ctor_set(x_187, 7, x_163); -lean_ctor_set(x_187, 8, x_164); -lean_ctor_set(x_187, 9, x_165); -lean_ctor_set(x_187, 10, x_166); -lean_ctor_set(x_187, 11, x_167); -lean_ctor_set(x_187, 12, x_168); -lean_ctor_set(x_187, 13, x_169); -lean_ctor_set(x_187, 14, x_170); -lean_ctor_set(x_187, 15, x_171); -lean_ctor_set(x_187, 16, x_172); -lean_ctor_set(x_187, 17, x_173); -lean_ctor_set(x_187, 18, x_174); -lean_ctor_set(x_187, 19, x_175); -lean_ctor_set(x_187, 20, x_176); -lean_ctor_set(x_187, 21, x_177); -lean_ctor_set(x_187, 22, x_178); -lean_ctor_set(x_187, 23, x_179); -lean_ctor_set(x_187, 24, x_180); -lean_ctor_set_uint8(x_187, sizeof(void*)*25, x_162); -x_188 = lean_st_ref_set(x_11, x_187, x_48); -x_189 = lean_ctor_get(x_188, 1); -lean_inc(x_189); -if (lean_is_exclusive(x_188)) { - lean_ctor_release(x_188, 0); - lean_ctor_release(x_188, 1); - x_190 = x_188; -} else { - lean_dec_ref(x_188); - x_190 = lean_box(0); -} -x_191 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; -x_192 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_191, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_189); -x_193 = lean_ctor_get(x_192, 0); -lean_inc(x_193); -x_194 = lean_unbox(x_193); -lean_dec(x_193); -if (x_194 == 0) +x_160 = lean_unbox(x_159); +lean_dec(x_159); +if (x_160 == 0) { -lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; -lean_dec(x_190); -lean_free_object(x_44); -x_195 = lean_ctor_get(x_192, 1); -lean_inc(x_195); -lean_dec(x_192); -x_196 = lean_box(0); -x_197 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_196, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_195); -x_198 = lean_ctor_get(x_197, 0); -lean_inc(x_198); -x_199 = lean_ctor_get(x_197, 1); -lean_inc(x_199); -lean_dec(x_197); -x_24 = x_198; -x_25 = x_199; -goto block_30; +lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; +lean_dec(x_156); +lean_free_object(x_73); +lean_free_object(x_22); +x_161 = lean_ctor_get(x_158, 1); +lean_inc(x_161); +lean_dec(x_158); +x_162 = lean_box(0); +x_163 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_162, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_161); +x_164 = lean_ctor_get(x_163, 0); +lean_inc(x_164); +x_165 = lean_ctor_get(x_163, 1); +lean_inc(x_165); +lean_dec(x_163); +x_25 = x_164; +x_26 = x_165; +goto block_31; } else { -lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; -x_200 = lean_ctor_get(x_192, 1); +lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; +x_166 = lean_ctor_get(x_158, 1); +lean_inc(x_166); +if (lean_is_exclusive(x_158)) { + lean_ctor_release(x_158, 0); + lean_ctor_release(x_158, 1); + x_167 = x_158; +} else { + lean_dec_ref(x_158); + x_167 = lean_box(0); +} +lean_inc(x_2); +x_168 = l_Lean_MessageData_ofExpr(x_2); +x_169 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_167)) { + x_170 = lean_alloc_ctor(7, 2, 0); +} else { + x_170 = x_167; + lean_ctor_set_tag(x_170, 7); +} +lean_ctor_set(x_170, 0, x_169); +lean_ctor_set(x_170, 1, x_168); +x_171 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +if (lean_is_scalar(x_156)) { + x_172 = lean_alloc_ctor(7, 2, 0); +} else { + x_172 = x_156; + lean_ctor_set_tag(x_172, 7); +} +lean_ctor_set(x_172, 0, x_170); +lean_ctor_set(x_172, 1, x_171); +lean_inc(x_34); +x_173 = l_Lean_MessageData_ofExpr(x_34); +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_173); +lean_ctor_set(x_73, 0, x_172); +x_174 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_174); +lean_ctor_set(x_22, 0, x_73); +x_175 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_157, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_166); +x_176 = lean_ctor_get(x_175, 0); +lean_inc(x_176); +x_177 = lean_ctor_get(x_175, 1); +lean_inc(x_177); +lean_dec(x_175); +x_178 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_176, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_177); +lean_dec(x_176); +x_179 = lean_ctor_get(x_178, 0); +lean_inc(x_179); +x_180 = lean_ctor_get(x_178, 1); +lean_inc(x_180); +lean_dec(x_178); +x_25 = x_179; +x_26 = x_180; +goto block_31; +} +} +} +else +{ +lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; uint8_t x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_213; lean_object* x_214; lean_object* x_215; lean_object* x_216; lean_object* x_217; lean_object* x_218; uint8_t x_219; +x_181 = lean_ctor_get(x_74, 0); +x_182 = lean_ctor_get(x_74, 2); +x_183 = lean_ctor_get(x_74, 3); +x_184 = lean_ctor_get(x_74, 4); +x_185 = lean_ctor_get(x_74, 5); +x_186 = lean_ctor_get(x_74, 6); +x_187 = lean_ctor_get_uint8(x_74, sizeof(void*)*25); +x_188 = lean_ctor_get(x_74, 7); +x_189 = lean_ctor_get(x_74, 8); +x_190 = lean_ctor_get(x_74, 9); +x_191 = lean_ctor_get(x_74, 10); +x_192 = lean_ctor_get(x_74, 11); +x_193 = lean_ctor_get(x_74, 12); +x_194 = lean_ctor_get(x_74, 13); +x_195 = lean_ctor_get(x_74, 14); +x_196 = lean_ctor_get(x_74, 15); +x_197 = lean_ctor_get(x_74, 16); +x_198 = lean_ctor_get(x_74, 17); +x_199 = lean_ctor_get(x_74, 18); +x_200 = lean_ctor_get(x_74, 19); +x_201 = lean_ctor_get(x_74, 20); +x_202 = lean_ctor_get(x_74, 21); +x_203 = lean_ctor_get(x_74, 22); +x_204 = lean_ctor_get(x_74, 23); +x_205 = lean_ctor_get(x_74, 24); +lean_inc(x_205); +lean_inc(x_204); +lean_inc(x_203); +lean_inc(x_202); +lean_inc(x_201); lean_inc(x_200); -if (lean_is_exclusive(x_192)) { - lean_ctor_release(x_192, 0); - lean_ctor_release(x_192, 1); - x_201 = x_192; +lean_inc(x_199); +lean_inc(x_198); +lean_inc(x_197); +lean_inc(x_196); +lean_inc(x_195); +lean_inc(x_194); +lean_inc(x_193); +lean_inc(x_192); +lean_inc(x_191); +lean_inc(x_190); +lean_inc(x_189); +lean_inc(x_188); +lean_inc(x_186); +lean_inc(x_185); +lean_inc(x_184); +lean_inc(x_183); +lean_inc(x_182); +lean_inc(x_181); +lean_dec(x_74); +x_206 = lean_ctor_get(x_75, 0); +lean_inc(x_206); +x_207 = lean_ctor_get(x_75, 1); +lean_inc(x_207); +x_208 = lean_ctor_get(x_75, 2); +lean_inc(x_208); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + lean_ctor_release(x_75, 2); + x_209 = x_75; } else { - lean_dec_ref(x_192); - x_201 = lean_box(0); + lean_dec_ref(x_75); + x_209 = lean_box(0); } +lean_inc(x_34); lean_inc(x_2); -x_202 = l_Lean_MessageData_ofExpr(x_2); -x_203 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -if (lean_is_scalar(x_201)) { - x_204 = lean_alloc_ctor(7, 2, 0); +x_210 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_207, x_2, x_34); +if (lean_is_scalar(x_209)) { + x_211 = lean_alloc_ctor(0, 3, 0); } else { - x_204 = x_201; - lean_ctor_set_tag(x_204, 7); + x_211 = x_209; } -lean_ctor_set(x_204, 0, x_203); -lean_ctor_set(x_204, 1, x_202); -x_205 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -if (lean_is_scalar(x_190)) { - x_206 = lean_alloc_ctor(7, 2, 0); -} else { - x_206 = x_190; - lean_ctor_set_tag(x_206, 7); -} -lean_ctor_set(x_206, 0, x_204); -lean_ctor_set(x_206, 1, x_205); -lean_inc(x_21); -x_207 = l_Lean_MessageData_ofExpr(x_21); -lean_ctor_set_tag(x_44, 7); -lean_ctor_set(x_44, 1, x_207); -lean_ctor_set(x_44, 0, x_206); -x_208 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_209 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_209, 0, x_44); -lean_ctor_set(x_209, 1, x_208); -x_210 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_191, x_209, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_200); -x_211 = lean_ctor_get(x_210, 0); -lean_inc(x_211); -x_212 = lean_ctor_get(x_210, 1); -lean_inc(x_212); -lean_dec(x_210); -x_213 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_211, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_212); -lean_dec(x_211); -x_214 = lean_ctor_get(x_213, 0); +lean_ctor_set(x_211, 0, x_206); +lean_ctor_set(x_211, 1, x_210); +lean_ctor_set(x_211, 2, x_208); +x_212 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_212, 0, x_181); +lean_ctor_set(x_212, 1, x_211); +lean_ctor_set(x_212, 2, x_182); +lean_ctor_set(x_212, 3, x_183); +lean_ctor_set(x_212, 4, x_184); +lean_ctor_set(x_212, 5, x_185); +lean_ctor_set(x_212, 6, x_186); +lean_ctor_set(x_212, 7, x_188); +lean_ctor_set(x_212, 8, x_189); +lean_ctor_set(x_212, 9, x_190); +lean_ctor_set(x_212, 10, x_191); +lean_ctor_set(x_212, 11, x_192); +lean_ctor_set(x_212, 12, x_193); +lean_ctor_set(x_212, 13, x_194); +lean_ctor_set(x_212, 14, x_195); +lean_ctor_set(x_212, 15, x_196); +lean_ctor_set(x_212, 16, x_197); +lean_ctor_set(x_212, 17, x_198); +lean_ctor_set(x_212, 18, x_199); +lean_ctor_set(x_212, 19, x_200); +lean_ctor_set(x_212, 20, x_201); +lean_ctor_set(x_212, 21, x_202); +lean_ctor_set(x_212, 22, x_203); +lean_ctor_set(x_212, 23, x_204); +lean_ctor_set(x_212, 24, x_205); +lean_ctor_set_uint8(x_212, sizeof(void*)*25, x_187); +x_213 = lean_st_ref_set(x_12, x_212, x_77); +x_214 = lean_ctor_get(x_213, 1); lean_inc(x_214); -x_215 = lean_ctor_get(x_213, 1); -lean_inc(x_215); -lean_dec(x_213); -x_24 = x_214; -x_25 = x_215; -goto block_30; +if (lean_is_exclusive(x_213)) { + lean_ctor_release(x_213, 0); + lean_ctor_release(x_213, 1); + x_215 = x_213; +} else { + lean_dec_ref(x_213); + x_215 = lean_box(0); } -} -} -else -{ -lean_object* x_216; lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_220; lean_object* x_221; lean_object* x_222; uint8_t x_223; lean_object* x_224; lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; uint8_t x_256; -x_216 = lean_ctor_get(x_44, 1); -lean_inc(x_216); -lean_dec(x_44); -x_217 = lean_ctor_get(x_45, 0); -lean_inc(x_217); -x_218 = lean_ctor_get(x_45, 2); +x_216 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_217 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_216, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_214); +x_218 = lean_ctor_get(x_217, 0); lean_inc(x_218); -x_219 = lean_ctor_get(x_45, 3); -lean_inc(x_219); -x_220 = lean_ctor_get(x_45, 4); +x_219 = lean_unbox(x_218); +lean_dec(x_218); +if (x_219 == 0) +{ +lean_object* x_220; lean_object* x_221; lean_object* x_222; lean_object* x_223; lean_object* x_224; +lean_dec(x_215); +lean_free_object(x_73); +lean_free_object(x_22); +x_220 = lean_ctor_get(x_217, 1); lean_inc(x_220); -x_221 = lean_ctor_get(x_45, 5); -lean_inc(x_221); -x_222 = lean_ctor_get(x_45, 6); -lean_inc(x_222); -x_223 = lean_ctor_get_uint8(x_45, sizeof(void*)*25); -x_224 = lean_ctor_get(x_45, 7); +lean_dec(x_217); +x_221 = lean_box(0); +x_222 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_221, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_220); +x_223 = lean_ctor_get(x_222, 0); +lean_inc(x_223); +x_224 = lean_ctor_get(x_222, 1); lean_inc(x_224); -x_225 = lean_ctor_get(x_45, 8); +lean_dec(x_222); +x_25 = x_223; +x_26 = x_224; +goto block_31; +} +else +{ +lean_object* x_225; lean_object* x_226; lean_object* x_227; lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; lean_object* x_232; lean_object* x_233; lean_object* x_234; lean_object* x_235; lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; +x_225 = lean_ctor_get(x_217, 1); lean_inc(x_225); -x_226 = lean_ctor_get(x_45, 9); -lean_inc(x_226); -x_227 = lean_ctor_get(x_45, 10); -lean_inc(x_227); -x_228 = lean_ctor_get(x_45, 11); -lean_inc(x_228); -x_229 = lean_ctor_get(x_45, 12); -lean_inc(x_229); -x_230 = lean_ctor_get(x_45, 13); -lean_inc(x_230); -x_231 = lean_ctor_get(x_45, 14); -lean_inc(x_231); -x_232 = lean_ctor_get(x_45, 15); -lean_inc(x_232); -x_233 = lean_ctor_get(x_45, 16); -lean_inc(x_233); -x_234 = lean_ctor_get(x_45, 17); -lean_inc(x_234); -x_235 = lean_ctor_get(x_45, 18); +if (lean_is_exclusive(x_217)) { + lean_ctor_release(x_217, 0); + lean_ctor_release(x_217, 1); + x_226 = x_217; +} else { + lean_dec_ref(x_217); + x_226 = lean_box(0); +} +lean_inc(x_2); +x_227 = l_Lean_MessageData_ofExpr(x_2); +x_228 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_226)) { + x_229 = lean_alloc_ctor(7, 2, 0); +} else { + x_229 = x_226; + lean_ctor_set_tag(x_229, 7); +} +lean_ctor_set(x_229, 0, x_228); +lean_ctor_set(x_229, 1, x_227); +x_230 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +if (lean_is_scalar(x_215)) { + x_231 = lean_alloc_ctor(7, 2, 0); +} else { + x_231 = x_215; + lean_ctor_set_tag(x_231, 7); +} +lean_ctor_set(x_231, 0, x_229); +lean_ctor_set(x_231, 1, x_230); +lean_inc(x_34); +x_232 = l_Lean_MessageData_ofExpr(x_34); +lean_ctor_set_tag(x_73, 7); +lean_ctor_set(x_73, 1, x_232); +lean_ctor_set(x_73, 0, x_231); +x_233 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_233); +lean_ctor_set(x_22, 0, x_73); +x_234 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_216, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_225); +x_235 = lean_ctor_get(x_234, 0); lean_inc(x_235); -x_236 = lean_ctor_get(x_45, 19); +x_236 = lean_ctor_get(x_234, 1); lean_inc(x_236); -x_237 = lean_ctor_get(x_45, 20); -lean_inc(x_237); -x_238 = lean_ctor_get(x_45, 21); +lean_dec(x_234); +x_237 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_235, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_236); +lean_dec(x_235); +x_238 = lean_ctor_get(x_237, 0); lean_inc(x_238); -x_239 = lean_ctor_get(x_45, 22); +x_239 = lean_ctor_get(x_237, 1); lean_inc(x_239); -x_240 = lean_ctor_get(x_45, 23); +lean_dec(x_237); +x_25 = x_238; +x_26 = x_239; +goto block_31; +} +} +} +else +{ +lean_object* x_240; lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; uint8_t x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; lean_object* x_261; lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; uint8_t x_280; +x_240 = lean_ctor_get(x_73, 1); lean_inc(x_240); -x_241 = lean_ctor_get(x_45, 24); +lean_dec(x_73); +x_241 = lean_ctor_get(x_74, 0); lean_inc(x_241); -if (lean_is_exclusive(x_45)) { - lean_ctor_release(x_45, 0); - lean_ctor_release(x_45, 1); - lean_ctor_release(x_45, 2); - lean_ctor_release(x_45, 3); - lean_ctor_release(x_45, 4); - lean_ctor_release(x_45, 5); - lean_ctor_release(x_45, 6); - lean_ctor_release(x_45, 7); - lean_ctor_release(x_45, 8); - lean_ctor_release(x_45, 9); - lean_ctor_release(x_45, 10); - lean_ctor_release(x_45, 11); - lean_ctor_release(x_45, 12); - lean_ctor_release(x_45, 13); - lean_ctor_release(x_45, 14); - lean_ctor_release(x_45, 15); - lean_ctor_release(x_45, 16); - lean_ctor_release(x_45, 17); - lean_ctor_release(x_45, 18); - lean_ctor_release(x_45, 19); - lean_ctor_release(x_45, 20); - lean_ctor_release(x_45, 21); - lean_ctor_release(x_45, 22); - lean_ctor_release(x_45, 23); - lean_ctor_release(x_45, 24); - x_242 = x_45; -} else { - lean_dec_ref(x_45); - x_242 = lean_box(0); -} -x_243 = lean_ctor_get(x_46, 0); +x_242 = lean_ctor_get(x_74, 2); +lean_inc(x_242); +x_243 = lean_ctor_get(x_74, 3); lean_inc(x_243); -x_244 = lean_ctor_get(x_46, 1); +x_244 = lean_ctor_get(x_74, 4); lean_inc(x_244); -x_245 = lean_ctor_get(x_46, 2); +x_245 = lean_ctor_get(x_74, 5); lean_inc(x_245); -if (lean_is_exclusive(x_46)) { - lean_ctor_release(x_46, 0); - lean_ctor_release(x_46, 1); - lean_ctor_release(x_46, 2); - x_246 = x_46; -} else { - lean_dec_ref(x_46); - x_246 = lean_box(0); -} -lean_inc(x_21); -lean_inc(x_2); -x_247 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_244, x_2, x_21); -if (lean_is_scalar(x_246)) { - x_248 = lean_alloc_ctor(0, 3, 0); -} else { - x_248 = x_246; -} -lean_ctor_set(x_248, 0, x_243); -lean_ctor_set(x_248, 1, x_247); -lean_ctor_set(x_248, 2, x_245); -if (lean_is_scalar(x_242)) { - x_249 = lean_alloc_ctor(0, 25, 1); -} else { - x_249 = x_242; -} -lean_ctor_set(x_249, 0, x_217); -lean_ctor_set(x_249, 1, x_248); -lean_ctor_set(x_249, 2, x_218); -lean_ctor_set(x_249, 3, x_219); -lean_ctor_set(x_249, 4, x_220); -lean_ctor_set(x_249, 5, x_221); -lean_ctor_set(x_249, 6, x_222); -lean_ctor_set(x_249, 7, x_224); -lean_ctor_set(x_249, 8, x_225); -lean_ctor_set(x_249, 9, x_226); -lean_ctor_set(x_249, 10, x_227); -lean_ctor_set(x_249, 11, x_228); -lean_ctor_set(x_249, 12, x_229); -lean_ctor_set(x_249, 13, x_230); -lean_ctor_set(x_249, 14, x_231); -lean_ctor_set(x_249, 15, x_232); -lean_ctor_set(x_249, 16, x_233); -lean_ctor_set(x_249, 17, x_234); -lean_ctor_set(x_249, 18, x_235); -lean_ctor_set(x_249, 19, x_236); -lean_ctor_set(x_249, 20, x_237); -lean_ctor_set(x_249, 21, x_238); -lean_ctor_set(x_249, 22, x_239); -lean_ctor_set(x_249, 23, x_240); -lean_ctor_set(x_249, 24, x_241); -lean_ctor_set_uint8(x_249, sizeof(void*)*25, x_223); -x_250 = lean_st_ref_set(x_11, x_249, x_216); -x_251 = lean_ctor_get(x_250, 1); +x_246 = lean_ctor_get(x_74, 6); +lean_inc(x_246); +x_247 = lean_ctor_get_uint8(x_74, sizeof(void*)*25); +x_248 = lean_ctor_get(x_74, 7); +lean_inc(x_248); +x_249 = lean_ctor_get(x_74, 8); +lean_inc(x_249); +x_250 = lean_ctor_get(x_74, 9); +lean_inc(x_250); +x_251 = lean_ctor_get(x_74, 10); lean_inc(x_251); -if (lean_is_exclusive(x_250)) { - lean_ctor_release(x_250, 0); - lean_ctor_release(x_250, 1); - x_252 = x_250; -} else { - lean_dec_ref(x_250); - x_252 = lean_box(0); -} -x_253 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; -x_254 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_253, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_251); -x_255 = lean_ctor_get(x_254, 0); +x_252 = lean_ctor_get(x_74, 11); +lean_inc(x_252); +x_253 = lean_ctor_get(x_74, 12); +lean_inc(x_253); +x_254 = lean_ctor_get(x_74, 13); +lean_inc(x_254); +x_255 = lean_ctor_get(x_74, 14); lean_inc(x_255); -x_256 = lean_unbox(x_255); -lean_dec(x_255); -if (x_256 == 0) -{ -lean_object* x_257; lean_object* x_258; lean_object* x_259; lean_object* x_260; lean_object* x_261; -lean_dec(x_252); -x_257 = lean_ctor_get(x_254, 1); +x_256 = lean_ctor_get(x_74, 15); +lean_inc(x_256); +x_257 = lean_ctor_get(x_74, 16); lean_inc(x_257); -lean_dec(x_254); -x_258 = lean_box(0); -x_259 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_258, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_257); -x_260 = lean_ctor_get(x_259, 0); +x_258 = lean_ctor_get(x_74, 17); +lean_inc(x_258); +x_259 = lean_ctor_get(x_74, 18); +lean_inc(x_259); +x_260 = lean_ctor_get(x_74, 19); lean_inc(x_260); -x_261 = lean_ctor_get(x_259, 1); +x_261 = lean_ctor_get(x_74, 20); lean_inc(x_261); -lean_dec(x_259); -x_24 = x_260; -x_25 = x_261; -goto block_30; +x_262 = lean_ctor_get(x_74, 21); +lean_inc(x_262); +x_263 = lean_ctor_get(x_74, 22); +lean_inc(x_263); +x_264 = lean_ctor_get(x_74, 23); +lean_inc(x_264); +x_265 = lean_ctor_get(x_74, 24); +lean_inc(x_265); +if (lean_is_exclusive(x_74)) { + lean_ctor_release(x_74, 0); + lean_ctor_release(x_74, 1); + lean_ctor_release(x_74, 2); + lean_ctor_release(x_74, 3); + lean_ctor_release(x_74, 4); + lean_ctor_release(x_74, 5); + lean_ctor_release(x_74, 6); + lean_ctor_release(x_74, 7); + lean_ctor_release(x_74, 8); + lean_ctor_release(x_74, 9); + lean_ctor_release(x_74, 10); + lean_ctor_release(x_74, 11); + lean_ctor_release(x_74, 12); + lean_ctor_release(x_74, 13); + lean_ctor_release(x_74, 14); + lean_ctor_release(x_74, 15); + lean_ctor_release(x_74, 16); + lean_ctor_release(x_74, 17); + lean_ctor_release(x_74, 18); + lean_ctor_release(x_74, 19); + lean_ctor_release(x_74, 20); + lean_ctor_release(x_74, 21); + lean_ctor_release(x_74, 22); + lean_ctor_release(x_74, 23); + lean_ctor_release(x_74, 24); + x_266 = x_74; +} else { + lean_dec_ref(x_74); + x_266 = lean_box(0); +} +x_267 = lean_ctor_get(x_75, 0); +lean_inc(x_267); +x_268 = lean_ctor_get(x_75, 1); +lean_inc(x_268); +x_269 = lean_ctor_get(x_75, 2); +lean_inc(x_269); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + lean_ctor_release(x_75, 2); + x_270 = x_75; +} else { + lean_dec_ref(x_75); + x_270 = lean_box(0); +} +lean_inc(x_34); +lean_inc(x_2); +x_271 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_268, x_2, x_34); +if (lean_is_scalar(x_270)) { + x_272 = lean_alloc_ctor(0, 3, 0); +} else { + x_272 = x_270; +} +lean_ctor_set(x_272, 0, x_267); +lean_ctor_set(x_272, 1, x_271); +lean_ctor_set(x_272, 2, x_269); +if (lean_is_scalar(x_266)) { + x_273 = lean_alloc_ctor(0, 25, 1); +} else { + x_273 = x_266; +} +lean_ctor_set(x_273, 0, x_241); +lean_ctor_set(x_273, 1, x_272); +lean_ctor_set(x_273, 2, x_242); +lean_ctor_set(x_273, 3, x_243); +lean_ctor_set(x_273, 4, x_244); +lean_ctor_set(x_273, 5, x_245); +lean_ctor_set(x_273, 6, x_246); +lean_ctor_set(x_273, 7, x_248); +lean_ctor_set(x_273, 8, x_249); +lean_ctor_set(x_273, 9, x_250); +lean_ctor_set(x_273, 10, x_251); +lean_ctor_set(x_273, 11, x_252); +lean_ctor_set(x_273, 12, x_253); +lean_ctor_set(x_273, 13, x_254); +lean_ctor_set(x_273, 14, x_255); +lean_ctor_set(x_273, 15, x_256); +lean_ctor_set(x_273, 16, x_257); +lean_ctor_set(x_273, 17, x_258); +lean_ctor_set(x_273, 18, x_259); +lean_ctor_set(x_273, 19, x_260); +lean_ctor_set(x_273, 20, x_261); +lean_ctor_set(x_273, 21, x_262); +lean_ctor_set(x_273, 22, x_263); +lean_ctor_set(x_273, 23, x_264); +lean_ctor_set(x_273, 24, x_265); +lean_ctor_set_uint8(x_273, sizeof(void*)*25, x_247); +x_274 = lean_st_ref_set(x_12, x_273, x_240); +x_275 = lean_ctor_get(x_274, 1); +lean_inc(x_275); +if (lean_is_exclusive(x_274)) { + lean_ctor_release(x_274, 0); + lean_ctor_release(x_274, 1); + x_276 = x_274; +} else { + lean_dec_ref(x_274); + x_276 = lean_box(0); +} +x_277 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_278 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_277, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_275); +x_279 = lean_ctor_get(x_278, 0); +lean_inc(x_279); +x_280 = lean_unbox(x_279); +lean_dec(x_279); +if (x_280 == 0) +{ +lean_object* x_281; lean_object* x_282; lean_object* x_283; lean_object* x_284; lean_object* x_285; +lean_dec(x_276); +lean_free_object(x_22); +x_281 = lean_ctor_get(x_278, 1); +lean_inc(x_281); +lean_dec(x_278); +x_282 = lean_box(0); +x_283 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_282, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_281); +x_284 = lean_ctor_get(x_283, 0); +lean_inc(x_284); +x_285 = lean_ctor_get(x_283, 1); +lean_inc(x_285); +lean_dec(x_283); +x_25 = x_284; +x_26 = x_285; +goto block_31; } else { -lean_object* x_262; lean_object* x_263; lean_object* x_264; lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; -x_262 = lean_ctor_get(x_254, 1); -lean_inc(x_262); -if (lean_is_exclusive(x_254)) { - lean_ctor_release(x_254, 0); - lean_ctor_release(x_254, 1); - x_263 = x_254; +lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_286 = lean_ctor_get(x_278, 1); +lean_inc(x_286); +if (lean_is_exclusive(x_278)) { + lean_ctor_release(x_278, 0); + lean_ctor_release(x_278, 1); + x_287 = x_278; } else { - lean_dec_ref(x_254); - x_263 = lean_box(0); + lean_dec_ref(x_278); + x_287 = lean_box(0); } lean_inc(x_2); -x_264 = l_Lean_MessageData_ofExpr(x_2); -x_265 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; -if (lean_is_scalar(x_263)) { - x_266 = lean_alloc_ctor(7, 2, 0); +x_288 = l_Lean_MessageData_ofExpr(x_2); +x_289 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_287)) { + x_290 = lean_alloc_ctor(7, 2, 0); } else { - x_266 = x_263; - lean_ctor_set_tag(x_266, 7); + x_290 = x_287; + lean_ctor_set_tag(x_290, 7); } -lean_ctor_set(x_266, 0, x_265); -lean_ctor_set(x_266, 1, x_264); -x_267 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; -if (lean_is_scalar(x_252)) { - x_268 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_290, 0, x_289); +lean_ctor_set(x_290, 1, x_288); +x_291 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +if (lean_is_scalar(x_276)) { + x_292 = lean_alloc_ctor(7, 2, 0); } else { - x_268 = x_252; - lean_ctor_set_tag(x_268, 7); + x_292 = x_276; + lean_ctor_set_tag(x_292, 7); } -lean_ctor_set(x_268, 0, x_266); -lean_ctor_set(x_268, 1, x_267); -lean_inc(x_21); -x_269 = l_Lean_MessageData_ofExpr(x_21); -x_270 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_270, 0, x_268); -lean_ctor_set(x_270, 1, x_269); -x_271 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_272 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_272, 0, x_270); -lean_ctor_set(x_272, 1, x_271); -x_273 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_253, x_272, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_262); -x_274 = lean_ctor_get(x_273, 0); -lean_inc(x_274); -x_275 = lean_ctor_get(x_273, 1); -lean_inc(x_275); -lean_dec(x_273); -x_276 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_21, x_274, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_275); -lean_dec(x_274); -x_277 = lean_ctor_get(x_276, 0); -lean_inc(x_277); -x_278 = lean_ctor_get(x_276, 1); -lean_inc(x_278); -lean_dec(x_276); -x_24 = x_277; -x_25 = x_278; -goto block_30; +lean_ctor_set(x_292, 0, x_290); +lean_ctor_set(x_292, 1, x_291); +lean_inc(x_34); +x_293 = l_Lean_MessageData_ofExpr(x_34); +x_294 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_294, 0, x_292); +lean_ctor_set(x_294, 1, x_293); +x_295 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_295); +lean_ctor_set(x_22, 0, x_294); +x_296 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_277, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_286); +x_297 = lean_ctor_get(x_296, 0); +lean_inc(x_297); +x_298 = lean_ctor_get(x_296, 1); +lean_inc(x_298); +lean_dec(x_296); +x_299 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_297, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_298); +lean_dec(x_297); +x_300 = lean_ctor_get(x_299, 0); +lean_inc(x_300); +x_301 = lean_ctor_get(x_299, 1); +lean_inc(x_301); +lean_dec(x_299); +x_25 = x_300; +x_26 = x_301; +goto block_31; } } } } else { -uint8_t x_279; +uint8_t x_302; +lean_free_object(x_22); +lean_dec(x_34); +lean_dec(x_24); lean_dec(x_23); -lean_dec(x_22); -lean_dec(x_21); +lean_dec(x_19); lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); @@ -4081,35 +4089,39 @@ lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_5); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_279 = !lean_is_exclusive(x_31); -if (x_279 == 0) +x_302 = !lean_is_exclusive(x_60); +if (x_302 == 0) { -return x_31; +return x_60; } else { -lean_object* x_280; lean_object* x_281; lean_object* x_282; -x_280 = lean_ctor_get(x_31, 0); -x_281 = lean_ctor_get(x_31, 1); -lean_inc(x_281); -lean_inc(x_280); -lean_dec(x_31); -x_282 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_282, 0, x_280); -lean_ctor_set(x_282, 1, x_281); -return x_282; +lean_object* x_303; lean_object* x_304; lean_object* x_305; +x_303 = lean_ctor_get(x_60, 0); +x_304 = lean_ctor_get(x_60, 1); +lean_inc(x_304); +lean_inc(x_303); +lean_dec(x_60); +x_305 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_305, 0, x_303); +lean_ctor_set(x_305, 1, x_304); +return x_305; } } -block_30: +} +} +else { -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_26; lean_object* x_27; -lean_dec(x_22); +uint8_t x_306; +lean_free_object(x_22); +lean_dec(x_34); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); lean_dec(x_18); lean_dec(x_17); lean_dec(x_16); @@ -4117,34 +4129,1136 @@ lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_5); +lean_dec(x_6); +lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_26 = lean_ctor_get(x_24, 0); -lean_inc(x_26); -lean_dec(x_24); -if (lean_is_scalar(x_23)) { - x_27 = lean_alloc_ctor(0, 2, 0); -} else { - x_27 = x_23; - lean_ctor_set_tag(x_27, 0); -} -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_25); -return x_27; +x_306 = !lean_is_exclusive(x_54); +if (x_306 == 0) +{ +return x_54; } else { -lean_object* x_28; -lean_dec(x_23); -x_28 = lean_ctor_get(x_24, 0); -lean_inc(x_28); +lean_object* x_307; lean_object* x_308; lean_object* x_309; +x_307 = lean_ctor_get(x_54, 0); +x_308 = lean_ctor_get(x_54, 1); +lean_inc(x_308); +lean_inc(x_307); +lean_dec(x_54); +x_309 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_309, 0, x_307); +lean_ctor_set(x_309, 1, x_308); +return x_309; +} +} +} +else +{ +uint8_t x_310; uint8_t x_311; uint8_t x_312; uint8_t x_313; uint8_t x_314; uint8_t x_315; uint8_t x_316; uint8_t x_317; uint8_t x_318; uint8_t x_319; uint8_t x_320; uint8_t x_321; uint8_t x_322; uint8_t x_323; uint8_t x_324; uint8_t x_325; uint8_t x_326; uint8_t x_327; uint8_t x_328; lean_object* x_329; uint64_t x_330; uint64_t x_331; uint64_t x_332; uint64_t x_333; uint64_t x_334; lean_object* x_335; lean_object* x_336; +x_310 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 9); +x_311 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 10); +x_312 = lean_ctor_get_uint8(x_32, 0); +x_313 = lean_ctor_get_uint8(x_32, 1); +x_314 = lean_ctor_get_uint8(x_32, 2); +x_315 = lean_ctor_get_uint8(x_32, 3); +x_316 = lean_ctor_get_uint8(x_32, 4); +x_317 = lean_ctor_get_uint8(x_32, 5); +x_318 = lean_ctor_get_uint8(x_32, 6); +x_319 = lean_ctor_get_uint8(x_32, 7); +x_320 = lean_ctor_get_uint8(x_32, 8); +x_321 = lean_ctor_get_uint8(x_32, 10); +x_322 = lean_ctor_get_uint8(x_32, 11); +x_323 = lean_ctor_get_uint8(x_32, 12); +x_324 = lean_ctor_get_uint8(x_32, 13); +x_325 = lean_ctor_get_uint8(x_32, 14); +x_326 = lean_ctor_get_uint8(x_32, 15); +x_327 = lean_ctor_get_uint8(x_32, 16); +lean_dec(x_32); +x_328 = 1; +x_329 = lean_alloc_ctor(0, 0, 17); +lean_ctor_set_uint8(x_329, 0, x_312); +lean_ctor_set_uint8(x_329, 1, x_313); +lean_ctor_set_uint8(x_329, 2, x_314); +lean_ctor_set_uint8(x_329, 3, x_315); +lean_ctor_set_uint8(x_329, 4, x_316); +lean_ctor_set_uint8(x_329, 5, x_317); +lean_ctor_set_uint8(x_329, 6, x_318); +lean_ctor_set_uint8(x_329, 7, x_319); +lean_ctor_set_uint8(x_329, 8, x_320); +lean_ctor_set_uint8(x_329, 9, x_328); +lean_ctor_set_uint8(x_329, 10, x_321); +lean_ctor_set_uint8(x_329, 11, x_322); +lean_ctor_set_uint8(x_329, 12, x_323); +lean_ctor_set_uint8(x_329, 13, x_324); +lean_ctor_set_uint8(x_329, 14, x_325); +lean_ctor_set_uint8(x_329, 15, x_326); +lean_ctor_set_uint8(x_329, 16, x_327); +x_330 = 2; +x_331 = lean_uint64_shift_right(x_36, x_330); +x_332 = lean_uint64_shift_left(x_331, x_330); +x_333 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; +x_334 = lean_uint64_lor(x_332, x_333); +x_335 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_335, 0, x_329); +lean_ctor_set(x_335, 1, x_38); +lean_ctor_set(x_335, 2, x_39); +lean_ctor_set(x_335, 3, x_40); +lean_ctor_set(x_335, 4, x_41); +lean_ctor_set(x_335, 5, x_42); +lean_ctor_set(x_335, 6, x_43); +lean_ctor_set_uint64(x_335, sizeof(void*)*7, x_334); +lean_ctor_set_uint8(x_335, sizeof(void*)*7 + 8, x_37); +lean_ctor_set_uint8(x_335, sizeof(void*)*7 + 9, x_310); +lean_ctor_set_uint8(x_335, sizeof(void*)*7 + 10, x_311); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_4); +x_336 = l_Lean_Meta_isExprDefEq(x_4, x_35, x_335, x_17, x_18, x_19, x_20); +if (lean_obj_tag(x_336) == 0) +{ +lean_object* x_337; uint8_t x_338; +x_337 = lean_ctor_get(x_336, 0); +lean_inc(x_337); +x_338 = lean_unbox(x_337); +lean_dec(x_337); +if (x_338 == 0) +{ +lean_object* x_339; lean_object* x_340; +lean_free_object(x_22); +lean_dec(x_34); +x_339 = lean_ctor_get(x_336, 1); +lean_inc(x_339); +lean_dec(x_336); +lean_inc(x_6); +x_340 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_340, 0, x_6); +x_25 = x_340; +x_26 = x_339; +goto block_31; +} +else +{ +lean_object* x_341; lean_object* x_342; +x_341 = lean_ctor_get(x_336, 1); +lean_inc(x_341); +lean_dec(x_336); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_34); +lean_inc(x_2); +x_342 = l_Lean_Meta_isExprDefEq(x_2, x_34, x_16, x_17, x_18, x_19, x_341); +if (lean_obj_tag(x_342) == 0) +{ +lean_object* x_343; uint8_t x_344; +x_343 = lean_ctor_get(x_342, 0); +lean_inc(x_343); +x_344 = lean_unbox(x_343); +lean_dec(x_343); +if (x_344 == 0) +{ +lean_object* x_345; lean_object* x_346; lean_object* x_347; +lean_free_object(x_22); +x_345 = lean_ctor_get(x_342, 1); +lean_inc(x_345); +lean_dec(x_342); +x_346 = lean_box(0); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_1); +lean_inc(x_2); +lean_inc(x_6); +x_347 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2(x_3, x_6, x_2, x_34, x_1, x_346, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_345); +if (lean_obj_tag(x_347) == 0) +{ +lean_object* x_348; lean_object* x_349; +x_348 = lean_ctor_get(x_347, 0); +lean_inc(x_348); +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +lean_dec(x_347); +x_25 = x_348; +x_26 = x_349; +goto block_31; +} +else +{ +lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_dec(x_24); -x_8 = x_22; -x_9 = x_28; -x_10 = lean_box(0); -x_19 = x_25; +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_350 = lean_ctor_get(x_347, 0); +lean_inc(x_350); +x_351 = lean_ctor_get(x_347, 1); +lean_inc(x_351); +if (lean_is_exclusive(x_347)) { + lean_ctor_release(x_347, 0); + lean_ctor_release(x_347, 1); + x_352 = x_347; +} else { + lean_dec_ref(x_347); + x_352 = lean_box(0); +} +if (lean_is_scalar(x_352)) { + x_353 = lean_alloc_ctor(1, 2, 0); +} else { + x_353 = x_352; +} +lean_ctor_set(x_353, 0, x_350); +lean_ctor_set(x_353, 1, x_351); +return x_353; +} +} +else +{ +lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; lean_object* x_363; lean_object* x_364; lean_object* x_365; uint8_t x_366; lean_object* x_367; lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_object* x_376; lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; lean_object* x_386; lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; lean_object* x_391; lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; lean_object* x_398; uint8_t x_399; +x_354 = lean_ctor_get(x_342, 1); +lean_inc(x_354); +lean_dec(x_342); +x_355 = lean_st_ref_take(x_12, x_354); +x_356 = lean_ctor_get(x_355, 0); +lean_inc(x_356); +x_357 = lean_ctor_get(x_356, 1); +lean_inc(x_357); +x_358 = lean_ctor_get(x_355, 1); +lean_inc(x_358); +if (lean_is_exclusive(x_355)) { + lean_ctor_release(x_355, 0); + lean_ctor_release(x_355, 1); + x_359 = x_355; +} else { + lean_dec_ref(x_355); + x_359 = lean_box(0); +} +x_360 = lean_ctor_get(x_356, 0); +lean_inc(x_360); +x_361 = lean_ctor_get(x_356, 2); +lean_inc(x_361); +x_362 = lean_ctor_get(x_356, 3); +lean_inc(x_362); +x_363 = lean_ctor_get(x_356, 4); +lean_inc(x_363); +x_364 = lean_ctor_get(x_356, 5); +lean_inc(x_364); +x_365 = lean_ctor_get(x_356, 6); +lean_inc(x_365); +x_366 = lean_ctor_get_uint8(x_356, sizeof(void*)*25); +x_367 = lean_ctor_get(x_356, 7); +lean_inc(x_367); +x_368 = lean_ctor_get(x_356, 8); +lean_inc(x_368); +x_369 = lean_ctor_get(x_356, 9); +lean_inc(x_369); +x_370 = lean_ctor_get(x_356, 10); +lean_inc(x_370); +x_371 = lean_ctor_get(x_356, 11); +lean_inc(x_371); +x_372 = lean_ctor_get(x_356, 12); +lean_inc(x_372); +x_373 = lean_ctor_get(x_356, 13); +lean_inc(x_373); +x_374 = lean_ctor_get(x_356, 14); +lean_inc(x_374); +x_375 = lean_ctor_get(x_356, 15); +lean_inc(x_375); +x_376 = lean_ctor_get(x_356, 16); +lean_inc(x_376); +x_377 = lean_ctor_get(x_356, 17); +lean_inc(x_377); +x_378 = lean_ctor_get(x_356, 18); +lean_inc(x_378); +x_379 = lean_ctor_get(x_356, 19); +lean_inc(x_379); +x_380 = lean_ctor_get(x_356, 20); +lean_inc(x_380); +x_381 = lean_ctor_get(x_356, 21); +lean_inc(x_381); +x_382 = lean_ctor_get(x_356, 22); +lean_inc(x_382); +x_383 = lean_ctor_get(x_356, 23); +lean_inc(x_383); +x_384 = lean_ctor_get(x_356, 24); +lean_inc(x_384); +if (lean_is_exclusive(x_356)) { + lean_ctor_release(x_356, 0); + lean_ctor_release(x_356, 1); + lean_ctor_release(x_356, 2); + lean_ctor_release(x_356, 3); + lean_ctor_release(x_356, 4); + lean_ctor_release(x_356, 5); + lean_ctor_release(x_356, 6); + lean_ctor_release(x_356, 7); + lean_ctor_release(x_356, 8); + lean_ctor_release(x_356, 9); + lean_ctor_release(x_356, 10); + lean_ctor_release(x_356, 11); + lean_ctor_release(x_356, 12); + lean_ctor_release(x_356, 13); + lean_ctor_release(x_356, 14); + lean_ctor_release(x_356, 15); + lean_ctor_release(x_356, 16); + lean_ctor_release(x_356, 17); + lean_ctor_release(x_356, 18); + lean_ctor_release(x_356, 19); + lean_ctor_release(x_356, 20); + lean_ctor_release(x_356, 21); + lean_ctor_release(x_356, 22); + lean_ctor_release(x_356, 23); + lean_ctor_release(x_356, 24); + x_385 = x_356; +} else { + lean_dec_ref(x_356); + x_385 = lean_box(0); +} +x_386 = lean_ctor_get(x_357, 0); +lean_inc(x_386); +x_387 = lean_ctor_get(x_357, 1); +lean_inc(x_387); +x_388 = lean_ctor_get(x_357, 2); +lean_inc(x_388); +if (lean_is_exclusive(x_357)) { + lean_ctor_release(x_357, 0); + lean_ctor_release(x_357, 1); + lean_ctor_release(x_357, 2); + x_389 = x_357; +} else { + lean_dec_ref(x_357); + x_389 = lean_box(0); +} +lean_inc(x_34); +lean_inc(x_2); +x_390 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_387, x_2, x_34); +if (lean_is_scalar(x_389)) { + x_391 = lean_alloc_ctor(0, 3, 0); +} else { + x_391 = x_389; +} +lean_ctor_set(x_391, 0, x_386); +lean_ctor_set(x_391, 1, x_390); +lean_ctor_set(x_391, 2, x_388); +if (lean_is_scalar(x_385)) { + x_392 = lean_alloc_ctor(0, 25, 1); +} else { + x_392 = x_385; +} +lean_ctor_set(x_392, 0, x_360); +lean_ctor_set(x_392, 1, x_391); +lean_ctor_set(x_392, 2, x_361); +lean_ctor_set(x_392, 3, x_362); +lean_ctor_set(x_392, 4, x_363); +lean_ctor_set(x_392, 5, x_364); +lean_ctor_set(x_392, 6, x_365); +lean_ctor_set(x_392, 7, x_367); +lean_ctor_set(x_392, 8, x_368); +lean_ctor_set(x_392, 9, x_369); +lean_ctor_set(x_392, 10, x_370); +lean_ctor_set(x_392, 11, x_371); +lean_ctor_set(x_392, 12, x_372); +lean_ctor_set(x_392, 13, x_373); +lean_ctor_set(x_392, 14, x_374); +lean_ctor_set(x_392, 15, x_375); +lean_ctor_set(x_392, 16, x_376); +lean_ctor_set(x_392, 17, x_377); +lean_ctor_set(x_392, 18, x_378); +lean_ctor_set(x_392, 19, x_379); +lean_ctor_set(x_392, 20, x_380); +lean_ctor_set(x_392, 21, x_381); +lean_ctor_set(x_392, 22, x_382); +lean_ctor_set(x_392, 23, x_383); +lean_ctor_set(x_392, 24, x_384); +lean_ctor_set_uint8(x_392, sizeof(void*)*25, x_366); +x_393 = lean_st_ref_set(x_12, x_392, x_358); +x_394 = lean_ctor_get(x_393, 1); +lean_inc(x_394); +if (lean_is_exclusive(x_393)) { + lean_ctor_release(x_393, 0); + lean_ctor_release(x_393, 1); + x_395 = x_393; +} else { + lean_dec_ref(x_393); + x_395 = lean_box(0); +} +x_396 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_397 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_396, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_394); +x_398 = lean_ctor_get(x_397, 0); +lean_inc(x_398); +x_399 = lean_unbox(x_398); +lean_dec(x_398); +if (x_399 == 0) +{ +lean_object* x_400; lean_object* x_401; lean_object* x_402; lean_object* x_403; lean_object* x_404; +lean_dec(x_395); +lean_dec(x_359); +lean_free_object(x_22); +x_400 = lean_ctor_get(x_397, 1); +lean_inc(x_400); +lean_dec(x_397); +x_401 = lean_box(0); +x_402 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_401, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_400); +x_403 = lean_ctor_get(x_402, 0); +lean_inc(x_403); +x_404 = lean_ctor_get(x_402, 1); +lean_inc(x_404); +lean_dec(x_402); +x_25 = x_403; +x_26 = x_404; +goto block_31; +} +else +{ +lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; lean_object* x_413; lean_object* x_414; lean_object* x_415; lean_object* x_416; lean_object* x_417; lean_object* x_418; lean_object* x_419; lean_object* x_420; +x_405 = lean_ctor_get(x_397, 1); +lean_inc(x_405); +if (lean_is_exclusive(x_397)) { + lean_ctor_release(x_397, 0); + lean_ctor_release(x_397, 1); + x_406 = x_397; +} else { + lean_dec_ref(x_397); + x_406 = lean_box(0); +} +lean_inc(x_2); +x_407 = l_Lean_MessageData_ofExpr(x_2); +x_408 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_406)) { + x_409 = lean_alloc_ctor(7, 2, 0); +} else { + x_409 = x_406; + lean_ctor_set_tag(x_409, 7); +} +lean_ctor_set(x_409, 0, x_408); +lean_ctor_set(x_409, 1, x_407); +x_410 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +if (lean_is_scalar(x_395)) { + x_411 = lean_alloc_ctor(7, 2, 0); +} else { + x_411 = x_395; + lean_ctor_set_tag(x_411, 7); +} +lean_ctor_set(x_411, 0, x_409); +lean_ctor_set(x_411, 1, x_410); +lean_inc(x_34); +x_412 = l_Lean_MessageData_ofExpr(x_34); +if (lean_is_scalar(x_359)) { + x_413 = lean_alloc_ctor(7, 2, 0); +} else { + x_413 = x_359; + lean_ctor_set_tag(x_413, 7); +} +lean_ctor_set(x_413, 0, x_411); +lean_ctor_set(x_413, 1, x_412); +x_414 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +lean_ctor_set_tag(x_22, 7); +lean_ctor_set(x_22, 1, x_414); +lean_ctor_set(x_22, 0, x_413); +x_415 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_396, x_22, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_405); +x_416 = lean_ctor_get(x_415, 0); +lean_inc(x_416); +x_417 = lean_ctor_get(x_415, 1); +lean_inc(x_417); +lean_dec(x_415); +x_418 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_34, x_416, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_417); +lean_dec(x_416); +x_419 = lean_ctor_get(x_418, 0); +lean_inc(x_419); +x_420 = lean_ctor_get(x_418, 1); +lean_inc(x_420); +lean_dec(x_418); +x_25 = x_419; +x_26 = x_420; +goto block_31; +} +} +} +else +{ +lean_object* x_421; lean_object* x_422; lean_object* x_423; lean_object* x_424; +lean_free_object(x_22); +lean_dec(x_34); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_421 = lean_ctor_get(x_342, 0); +lean_inc(x_421); +x_422 = lean_ctor_get(x_342, 1); +lean_inc(x_422); +if (lean_is_exclusive(x_342)) { + lean_ctor_release(x_342, 0); + lean_ctor_release(x_342, 1); + x_423 = x_342; +} else { + lean_dec_ref(x_342); + x_423 = lean_box(0); +} +if (lean_is_scalar(x_423)) { + x_424 = lean_alloc_ctor(1, 2, 0); +} else { + x_424 = x_423; +} +lean_ctor_set(x_424, 0, x_421); +lean_ctor_set(x_424, 1, x_422); +return x_424; +} +} +} +else +{ +lean_object* x_425; lean_object* x_426; lean_object* x_427; lean_object* x_428; +lean_free_object(x_22); +lean_dec(x_34); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_425 = lean_ctor_get(x_336, 0); +lean_inc(x_425); +x_426 = lean_ctor_get(x_336, 1); +lean_inc(x_426); +if (lean_is_exclusive(x_336)) { + lean_ctor_release(x_336, 0); + lean_ctor_release(x_336, 1); + x_427 = x_336; +} else { + lean_dec_ref(x_336); + x_427 = lean_box(0); +} +if (lean_is_scalar(x_427)) { + x_428 = lean_alloc_ctor(1, 2, 0); +} else { + x_428 = x_427; +} +lean_ctor_set(x_428, 0, x_425); +lean_ctor_set(x_428, 1, x_426); +return x_428; +} +} +} +else +{ +lean_object* x_429; lean_object* x_430; uint64_t x_431; uint8_t x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; lean_object* x_436; lean_object* x_437; lean_object* x_438; uint8_t x_439; uint8_t x_440; uint8_t x_441; uint8_t x_442; uint8_t x_443; uint8_t x_444; uint8_t x_445; uint8_t x_446; uint8_t x_447; uint8_t x_448; uint8_t x_449; uint8_t x_450; uint8_t x_451; uint8_t x_452; uint8_t x_453; uint8_t x_454; uint8_t x_455; uint8_t x_456; lean_object* x_457; uint8_t x_458; lean_object* x_459; uint64_t x_460; uint64_t x_461; uint64_t x_462; uint64_t x_463; uint64_t x_464; lean_object* x_465; lean_object* x_466; +x_429 = lean_ctor_get(x_22, 0); +x_430 = lean_ctor_get(x_22, 1); +lean_inc(x_430); +lean_inc(x_429); +lean_dec(x_22); +x_431 = lean_ctor_get_uint64(x_16, sizeof(void*)*7); +x_432 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 8); +x_433 = lean_ctor_get(x_16, 1); +lean_inc(x_433); +x_434 = lean_ctor_get(x_16, 2); +lean_inc(x_434); +x_435 = lean_ctor_get(x_16, 3); +lean_inc(x_435); +x_436 = lean_ctor_get(x_16, 4); +lean_inc(x_436); +x_437 = lean_ctor_get(x_16, 5); +lean_inc(x_437); +x_438 = lean_ctor_get(x_16, 6); +lean_inc(x_438); +x_439 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 9); +x_440 = lean_ctor_get_uint8(x_16, sizeof(void*)*7 + 10); +x_441 = lean_ctor_get_uint8(x_32, 0); +x_442 = lean_ctor_get_uint8(x_32, 1); +x_443 = lean_ctor_get_uint8(x_32, 2); +x_444 = lean_ctor_get_uint8(x_32, 3); +x_445 = lean_ctor_get_uint8(x_32, 4); +x_446 = lean_ctor_get_uint8(x_32, 5); +x_447 = lean_ctor_get_uint8(x_32, 6); +x_448 = lean_ctor_get_uint8(x_32, 7); +x_449 = lean_ctor_get_uint8(x_32, 8); +x_450 = lean_ctor_get_uint8(x_32, 10); +x_451 = lean_ctor_get_uint8(x_32, 11); +x_452 = lean_ctor_get_uint8(x_32, 12); +x_453 = lean_ctor_get_uint8(x_32, 13); +x_454 = lean_ctor_get_uint8(x_32, 14); +x_455 = lean_ctor_get_uint8(x_32, 15); +x_456 = lean_ctor_get_uint8(x_32, 16); +if (lean_is_exclusive(x_32)) { + x_457 = x_32; +} else { + lean_dec_ref(x_32); + x_457 = lean_box(0); +} +x_458 = 1; +if (lean_is_scalar(x_457)) { + x_459 = lean_alloc_ctor(0, 0, 17); +} else { + x_459 = x_457; +} +lean_ctor_set_uint8(x_459, 0, x_441); +lean_ctor_set_uint8(x_459, 1, x_442); +lean_ctor_set_uint8(x_459, 2, x_443); +lean_ctor_set_uint8(x_459, 3, x_444); +lean_ctor_set_uint8(x_459, 4, x_445); +lean_ctor_set_uint8(x_459, 5, x_446); +lean_ctor_set_uint8(x_459, 6, x_447); +lean_ctor_set_uint8(x_459, 7, x_448); +lean_ctor_set_uint8(x_459, 8, x_449); +lean_ctor_set_uint8(x_459, 9, x_458); +lean_ctor_set_uint8(x_459, 10, x_450); +lean_ctor_set_uint8(x_459, 11, x_451); +lean_ctor_set_uint8(x_459, 12, x_452); +lean_ctor_set_uint8(x_459, 13, x_453); +lean_ctor_set_uint8(x_459, 14, x_454); +lean_ctor_set_uint8(x_459, 15, x_455); +lean_ctor_set_uint8(x_459, 16, x_456); +x_460 = 2; +x_461 = lean_uint64_shift_right(x_431, x_460); +x_462 = lean_uint64_shift_left(x_461, x_460); +x_463 = l___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___lambda__2___closed__1; +x_464 = lean_uint64_lor(x_462, x_463); +x_465 = lean_alloc_ctor(0, 7, 11); +lean_ctor_set(x_465, 0, x_459); +lean_ctor_set(x_465, 1, x_433); +lean_ctor_set(x_465, 2, x_434); +lean_ctor_set(x_465, 3, x_435); +lean_ctor_set(x_465, 4, x_436); +lean_ctor_set(x_465, 5, x_437); +lean_ctor_set(x_465, 6, x_438); +lean_ctor_set_uint64(x_465, sizeof(void*)*7, x_464); +lean_ctor_set_uint8(x_465, sizeof(void*)*7 + 8, x_432); +lean_ctor_set_uint8(x_465, sizeof(void*)*7 + 9, x_439); +lean_ctor_set_uint8(x_465, sizeof(void*)*7 + 10, x_440); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_4); +x_466 = l_Lean_Meta_isExprDefEq(x_4, x_430, x_465, x_17, x_18, x_19, x_20); +if (lean_obj_tag(x_466) == 0) +{ +lean_object* x_467; uint8_t x_468; +x_467 = lean_ctor_get(x_466, 0); +lean_inc(x_467); +x_468 = lean_unbox(x_467); +lean_dec(x_467); +if (x_468 == 0) +{ +lean_object* x_469; lean_object* x_470; +lean_dec(x_429); +x_469 = lean_ctor_get(x_466, 1); +lean_inc(x_469); +lean_dec(x_466); +lean_inc(x_6); +x_470 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_470, 0, x_6); +x_25 = x_470; +x_26 = x_469; +goto block_31; +} +else +{ +lean_object* x_471; lean_object* x_472; +x_471 = lean_ctor_get(x_466, 1); +lean_inc(x_471); +lean_dec(x_466); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_429); +lean_inc(x_2); +x_472 = l_Lean_Meta_isExprDefEq(x_2, x_429, x_16, x_17, x_18, x_19, x_471); +if (lean_obj_tag(x_472) == 0) +{ +lean_object* x_473; uint8_t x_474; +x_473 = lean_ctor_get(x_472, 0); +lean_inc(x_473); +x_474 = lean_unbox(x_473); +lean_dec(x_473); +if (x_474 == 0) +{ +lean_object* x_475; lean_object* x_476; lean_object* x_477; +x_475 = lean_ctor_get(x_472, 1); +lean_inc(x_475); +lean_dec(x_472); +x_476 = lean_box(0); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_1); +lean_inc(x_2); +lean_inc(x_6); +x_477 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2(x_3, x_6, x_2, x_429, x_1, x_476, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_475); +if (lean_obj_tag(x_477) == 0) +{ +lean_object* x_478; lean_object* x_479; +x_478 = lean_ctor_get(x_477, 0); +lean_inc(x_478); +x_479 = lean_ctor_get(x_477, 1); +lean_inc(x_479); +lean_dec(x_477); +x_25 = x_478; +x_26 = x_479; +goto block_31; +} +else +{ +lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_480 = lean_ctor_get(x_477, 0); +lean_inc(x_480); +x_481 = lean_ctor_get(x_477, 1); +lean_inc(x_481); +if (lean_is_exclusive(x_477)) { + lean_ctor_release(x_477, 0); + lean_ctor_release(x_477, 1); + x_482 = x_477; +} else { + lean_dec_ref(x_477); + x_482 = lean_box(0); +} +if (lean_is_scalar(x_482)) { + x_483 = lean_alloc_ctor(1, 2, 0); +} else { + x_483 = x_482; +} +lean_ctor_set(x_483, 0, x_480); +lean_ctor_set(x_483, 1, x_481); +return x_483; +} +} +else +{ +lean_object* x_484; lean_object* x_485; lean_object* x_486; lean_object* x_487; lean_object* x_488; lean_object* x_489; lean_object* x_490; lean_object* x_491; lean_object* x_492; lean_object* x_493; lean_object* x_494; lean_object* x_495; uint8_t x_496; lean_object* x_497; lean_object* x_498; lean_object* x_499; lean_object* x_500; lean_object* x_501; lean_object* x_502; lean_object* x_503; lean_object* x_504; lean_object* x_505; lean_object* x_506; lean_object* x_507; lean_object* x_508; lean_object* x_509; lean_object* x_510; lean_object* x_511; lean_object* x_512; lean_object* x_513; lean_object* x_514; lean_object* x_515; lean_object* x_516; lean_object* x_517; lean_object* x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; lean_object* x_522; lean_object* x_523; lean_object* x_524; lean_object* x_525; lean_object* x_526; lean_object* x_527; lean_object* x_528; uint8_t x_529; +x_484 = lean_ctor_get(x_472, 1); +lean_inc(x_484); +lean_dec(x_472); +x_485 = lean_st_ref_take(x_12, x_484); +x_486 = lean_ctor_get(x_485, 0); +lean_inc(x_486); +x_487 = lean_ctor_get(x_486, 1); +lean_inc(x_487); +x_488 = lean_ctor_get(x_485, 1); +lean_inc(x_488); +if (lean_is_exclusive(x_485)) { + lean_ctor_release(x_485, 0); + lean_ctor_release(x_485, 1); + x_489 = x_485; +} else { + lean_dec_ref(x_485); + x_489 = lean_box(0); +} +x_490 = lean_ctor_get(x_486, 0); +lean_inc(x_490); +x_491 = lean_ctor_get(x_486, 2); +lean_inc(x_491); +x_492 = lean_ctor_get(x_486, 3); +lean_inc(x_492); +x_493 = lean_ctor_get(x_486, 4); +lean_inc(x_493); +x_494 = lean_ctor_get(x_486, 5); +lean_inc(x_494); +x_495 = lean_ctor_get(x_486, 6); +lean_inc(x_495); +x_496 = lean_ctor_get_uint8(x_486, sizeof(void*)*25); +x_497 = lean_ctor_get(x_486, 7); +lean_inc(x_497); +x_498 = lean_ctor_get(x_486, 8); +lean_inc(x_498); +x_499 = lean_ctor_get(x_486, 9); +lean_inc(x_499); +x_500 = lean_ctor_get(x_486, 10); +lean_inc(x_500); +x_501 = lean_ctor_get(x_486, 11); +lean_inc(x_501); +x_502 = lean_ctor_get(x_486, 12); +lean_inc(x_502); +x_503 = lean_ctor_get(x_486, 13); +lean_inc(x_503); +x_504 = lean_ctor_get(x_486, 14); +lean_inc(x_504); +x_505 = lean_ctor_get(x_486, 15); +lean_inc(x_505); +x_506 = lean_ctor_get(x_486, 16); +lean_inc(x_506); +x_507 = lean_ctor_get(x_486, 17); +lean_inc(x_507); +x_508 = lean_ctor_get(x_486, 18); +lean_inc(x_508); +x_509 = lean_ctor_get(x_486, 19); +lean_inc(x_509); +x_510 = lean_ctor_get(x_486, 20); +lean_inc(x_510); +x_511 = lean_ctor_get(x_486, 21); +lean_inc(x_511); +x_512 = lean_ctor_get(x_486, 22); +lean_inc(x_512); +x_513 = lean_ctor_get(x_486, 23); +lean_inc(x_513); +x_514 = lean_ctor_get(x_486, 24); +lean_inc(x_514); +if (lean_is_exclusive(x_486)) { + lean_ctor_release(x_486, 0); + lean_ctor_release(x_486, 1); + lean_ctor_release(x_486, 2); + lean_ctor_release(x_486, 3); + lean_ctor_release(x_486, 4); + lean_ctor_release(x_486, 5); + lean_ctor_release(x_486, 6); + lean_ctor_release(x_486, 7); + lean_ctor_release(x_486, 8); + lean_ctor_release(x_486, 9); + lean_ctor_release(x_486, 10); + lean_ctor_release(x_486, 11); + lean_ctor_release(x_486, 12); + lean_ctor_release(x_486, 13); + lean_ctor_release(x_486, 14); + lean_ctor_release(x_486, 15); + lean_ctor_release(x_486, 16); + lean_ctor_release(x_486, 17); + lean_ctor_release(x_486, 18); + lean_ctor_release(x_486, 19); + lean_ctor_release(x_486, 20); + lean_ctor_release(x_486, 21); + lean_ctor_release(x_486, 22); + lean_ctor_release(x_486, 23); + lean_ctor_release(x_486, 24); + x_515 = x_486; +} else { + lean_dec_ref(x_486); + x_515 = lean_box(0); +} +x_516 = lean_ctor_get(x_487, 0); +lean_inc(x_516); +x_517 = lean_ctor_get(x_487, 1); +lean_inc(x_517); +x_518 = lean_ctor_get(x_487, 2); +lean_inc(x_518); +if (lean_is_exclusive(x_487)) { + lean_ctor_release(x_487, 0); + lean_ctor_release(x_487, 1); + lean_ctor_release(x_487, 2); + x_519 = x_487; +} else { + lean_dec_ref(x_487); + x_519 = lean_box(0); +} +lean_inc(x_429); +lean_inc(x_2); +x_520 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_517, x_2, x_429); +if (lean_is_scalar(x_519)) { + x_521 = lean_alloc_ctor(0, 3, 0); +} else { + x_521 = x_519; +} +lean_ctor_set(x_521, 0, x_516); +lean_ctor_set(x_521, 1, x_520); +lean_ctor_set(x_521, 2, x_518); +if (lean_is_scalar(x_515)) { + x_522 = lean_alloc_ctor(0, 25, 1); +} else { + x_522 = x_515; +} +lean_ctor_set(x_522, 0, x_490); +lean_ctor_set(x_522, 1, x_521); +lean_ctor_set(x_522, 2, x_491); +lean_ctor_set(x_522, 3, x_492); +lean_ctor_set(x_522, 4, x_493); +lean_ctor_set(x_522, 5, x_494); +lean_ctor_set(x_522, 6, x_495); +lean_ctor_set(x_522, 7, x_497); +lean_ctor_set(x_522, 8, x_498); +lean_ctor_set(x_522, 9, x_499); +lean_ctor_set(x_522, 10, x_500); +lean_ctor_set(x_522, 11, x_501); +lean_ctor_set(x_522, 12, x_502); +lean_ctor_set(x_522, 13, x_503); +lean_ctor_set(x_522, 14, x_504); +lean_ctor_set(x_522, 15, x_505); +lean_ctor_set(x_522, 16, x_506); +lean_ctor_set(x_522, 17, x_507); +lean_ctor_set(x_522, 18, x_508); +lean_ctor_set(x_522, 19, x_509); +lean_ctor_set(x_522, 20, x_510); +lean_ctor_set(x_522, 21, x_511); +lean_ctor_set(x_522, 22, x_512); +lean_ctor_set(x_522, 23, x_513); +lean_ctor_set(x_522, 24, x_514); +lean_ctor_set_uint8(x_522, sizeof(void*)*25, x_496); +x_523 = lean_st_ref_set(x_12, x_522, x_488); +x_524 = lean_ctor_get(x_523, 1); +lean_inc(x_524); +if (lean_is_exclusive(x_523)) { + lean_ctor_release(x_523, 0); + lean_ctor_release(x_523, 1); + x_525 = x_523; +} else { + lean_dec_ref(x_523); + x_525 = lean_box(0); +} +x_526 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__4; +x_527 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_526, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_524); +x_528 = lean_ctor_get(x_527, 0); +lean_inc(x_528); +x_529 = lean_unbox(x_528); +lean_dec(x_528); +if (x_529 == 0) +{ +lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_534; +lean_dec(x_525); +lean_dec(x_489); +x_530 = lean_ctor_get(x_527, 1); +lean_inc(x_530); +lean_dec(x_527); +x_531 = lean_box(0); +x_532 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_429, x_531, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_530); +x_533 = lean_ctor_get(x_532, 0); +lean_inc(x_533); +x_534 = lean_ctor_get(x_532, 1); +lean_inc(x_534); +lean_dec(x_532); +x_25 = x_533; +x_26 = x_534; +goto block_31; +} +else +{ +lean_object* x_535; lean_object* x_536; lean_object* x_537; lean_object* x_538; lean_object* x_539; lean_object* x_540; lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; lean_object* x_548; lean_object* x_549; lean_object* x_550; lean_object* x_551; +x_535 = lean_ctor_get(x_527, 1); +lean_inc(x_535); +if (lean_is_exclusive(x_527)) { + lean_ctor_release(x_527, 0); + lean_ctor_release(x_527, 1); + x_536 = x_527; +} else { + lean_dec_ref(x_527); + x_536 = lean_box(0); +} +lean_inc(x_2); +x_537 = l_Lean_MessageData_ofExpr(x_2); +x_538 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___closed__2; +if (lean_is_scalar(x_536)) { + x_539 = lean_alloc_ctor(7, 2, 0); +} else { + x_539 = x_536; + lean_ctor_set_tag(x_539, 7); +} +lean_ctor_set(x_539, 0, x_538); +lean_ctor_set(x_539, 1, x_537); +x_540 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__8; +if (lean_is_scalar(x_525)) { + x_541 = lean_alloc_ctor(7, 2, 0); +} else { + x_541 = x_525; + lean_ctor_set_tag(x_541, 7); +} +lean_ctor_set(x_541, 0, x_539); +lean_ctor_set(x_541, 1, x_540); +lean_inc(x_429); +x_542 = l_Lean_MessageData_ofExpr(x_429); +if (lean_is_scalar(x_489)) { + x_543 = lean_alloc_ctor(7, 2, 0); +} else { + x_543 = x_489; + lean_ctor_set_tag(x_543, 7); +} +lean_ctor_set(x_543, 0, x_541); +lean_ctor_set(x_543, 1, x_542); +x_544 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +x_545 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_545, 0, x_543); +lean_ctor_set(x_545, 1, x_544); +x_546 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_526, x_545, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_535); +x_547 = lean_ctor_get(x_546, 0); +lean_inc(x_547); +x_548 = lean_ctor_get(x_546, 1); +lean_inc(x_548); +lean_dec(x_546); +x_549 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__1(x_429, x_547, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_548); +lean_dec(x_547); +x_550 = lean_ctor_get(x_549, 0); +lean_inc(x_550); +x_551 = lean_ctor_get(x_549, 1); +lean_inc(x_551); +lean_dec(x_549); +x_25 = x_550; +x_26 = x_551; +goto block_31; +} +} +} +else +{ +lean_object* x_552; lean_object* x_553; lean_object* x_554; lean_object* x_555; +lean_dec(x_429); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_552 = lean_ctor_get(x_472, 0); +lean_inc(x_552); +x_553 = lean_ctor_get(x_472, 1); +lean_inc(x_553); +if (lean_is_exclusive(x_472)) { + lean_ctor_release(x_472, 0); + lean_ctor_release(x_472, 1); + x_554 = x_472; +} else { + lean_dec_ref(x_472); + x_554 = lean_box(0); +} +if (lean_is_scalar(x_554)) { + x_555 = lean_alloc_ctor(1, 2, 0); +} else { + x_555 = x_554; +} +lean_ctor_set(x_555, 0, x_552); +lean_ctor_set(x_555, 1, x_553); +return x_555; +} +} +} +else +{ +lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; +lean_dec(x_429); +lean_dec(x_24); +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_556 = lean_ctor_get(x_466, 0); +lean_inc(x_556); +x_557 = lean_ctor_get(x_466, 1); +lean_inc(x_557); +if (lean_is_exclusive(x_466)) { + lean_ctor_release(x_466, 0); + lean_ctor_release(x_466, 1); + x_558 = x_466; +} else { + lean_dec_ref(x_466); + x_558 = lean_box(0); +} +if (lean_is_scalar(x_558)) { + x_559 = lean_alloc_ctor(1, 2, 0); +} else { + x_559 = x_558; +} +lean_ctor_set(x_559, 0, x_556); +lean_ctor_set(x_559, 1, x_557); +return x_559; +} +} +block_31: +{ +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_27; lean_object* x_28; +lean_dec(x_23); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +lean_dec(x_25); +if (lean_is_scalar(x_24)) { + x_28 = lean_alloc_ctor(0, 2, 0); +} else { + x_28 = x_24; + lean_ctor_set_tag(x_28, 0); +} +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +else +{ +lean_object* x_29; +lean_dec(x_24); +x_29 = lean_ctor_get(x_25, 0); +lean_inc(x_29); +lean_dec(x_25); +x_9 = x_23; +x_10 = x_29; +x_11 = lean_box(0); +x_20 = x_26; goto _start; } } @@ -4986,136 +6100,143 @@ x_5 = l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_Canon_canonElemCore_ return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_14 = lean_st_ref_take(x_5, x_13); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_15, 1); +lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_15 = lean_st_ref_take(x_6, x_14); +x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); -x_17 = !lean_is_exclusive(x_14); -if (x_17 == 0) +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +x_18 = !lean_is_exclusive(x_15); +if (x_18 == 0) { -lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_18 = lean_ctor_get(x_14, 1); -x_19 = lean_ctor_get(x_14, 0); -lean_dec(x_19); -x_20 = !lean_is_exclusive(x_15); -if (x_20 == 0) +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_15, 1); +x_20 = lean_ctor_get(x_15, 0); +lean_dec(x_20); +x_21 = !lean_is_exclusive(x_16); +if (x_21 == 0) { -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_15, 1); -lean_dec(x_21); -x_22 = !lean_is_exclusive(x_16); -if (x_22 == 0) +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_16, 1); +lean_dec(x_22); +x_23 = !lean_is_exclusive(x_17); +if (x_23 == 0) { -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; -x_23 = lean_ctor_get(x_16, 0); -x_24 = lean_ctor_get(x_16, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; +x_24 = lean_ctor_get(x_17, 0); +x_25 = lean_ctor_get(x_17, 1); lean_inc(x_1); -lean_ctor_set_tag(x_14, 1); -lean_ctor_set(x_14, 1, x_2); -lean_ctor_set(x_14, 0, x_1); -x_25 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_23, x_3, x_14); +lean_ctor_set(x_15, 1, x_2); +lean_ctor_set(x_15, 0, x_1); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_15); +lean_ctor_set(x_26, 1, x_3); +x_27 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_24, x_4, x_26); lean_inc_n(x_1, 2); -x_26 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_24, x_1, x_1); -lean_ctor_set(x_16, 1, x_26); -lean_ctor_set(x_16, 0, x_25); -x_27 = lean_st_ref_set(x_5, x_15, x_18); -x_28 = !lean_is_exclusive(x_27); -if (x_28 == 0) +x_28 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_25, x_1, x_1); +lean_ctor_set(x_17, 1, x_28); +lean_ctor_set(x_17, 0, x_27); +x_29 = lean_st_ref_set(x_6, x_16, x_19); +x_30 = !lean_is_exclusive(x_29); +if (x_30 == 0) { -lean_object* x_29; -x_29 = lean_ctor_get(x_27, 0); -lean_dec(x_29); -lean_ctor_set(x_27, 0, x_1); -return x_27; +lean_object* x_31; +x_31 = lean_ctor_get(x_29, 0); +lean_dec(x_31); +lean_ctor_set(x_29, 0, x_1); +return x_29; } else { -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_27, 1); -lean_inc(x_30); -lean_dec(x_27); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_1); -lean_ctor_set(x_31, 1, x_30); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_32 = lean_ctor_get(x_16, 0); -x_33 = lean_ctor_get(x_16, 1); -x_34 = lean_ctor_get(x_16, 2); -lean_inc(x_34); -lean_inc(x_33); +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_29, 1); lean_inc(x_32); -lean_dec(x_16); -lean_inc(x_1); -lean_ctor_set_tag(x_14, 1); -lean_ctor_set(x_14, 1, x_2); -lean_ctor_set(x_14, 0, x_1); -x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_32, x_3, x_14); -lean_inc_n(x_1, 2); -x_36 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_33, x_1, x_1); -x_37 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -lean_ctor_set(x_37, 2, x_34); -lean_ctor_set(x_15, 1, x_37); -x_38 = lean_st_ref_set(x_5, x_15, x_18); -x_39 = lean_ctor_get(x_38, 1); -lean_inc(x_39); -if (lean_is_exclusive(x_38)) { - lean_ctor_release(x_38, 0); - lean_ctor_release(x_38, 1); - x_40 = x_38; -} else { - lean_dec_ref(x_38); - x_40 = lean_box(0); -} -if (lean_is_scalar(x_40)) { - x_41 = lean_alloc_ctor(0, 2, 0); -} else { - x_41 = x_40; -} -lean_ctor_set(x_41, 0, x_1); -lean_ctor_set(x_41, 1, x_39); -return x_41; +lean_dec(x_29); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_1); +lean_ctor_set(x_33, 1, x_32); +return x_33; } } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_42 = lean_ctor_get(x_15, 0); -x_43 = lean_ctor_get(x_15, 2); -x_44 = lean_ctor_get(x_15, 3); -x_45 = lean_ctor_get(x_15, 4); -x_46 = lean_ctor_get(x_15, 5); -x_47 = lean_ctor_get(x_15, 6); -x_48 = lean_ctor_get_uint8(x_15, sizeof(void*)*25); -x_49 = lean_ctor_get(x_15, 7); -x_50 = lean_ctor_get(x_15, 8); -x_51 = lean_ctor_get(x_15, 9); -x_52 = lean_ctor_get(x_15, 10); -x_53 = lean_ctor_get(x_15, 11); -x_54 = lean_ctor_get(x_15, 12); -x_55 = lean_ctor_get(x_15, 13); -x_56 = lean_ctor_get(x_15, 14); -x_57 = lean_ctor_get(x_15, 15); -x_58 = lean_ctor_get(x_15, 16); -x_59 = lean_ctor_get(x_15, 17); -x_60 = lean_ctor_get(x_15, 18); -x_61 = lean_ctor_get(x_15, 19); -x_62 = lean_ctor_get(x_15, 20); -x_63 = lean_ctor_get(x_15, 21); -x_64 = lean_ctor_get(x_15, 22); -x_65 = lean_ctor_get(x_15, 23); -x_66 = lean_ctor_get(x_15, 24); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_34 = lean_ctor_get(x_17, 0); +x_35 = lean_ctor_get(x_17, 1); +x_36 = lean_ctor_get(x_17, 2); +lean_inc(x_36); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_17); +lean_inc(x_1); +lean_ctor_set(x_15, 1, x_2); +lean_ctor_set(x_15, 0, x_1); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_15); +lean_ctor_set(x_37, 1, x_3); +x_38 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_34, x_4, x_37); +lean_inc_n(x_1, 2); +x_39 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_35, x_1, x_1); +x_40 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +lean_ctor_set(x_40, 2, x_36); +lean_ctor_set(x_16, 1, x_40); +x_41 = lean_st_ref_set(x_6, x_16, x_19); +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_43 = x_41; +} else { + lean_dec_ref(x_41); + x_43 = lean_box(0); +} +if (lean_is_scalar(x_43)) { + x_44 = lean_alloc_ctor(0, 2, 0); +} else { + x_44 = x_43; +} +lean_ctor_set(x_44, 0, x_1); +lean_ctor_set(x_44, 1, x_42); +return x_44; +} +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_45 = lean_ctor_get(x_16, 0); +x_46 = lean_ctor_get(x_16, 2); +x_47 = lean_ctor_get(x_16, 3); +x_48 = lean_ctor_get(x_16, 4); +x_49 = lean_ctor_get(x_16, 5); +x_50 = lean_ctor_get(x_16, 6); +x_51 = lean_ctor_get_uint8(x_16, sizeof(void*)*25); +x_52 = lean_ctor_get(x_16, 7); +x_53 = lean_ctor_get(x_16, 8); +x_54 = lean_ctor_get(x_16, 9); +x_55 = lean_ctor_get(x_16, 10); +x_56 = lean_ctor_get(x_16, 11); +x_57 = lean_ctor_get(x_16, 12); +x_58 = lean_ctor_get(x_16, 13); +x_59 = lean_ctor_get(x_16, 14); +x_60 = lean_ctor_get(x_16, 15); +x_61 = lean_ctor_get(x_16, 16); +x_62 = lean_ctor_get(x_16, 17); +x_63 = lean_ctor_get(x_16, 18); +x_64 = lean_ctor_get(x_16, 19); +x_65 = lean_ctor_get(x_16, 20); +x_66 = lean_ctor_get(x_16, 21); +x_67 = lean_ctor_get(x_16, 22); +x_68 = lean_ctor_get(x_16, 23); +x_69 = lean_ctor_get(x_16, 24); +lean_inc(x_69); +lean_inc(x_68); +lean_inc(x_67); lean_inc(x_66); lean_inc(x_65); lean_inc(x_64); @@ -5131,260 +6252,262 @@ lean_inc(x_55); lean_inc(x_54); lean_inc(x_53); lean_inc(x_52); -lean_inc(x_51); lean_inc(x_50); lean_inc(x_49); +lean_inc(x_48); lean_inc(x_47); lean_inc(x_46); lean_inc(x_45); -lean_inc(x_44); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_15); -x_67 = lean_ctor_get(x_16, 0); -lean_inc(x_67); -x_68 = lean_ctor_get(x_16, 1); -lean_inc(x_68); -x_69 = lean_ctor_get(x_16, 2); -lean_inc(x_69); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - lean_ctor_release(x_16, 1); - lean_ctor_release(x_16, 2); - x_70 = x_16; +lean_dec(x_16); +x_70 = lean_ctor_get(x_17, 0); +lean_inc(x_70); +x_71 = lean_ctor_get(x_17, 1); +lean_inc(x_71); +x_72 = lean_ctor_get(x_17, 2); +lean_inc(x_72); +if (lean_is_exclusive(x_17)) { + lean_ctor_release(x_17, 0); + lean_ctor_release(x_17, 1); + lean_ctor_release(x_17, 2); + x_73 = x_17; } else { - lean_dec_ref(x_16); - x_70 = lean_box(0); + lean_dec_ref(x_17); + x_73 = lean_box(0); } lean_inc(x_1); -lean_ctor_set_tag(x_14, 1); -lean_ctor_set(x_14, 1, x_2); -lean_ctor_set(x_14, 0, x_1); -x_71 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_67, x_3, x_14); +lean_ctor_set(x_15, 1, x_2); +lean_ctor_set(x_15, 0, x_1); +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_15); +lean_ctor_set(x_74, 1, x_3); +x_75 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_70, x_4, x_74); lean_inc_n(x_1, 2); -x_72 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_68, x_1, x_1); -if (lean_is_scalar(x_70)) { - x_73 = lean_alloc_ctor(0, 3, 0); +x_76 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_71, x_1, x_1); +if (lean_is_scalar(x_73)) { + x_77 = lean_alloc_ctor(0, 3, 0); } else { - x_73 = x_70; + x_77 = x_73; } -lean_ctor_set(x_73, 0, x_71); -lean_ctor_set(x_73, 1, x_72); -lean_ctor_set(x_73, 2, x_69); -x_74 = lean_alloc_ctor(0, 25, 1); -lean_ctor_set(x_74, 0, x_42); -lean_ctor_set(x_74, 1, x_73); -lean_ctor_set(x_74, 2, x_43); -lean_ctor_set(x_74, 3, x_44); -lean_ctor_set(x_74, 4, x_45); -lean_ctor_set(x_74, 5, x_46); -lean_ctor_set(x_74, 6, x_47); -lean_ctor_set(x_74, 7, x_49); -lean_ctor_set(x_74, 8, x_50); -lean_ctor_set(x_74, 9, x_51); -lean_ctor_set(x_74, 10, x_52); -lean_ctor_set(x_74, 11, x_53); -lean_ctor_set(x_74, 12, x_54); -lean_ctor_set(x_74, 13, x_55); -lean_ctor_set(x_74, 14, x_56); -lean_ctor_set(x_74, 15, x_57); -lean_ctor_set(x_74, 16, x_58); -lean_ctor_set(x_74, 17, x_59); -lean_ctor_set(x_74, 18, x_60); -lean_ctor_set(x_74, 19, x_61); -lean_ctor_set(x_74, 20, x_62); -lean_ctor_set(x_74, 21, x_63); -lean_ctor_set(x_74, 22, x_64); -lean_ctor_set(x_74, 23, x_65); -lean_ctor_set(x_74, 24, x_66); -lean_ctor_set_uint8(x_74, sizeof(void*)*25, x_48); -x_75 = lean_st_ref_set(x_5, x_74, x_18); -x_76 = lean_ctor_get(x_75, 1); -lean_inc(x_76); -if (lean_is_exclusive(x_75)) { - lean_ctor_release(x_75, 0); - lean_ctor_release(x_75, 1); - x_77 = x_75; +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +lean_ctor_set(x_77, 2, x_72); +x_78 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_78, 0, x_45); +lean_ctor_set(x_78, 1, x_77); +lean_ctor_set(x_78, 2, x_46); +lean_ctor_set(x_78, 3, x_47); +lean_ctor_set(x_78, 4, x_48); +lean_ctor_set(x_78, 5, x_49); +lean_ctor_set(x_78, 6, x_50); +lean_ctor_set(x_78, 7, x_52); +lean_ctor_set(x_78, 8, x_53); +lean_ctor_set(x_78, 9, x_54); +lean_ctor_set(x_78, 10, x_55); +lean_ctor_set(x_78, 11, x_56); +lean_ctor_set(x_78, 12, x_57); +lean_ctor_set(x_78, 13, x_58); +lean_ctor_set(x_78, 14, x_59); +lean_ctor_set(x_78, 15, x_60); +lean_ctor_set(x_78, 16, x_61); +lean_ctor_set(x_78, 17, x_62); +lean_ctor_set(x_78, 18, x_63); +lean_ctor_set(x_78, 19, x_64); +lean_ctor_set(x_78, 20, x_65); +lean_ctor_set(x_78, 21, x_66); +lean_ctor_set(x_78, 22, x_67); +lean_ctor_set(x_78, 23, x_68); +lean_ctor_set(x_78, 24, x_69); +lean_ctor_set_uint8(x_78, sizeof(void*)*25, x_51); +x_79 = lean_st_ref_set(x_6, x_78, x_19); +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +if (lean_is_exclusive(x_79)) { + lean_ctor_release(x_79, 0); + lean_ctor_release(x_79, 1); + x_81 = x_79; } else { - lean_dec_ref(x_75); - x_77 = lean_box(0); + lean_dec_ref(x_79); + x_81 = lean_box(0); } -if (lean_is_scalar(x_77)) { - x_78 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_81)) { + x_82 = lean_alloc_ctor(0, 2, 0); } else { - x_78 = x_77; + x_82 = x_81; } -lean_ctor_set(x_78, 0, x_1); -lean_ctor_set(x_78, 1, x_76); -return x_78; +lean_ctor_set(x_82, 0, x_1); +lean_ctor_set(x_82, 1, x_80); +return x_82; } } else { -lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; -x_79 = lean_ctor_get(x_14, 1); -lean_inc(x_79); -lean_dec(x_14); -x_80 = lean_ctor_get(x_15, 0); -lean_inc(x_80); -x_81 = lean_ctor_get(x_15, 2); -lean_inc(x_81); -x_82 = lean_ctor_get(x_15, 3); -lean_inc(x_82); -x_83 = lean_ctor_get(x_15, 4); +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; uint8_t x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_83 = lean_ctor_get(x_15, 1); lean_inc(x_83); -x_84 = lean_ctor_get(x_15, 5); +lean_dec(x_15); +x_84 = lean_ctor_get(x_16, 0); lean_inc(x_84); -x_85 = lean_ctor_get(x_15, 6); +x_85 = lean_ctor_get(x_16, 2); lean_inc(x_85); -x_86 = lean_ctor_get_uint8(x_15, sizeof(void*)*25); -x_87 = lean_ctor_get(x_15, 7); +x_86 = lean_ctor_get(x_16, 3); +lean_inc(x_86); +x_87 = lean_ctor_get(x_16, 4); lean_inc(x_87); -x_88 = lean_ctor_get(x_15, 8); +x_88 = lean_ctor_get(x_16, 5); lean_inc(x_88); -x_89 = lean_ctor_get(x_15, 9); +x_89 = lean_ctor_get(x_16, 6); lean_inc(x_89); -x_90 = lean_ctor_get(x_15, 10); -lean_inc(x_90); -x_91 = lean_ctor_get(x_15, 11); +x_90 = lean_ctor_get_uint8(x_16, sizeof(void*)*25); +x_91 = lean_ctor_get(x_16, 7); lean_inc(x_91); -x_92 = lean_ctor_get(x_15, 12); +x_92 = lean_ctor_get(x_16, 8); lean_inc(x_92); -x_93 = lean_ctor_get(x_15, 13); +x_93 = lean_ctor_get(x_16, 9); lean_inc(x_93); -x_94 = lean_ctor_get(x_15, 14); +x_94 = lean_ctor_get(x_16, 10); lean_inc(x_94); -x_95 = lean_ctor_get(x_15, 15); +x_95 = lean_ctor_get(x_16, 11); lean_inc(x_95); -x_96 = lean_ctor_get(x_15, 16); +x_96 = lean_ctor_get(x_16, 12); lean_inc(x_96); -x_97 = lean_ctor_get(x_15, 17); +x_97 = lean_ctor_get(x_16, 13); lean_inc(x_97); -x_98 = lean_ctor_get(x_15, 18); +x_98 = lean_ctor_get(x_16, 14); lean_inc(x_98); -x_99 = lean_ctor_get(x_15, 19); +x_99 = lean_ctor_get(x_16, 15); lean_inc(x_99); -x_100 = lean_ctor_get(x_15, 20); +x_100 = lean_ctor_get(x_16, 16); lean_inc(x_100); -x_101 = lean_ctor_get(x_15, 21); +x_101 = lean_ctor_get(x_16, 17); lean_inc(x_101); -x_102 = lean_ctor_get(x_15, 22); +x_102 = lean_ctor_get(x_16, 18); lean_inc(x_102); -x_103 = lean_ctor_get(x_15, 23); +x_103 = lean_ctor_get(x_16, 19); lean_inc(x_103); -x_104 = lean_ctor_get(x_15, 24); +x_104 = lean_ctor_get(x_16, 20); lean_inc(x_104); -if (lean_is_exclusive(x_15)) { - lean_ctor_release(x_15, 0); - lean_ctor_release(x_15, 1); - lean_ctor_release(x_15, 2); - lean_ctor_release(x_15, 3); - lean_ctor_release(x_15, 4); - lean_ctor_release(x_15, 5); - lean_ctor_release(x_15, 6); - lean_ctor_release(x_15, 7); - lean_ctor_release(x_15, 8); - lean_ctor_release(x_15, 9); - lean_ctor_release(x_15, 10); - lean_ctor_release(x_15, 11); - lean_ctor_release(x_15, 12); - lean_ctor_release(x_15, 13); - lean_ctor_release(x_15, 14); - lean_ctor_release(x_15, 15); - lean_ctor_release(x_15, 16); - lean_ctor_release(x_15, 17); - lean_ctor_release(x_15, 18); - lean_ctor_release(x_15, 19); - lean_ctor_release(x_15, 20); - lean_ctor_release(x_15, 21); - lean_ctor_release(x_15, 22); - lean_ctor_release(x_15, 23); - lean_ctor_release(x_15, 24); - x_105 = x_15; -} else { - lean_dec_ref(x_15); - x_105 = lean_box(0); -} -x_106 = lean_ctor_get(x_16, 0); +x_105 = lean_ctor_get(x_16, 21); +lean_inc(x_105); +x_106 = lean_ctor_get(x_16, 22); lean_inc(x_106); -x_107 = lean_ctor_get(x_16, 1); +x_107 = lean_ctor_get(x_16, 23); lean_inc(x_107); -x_108 = lean_ctor_get(x_16, 2); +x_108 = lean_ctor_get(x_16, 24); lean_inc(x_108); if (lean_is_exclusive(x_16)) { lean_ctor_release(x_16, 0); lean_ctor_release(x_16, 1); lean_ctor_release(x_16, 2); + lean_ctor_release(x_16, 3); + lean_ctor_release(x_16, 4); + lean_ctor_release(x_16, 5); + lean_ctor_release(x_16, 6); + lean_ctor_release(x_16, 7); + lean_ctor_release(x_16, 8); + lean_ctor_release(x_16, 9); + lean_ctor_release(x_16, 10); + lean_ctor_release(x_16, 11); + lean_ctor_release(x_16, 12); + lean_ctor_release(x_16, 13); + lean_ctor_release(x_16, 14); + lean_ctor_release(x_16, 15); + lean_ctor_release(x_16, 16); + lean_ctor_release(x_16, 17); + lean_ctor_release(x_16, 18); + lean_ctor_release(x_16, 19); + lean_ctor_release(x_16, 20); + lean_ctor_release(x_16, 21); + lean_ctor_release(x_16, 22); + lean_ctor_release(x_16, 23); + lean_ctor_release(x_16, 24); x_109 = x_16; } else { lean_dec_ref(x_16); x_109 = lean_box(0); } +x_110 = lean_ctor_get(x_17, 0); +lean_inc(x_110); +x_111 = lean_ctor_get(x_17, 1); +lean_inc(x_111); +x_112 = lean_ctor_get(x_17, 2); +lean_inc(x_112); +if (lean_is_exclusive(x_17)) { + lean_ctor_release(x_17, 0); + lean_ctor_release(x_17, 1); + lean_ctor_release(x_17, 2); + x_113 = x_17; +} else { + lean_dec_ref(x_17); + x_113 = lean_box(0); +} lean_inc(x_1); -x_110 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_110, 0, x_1); -lean_ctor_set(x_110, 1, x_2); -x_111 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_106, x_3, x_110); +x_114 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_114, 0, x_1); +lean_ctor_set(x_114, 1, x_2); +x_115 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_115, 0, x_114); +lean_ctor_set(x_115, 1, x_3); +x_116 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__9(x_110, x_4, x_115); lean_inc_n(x_1, 2); -x_112 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_107, x_1, x_1); +x_117 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_Canon_canonElemCore___spec__4(x_111, x_1, x_1); +if (lean_is_scalar(x_113)) { + x_118 = lean_alloc_ctor(0, 3, 0); +} else { + x_118 = x_113; +} +lean_ctor_set(x_118, 0, x_116); +lean_ctor_set(x_118, 1, x_117); +lean_ctor_set(x_118, 2, x_112); if (lean_is_scalar(x_109)) { - x_113 = lean_alloc_ctor(0, 3, 0); + x_119 = lean_alloc_ctor(0, 25, 1); } else { - x_113 = x_109; + x_119 = x_109; } -lean_ctor_set(x_113, 0, x_111); -lean_ctor_set(x_113, 1, x_112); -lean_ctor_set(x_113, 2, x_108); -if (lean_is_scalar(x_105)) { - x_114 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_119, 0, x_84); +lean_ctor_set(x_119, 1, x_118); +lean_ctor_set(x_119, 2, x_85); +lean_ctor_set(x_119, 3, x_86); +lean_ctor_set(x_119, 4, x_87); +lean_ctor_set(x_119, 5, x_88); +lean_ctor_set(x_119, 6, x_89); +lean_ctor_set(x_119, 7, x_91); +lean_ctor_set(x_119, 8, x_92); +lean_ctor_set(x_119, 9, x_93); +lean_ctor_set(x_119, 10, x_94); +lean_ctor_set(x_119, 11, x_95); +lean_ctor_set(x_119, 12, x_96); +lean_ctor_set(x_119, 13, x_97); +lean_ctor_set(x_119, 14, x_98); +lean_ctor_set(x_119, 15, x_99); +lean_ctor_set(x_119, 16, x_100); +lean_ctor_set(x_119, 17, x_101); +lean_ctor_set(x_119, 18, x_102); +lean_ctor_set(x_119, 19, x_103); +lean_ctor_set(x_119, 20, x_104); +lean_ctor_set(x_119, 21, x_105); +lean_ctor_set(x_119, 22, x_106); +lean_ctor_set(x_119, 23, x_107); +lean_ctor_set(x_119, 24, x_108); +lean_ctor_set_uint8(x_119, sizeof(void*)*25, x_90); +x_120 = lean_st_ref_set(x_6, x_119, x_83); +x_121 = lean_ctor_get(x_120, 1); +lean_inc(x_121); +if (lean_is_exclusive(x_120)) { + lean_ctor_release(x_120, 0); + lean_ctor_release(x_120, 1); + x_122 = x_120; } else { - x_114 = x_105; + lean_dec_ref(x_120); + x_122 = lean_box(0); } -lean_ctor_set(x_114, 0, x_80); -lean_ctor_set(x_114, 1, x_113); -lean_ctor_set(x_114, 2, x_81); -lean_ctor_set(x_114, 3, x_82); -lean_ctor_set(x_114, 4, x_83); -lean_ctor_set(x_114, 5, x_84); -lean_ctor_set(x_114, 6, x_85); -lean_ctor_set(x_114, 7, x_87); -lean_ctor_set(x_114, 8, x_88); -lean_ctor_set(x_114, 9, x_89); -lean_ctor_set(x_114, 10, x_90); -lean_ctor_set(x_114, 11, x_91); -lean_ctor_set(x_114, 12, x_92); -lean_ctor_set(x_114, 13, x_93); -lean_ctor_set(x_114, 14, x_94); -lean_ctor_set(x_114, 15, x_95); -lean_ctor_set(x_114, 16, x_96); -lean_ctor_set(x_114, 17, x_97); -lean_ctor_set(x_114, 18, x_98); -lean_ctor_set(x_114, 19, x_99); -lean_ctor_set(x_114, 20, x_100); -lean_ctor_set(x_114, 21, x_101); -lean_ctor_set(x_114, 22, x_102); -lean_ctor_set(x_114, 23, x_103); -lean_ctor_set(x_114, 24, x_104); -lean_ctor_set_uint8(x_114, sizeof(void*)*25, x_86); -x_115 = lean_st_ref_set(x_5, x_114, x_79); -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -if (lean_is_exclusive(x_115)) { - lean_ctor_release(x_115, 0); - lean_ctor_release(x_115, 1); - x_117 = x_115; +if (lean_is_scalar(x_122)) { + x_123 = lean_alloc_ctor(0, 2, 0); } else { - lean_dec_ref(x_115); - x_117 = lean_box(0); + x_123 = x_122; } -if (lean_is_scalar(x_117)) { - x_118 = lean_alloc_ctor(0, 2, 0); -} else { - x_118 = x_117; -} -lean_ctor_set(x_118, 0, x_1); -lean_ctor_set(x_118, 1, x_116); -return x_118; +lean_ctor_set(x_123, 0, x_1); +lean_ctor_set(x_123, 1, x_121); +return x_123; } } } @@ -5458,121 +6581,121 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { -lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__2; -x_17 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_16, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); -x_19 = lean_unbox(x_18); -lean_dec(x_18); -if (x_19 == 0) +lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_17 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__2; +x_18 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_17, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_unbox(x_19); +lean_dec(x_19); +if (x_20 == 0) { -lean_object* x_20; lean_object* x_21; lean_object* x_22; +lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); -x_20 = lean_ctor_get(x_17, 1); -lean_inc(x_20); -lean_dec(x_17); -x_21 = lean_box(0); -x_22 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_21, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_20); -return x_22; +x_21 = lean_ctor_get(x_18, 1); +lean_inc(x_21); +lean_dec(x_18); +x_22 = lean_box(0); +x_23 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_4, x_22, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_21); +return x_23; } else { -uint8_t x_23; -x_23 = !lean_is_exclusive(x_17); -if (x_23 == 0) +uint8_t x_24; +x_24 = !lean_is_exclusive(x_18); +if (x_24 == 0) { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_24 = lean_ctor_get(x_17, 1); -x_25 = lean_ctor_get(x_17, 0); -lean_dec(x_25); -x_26 = l_Lean_MessageData_ofExpr(x_4); -x_27 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__4; -lean_ctor_set_tag(x_17, 7); -lean_ctor_set(x_17, 1, x_26); -lean_ctor_set(x_17, 0, x_27); -x_28 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__6; -x_29 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_29, 0, x_17); -lean_ctor_set(x_29, 1, x_28); -x_30 = l___private_Init_Data_Repr_0__Nat_reprFast(x_5); -x_31 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_31, 0, x_30); -x_32 = l_Lean_MessageData_ofFormat(x_31); -x_33 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_33, 0, x_29); -lean_ctor_set(x_33, 1, x_32); -x_34 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__8; -x_35 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_35, 0, x_33); -lean_ctor_set(x_35, 1, x_34); +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_25 = lean_ctor_get(x_18, 1); +x_26 = lean_ctor_get(x_18, 0); +lean_dec(x_26); +x_27 = l_Lean_MessageData_ofExpr(x_5); +x_28 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__4; +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_27); +lean_ctor_set(x_18, 0, x_28); +x_29 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__6; +x_30 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_30, 0, x_18); +lean_ctor_set(x_30, 1, x_29); +x_31 = l___private_Init_Data_Repr_0__Nat_reprFast(x_6); +x_32 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_32, 0, x_31); +x_33 = l_Lean_MessageData_ofFormat(x_32); +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_30); +lean_ctor_set(x_34, 1, x_33); +x_35 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__8; +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); lean_inc(x_1); -x_36 = l_Lean_MessageData_ofExpr(x_1); -x_37 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -x_38 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_39 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_39, 0, x_37); -lean_ctor_set(x_39, 1, x_38); -x_40 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_16, x_39, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_24); -x_41 = lean_ctor_get(x_40, 0); -lean_inc(x_41); -x_42 = lean_ctor_get(x_40, 1); +x_37 = l_Lean_MessageData_ofExpr(x_1); +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +x_39 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +x_40 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +x_41 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_17, x_40, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_25); +x_42 = lean_ctor_get(x_41, 0); lean_inc(x_42); -lean_dec(x_40); -x_43 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_41, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_42); +x_43 = lean_ctor_get(x_41, 1); +lean_inc(x_43); lean_dec(x_41); -return x_43; +x_44 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_4, x_42, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_43); +lean_dec(x_42); +return x_44; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_44 = lean_ctor_get(x_17, 1); -lean_inc(x_44); -lean_dec(x_17); -x_45 = l_Lean_MessageData_ofExpr(x_4); -x_46 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__4; -x_47 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_47, 0, x_46); -lean_ctor_set(x_47, 1, x_45); -x_48 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__6; -x_49 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -x_50 = l___private_Init_Data_Repr_0__Nat_reprFast(x_5); -x_51 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_51, 0, x_50); -x_52 = l_Lean_MessageData_ofFormat(x_51); -x_53 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_53, 0, x_49); -lean_ctor_set(x_53, 1, x_52); -x_54 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__8; -x_55 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_55, 0, x_53); -lean_ctor_set(x_55, 1, x_54); +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_45 = lean_ctor_get(x_18, 1); +lean_inc(x_45); +lean_dec(x_18); +x_46 = l_Lean_MessageData_ofExpr(x_5); +x_47 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__4; +x_48 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_46); +x_49 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__6; +x_50 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +x_51 = l___private_Init_Data_Repr_0__Nat_reprFast(x_6); +x_52 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_52, 0, x_51); +x_53 = l_Lean_MessageData_ofFormat(x_52); +x_54 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_54, 0, x_50); +lean_ctor_set(x_54, 1, x_53); +x_55 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___closed__8; +x_56 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); lean_inc(x_1); -x_56 = l_Lean_MessageData_ofExpr(x_1); -x_57 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_56); -x_58 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -x_60 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_16, x_59, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_44); -x_61 = lean_ctor_get(x_60, 0); -lean_inc(x_61); -x_62 = lean_ctor_get(x_60, 1); +x_57 = l_Lean_MessageData_ofExpr(x_1); +x_58 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +x_59 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8___lambda__2___closed__10; +x_60 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +x_61 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_17, x_60, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_45); +x_62 = lean_ctor_get(x_61, 0); lean_inc(x_62); -lean_dec(x_60); -x_63 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_61, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); lean_dec(x_61); -return x_63; +x_64 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_4, x_62, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_63); +lean_dec(x_62); +return x_64; } } } @@ -5592,37 +6715,51 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, uint8_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_object* x_17; lean_object* x_18; lean_inc(x_2); lean_inc(x_1); x_17 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_17, 0, x_1); lean_ctor_set(x_17, 1, x_2); -x_18 = lean_ctor_get(x_3, 0); -lean_inc(x_18); -lean_dec(x_3); -x_19 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_Canon_canonElemCore___spec__1(x_18, x_17); -x_20 = lean_box(0); -if (lean_obj_tag(x_19) == 0) +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_3); +x_18 = lean_infer_type(x_3, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_18) == 0) { -lean_object* x_40; -x_40 = lean_box(0); -x_21 = x_40; -goto block_39; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_ctor_get(x_4, 0); +lean_inc(x_21); +lean_dec(x_4); +x_22 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_Canon_canonElemCore___spec__1(x_21, x_17); +x_23 = lean_box(0); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_43; +x_43 = lean_box(0); +x_24 = x_43; +goto block_42; } else { -lean_object* x_41; -x_41 = lean_ctor_get(x_19, 0); -lean_inc(x_41); -lean_dec(x_19); -x_21 = x_41; -goto block_39; +lean_object* x_44; +x_44 = lean_ctor_get(x_22, 0); +lean_inc(x_44); +lean_dec(x_22); +x_24 = x_44; +goto block_42; } -block_39: +block_42: { -lean_object* x_22; lean_object* x_23; -x_22 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3___closed__1; +lean_object* x_25; lean_object* x_26; +x_25 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3___closed__1; lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -5631,39 +6768,41 @@ lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -lean_inc(x_21); -lean_inc(x_5); -x_23 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(x_4, x_5, x_6, x_20, x_22, x_21, x_21, x_21, x_22, lean_box(0), x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -if (lean_obj_tag(x_23) == 0) -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_23, 0); lean_inc(x_24); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); +lean_inc(x_19); +lean_inc(x_3); +x_26 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(x_5, x_3, x_6, x_19, x_23, x_25, x_24, x_24, x_24, x_25, lean_box(0), x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_20); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +lean_dec(x_27); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); +lean_dec(x_26); +x_30 = lean_box(0); +x_31 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(x_3, x_19, x_24, x_17, x_1, x_2, x_30, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_29); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +return x_31; +} +else +{ +uint8_t x_32; lean_dec(x_24); -if (lean_obj_tag(x_25) == 0) -{ -lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_23, 1); -lean_inc(x_26); -lean_dec(x_23); -x_27 = lean_box(0); -x_28 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(x_5, x_21, x_17, x_1, x_2, x_27, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_26); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -return x_28; -} -else -{ -uint8_t x_29; -lean_dec(x_21); +lean_dec(x_19); lean_dec(x_17); lean_dec(x_15); lean_dec(x_14); @@ -5673,73 +6812,111 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_5); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_29 = !lean_is_exclusive(x_23); -if (x_29 == 0) +x_32 = !lean_is_exclusive(x_26); +if (x_32 == 0) { -lean_object* x_30; lean_object* x_31; -x_30 = lean_ctor_get(x_23, 0); -lean_dec(x_30); -x_31 = lean_ctor_get(x_25, 0); -lean_inc(x_31); -lean_dec(x_25); -lean_ctor_set(x_23, 0, x_31); -return x_23; +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_26, 0); +lean_dec(x_33); +x_34 = lean_ctor_get(x_28, 0); +lean_inc(x_34); +lean_dec(x_28); +lean_ctor_set(x_26, 0, x_34); +return x_26; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_23, 1); -lean_inc(x_32); -lean_dec(x_23); -x_33 = lean_ctor_get(x_25, 0); -lean_inc(x_33); -lean_dec(x_25); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_32); -return x_34; -} -} -} -else -{ -uint8_t x_35; -lean_dec(x_21); -lean_dec(x_17); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_35 = !lean_is_exclusive(x_23); -if (x_35 == 0) -{ -return x_23; -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_23, 0); -x_37 = lean_ctor_get(x_23, 1); -lean_inc(x_37); +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_26, 1); +lean_inc(x_35); +lean_dec(x_26); +x_36 = lean_ctor_get(x_28, 0); lean_inc(x_36); -lean_dec(x_23); -x_38 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_38, 0, x_36); -lean_ctor_set(x_38, 1, x_37); -return x_38; +lean_dec(x_28); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_35); +return x_37; } } } +else +{ +uint8_t x_38; +lean_dec(x_24); +lean_dec(x_19); +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_38 = !lean_is_exclusive(x_26); +if (x_38 == 0) +{ +return x_26; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_26, 0); +x_40 = lean_ctor_get(x_26, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_26); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +} +else +{ +uint8_t x_45; +lean_dec(x_17); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_45 = !lean_is_exclusive(x_18); +if (x_45 == 0) +{ +return x_18; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_18, 0); +x_47 = lean_ctor_get(x_18, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_18); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} } } LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { @@ -5764,7 +6941,7 @@ if (lean_obj_tag(x_21) == 0) lean_object* x_22; lean_object* x_23; lean_free_object(x_15); x_22 = lean_box(0); -x_23 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3(x_2, x_3, x_19, x_1, x_4, x_5, x_22, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_18); +x_23 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3(x_2, x_3, x_4, x_19, x_1, x_5, x_22, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_18); return x_23; } else @@ -5808,7 +6985,7 @@ if (lean_obj_tag(x_29) == 0) { lean_object* x_30; lean_object* x_31; x_30 = lean_box(0); -x_31 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3(x_2, x_3, x_27, x_1, x_4, x_5, x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_26); +x_31 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3(x_2, x_3, x_4, x_27, x_1, x_5, x_30, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_26); return x_31; } else @@ -5941,16 +7118,17 @@ lean_object* x_16 = _args[15]; lean_object* x_17 = _args[16]; lean_object* x_18 = _args[17]; lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; _start: { -uint8_t x_20; lean_object* x_21; -x_20 = lean_unbox(x_3); +uint8_t x_21; lean_object* x_22; +x_21 = lean_unbox(x_3); lean_dec(x_3); -x_21 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(x_1, x_2, x_20, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19); +x_22 = l_List_forIn_x27_loop___at_Lean_Meta_Grind_Canon_canonElemCore___spec__8(x_1, x_2, x_21, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +lean_dec(x_8); lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_4); -return x_21; +lean_dec(x_5); +return x_22; } } LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_Canon_canonElemCore___spec__11___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { @@ -6008,29 +7186,11 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { _start: { -lean_object* x_14; -x_14 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -return x_14; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { -_start: -{ -lean_object* x_16; -x_16 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -lean_dec(x_14); +lean_object* x_15; +x_15 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); lean_dec(x_13); lean_dec(x_12); lean_dec(x_11); @@ -6039,7 +7199,25 @@ lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -return x_16; +lean_dec(x_5); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +lean_object* x_17; +x_17 = l_Lean_Meta_Grind_Canon_canonElemCore___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +return x_17; } } LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_canonElemCore___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { @@ -19683,7 +20861,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__3___closed__1; x_2 = l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__3___closed__2; -x_3 = lean_unsigned_to_nat(189u); +x_3 = lean_unsigned_to_nat(192u); x_4 = lean_unsigned_to_nat(13u); x_5 = l_Lean_Meta_Grind_Canon_canonImpl_visit___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Cases.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Cases.c index a40722e03c..e97f9ebceb 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Cases.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Cases.c @@ -13,7 +13,6 @@ #ifdef __cplusplus extern "C" { #endif -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_contains___boxed(lean_object*, lean_object*); @@ -31,6 +30,7 @@ size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__12(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_validateCasesAttr___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_CasesTypes_insert___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149_(lean_object*); lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_le(size_t, size_t); @@ -41,6 +41,7 @@ static size_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTyp LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_CasesTypes_find_x3f___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_instInhabitedCasesEntry___closed__1; static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__6; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_isEagerSplit___boxed(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_Grind_CasesTypes_erase___spec__2(lean_object*, size_t, lean_object*); size_t lean_usize_mul(size_t, size_t); @@ -48,6 +49,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_find_x3f___boxed(lean_obje LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__6___boxed(lean_object**); static lean_object* l_Lean_Meta_Grind_cases_throwInductiveExpected___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__10(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_insert(lean_object*, lean_object*, uint8_t); @@ -78,6 +80,7 @@ lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object* LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_Grind_CasesTypes_erase___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_CasesTypes_contains___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_isUnaryNode___rarg(lean_object*); +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_CasesTypes_isEagerSplit(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__7; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_Grind_CasesTypes_erase___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -86,16 +89,16 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedCasesEntry; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getCasesTypes(lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____lambda__1(lean_object*, lean_object*); lean_object* l_Lean_getConstInfo___at___private_Lean_Compiler_InlineAttrs_0__Lean_Compiler_isValidMacroInline___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8; static size_t l_Lean_Meta_Grind_cases___lambda__13___closed__3; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7; LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_addCasesAttr___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_registerSimpleScopedEnvExtension___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__4___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_CasesTypes_contains___spec__1___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__4; -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5; static lean_object* l_Lean_Meta_Grind_validateCasesAttr___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_generalizeIndices_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -109,13 +112,12 @@ lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0_ static lean_object* l_Lean_Meta_Grind_validateCasesAttr___closed__8; LEAN_EXPORT lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_Grind_addCasesAttr___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_eraseDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122_(lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1; lean_object* lean_st_mk_ref(lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____lambda__1(lean_object*, lean_object*); lean_object* l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContextCoreM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); lean_object* l_Lean_ScopedEnvExtension_modifyState___rarg(lean_object*, lean_object*, lean_object*); @@ -124,7 +126,9 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_insert___boxed(lean_object LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedCasesTypes; static uint64_t l_Lean_Meta_Grind_isCasesAttrCandidate___closed__2; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_CasesTypes_isSplit(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesExt; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_CasesTypes_insert___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_name_eq(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_cases_throwInductiveExpected___closed__1; @@ -133,7 +137,6 @@ static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec lean_object* l_Lean_Meta_lambdaTelescope___at_Lean_PrettyPrinter_Delaborator_returnsPi___spec__1___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__10___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_find_x3f(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1; LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_CasesTypes_eraseDecl___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__5___boxed(lean_object**); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_CasesTypes_contains(lean_object*, lean_object*); @@ -142,6 +145,8 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_eraseCasesAttr___lambda__1(lean_objec static size_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTypes_contains___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_CasesTypes_find_x3f___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_validateCasesAttr___closed__6; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTypes_contains___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Array_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_assert(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -175,9 +180,8 @@ static lean_object* l_Lean_Meta_Grind_cases_throwInductiveExpected___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_id___rarg___boxed(lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6; lean_object* l_Lean_indentExpr(lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6; static lean_object* l_Lean_Meta_Grind_validateCasesAttr___closed__1; lean_object* l_Lean_PersistentHashMap_mkEmptyEntries(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__1___boxed(lean_object**); @@ -189,6 +193,7 @@ lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn_x27(lean_object*); uint64_t l_Lean_Name_hash___override(lean_object*); static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__10; +static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3; lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getCasesTypes___rarg(lean_object*, lean_object*); @@ -197,7 +202,6 @@ lean_object* l_Array_indexOfAux___at_Lean_MetavarContext_setMVarUserName___spec_ lean_object* l_Lean_ScopedEnvExtension_addCore___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Meta_Grind_isCasesAttrCandidate___closed__11; lean_object* l_Lean_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3; lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Cases_0__Lean_Meta_Grind_getAlias_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Cases_0__Lean_Meta_Grind_getAlias_x3f___closed__1; @@ -231,6 +235,7 @@ static lean_object* l_Lean_Meta_Grind_cases_throwInductiveExpected___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_isSplit___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_cases(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_intro1Core(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__2___boxed(lean_object**); @@ -239,7 +244,6 @@ lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_instInhabitedCasesTypes___closed__2; lean_object* l_Lean_PersistentHashMap_getCollisionNodeSize___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__12___boxed(lean_object**); -static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2; lean_object* l_Lean_throwError___at___private_Lean_ReducibilityAttrs_0__Lean_validate___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_cases_throwInductiveExpected___closed__7; static lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_cases___spec__1___closed__3; @@ -1673,7 +1677,70 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____lambda__1(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_CasesTypes_isEagerSplit(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_CasesTypes_find_x3f___spec__1(x_1, x_2); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_4; +x_4 = 0; +return x_4; +} +else +{ +lean_object* x_5; uint8_t x_6; +x_5 = lean_ctor_get(x_3, 0); +lean_inc(x_5); +lean_dec(x_3); +x_6 = lean_unbox(x_5); +lean_dec(x_5); +return x_6; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_isEagerSplit___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_Grind_CasesTypes_isEagerSplit(x_1, x_2); +lean_dec(x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_CasesTypes_isSplit(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_CasesTypes_find_x3f___spec__1(x_1, x_2); +if (lean_obj_tag(x_3) == 0) +{ +uint8_t x_4; +x_4 = 0; +return x_4; +} +else +{ +uint8_t x_5; +lean_dec(x_3); +x_5 = 1; +return x_5; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_CasesTypes_isSplit___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_Grind_CasesTypes_isSplit(x_1, x_2); +lean_dec(x_2); +x_4 = lean_box(x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____lambda__1(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; uint8_t x_4; lean_object* x_5; @@ -1685,7 +1752,7 @@ x_5 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_CasesTypes_insert___s return x_5; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1() { _start: { lean_object* x_1; @@ -1693,7 +1760,7 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2() { _start: { lean_object* x_1; @@ -1701,7 +1768,7 @@ x_1 = lean_mk_string_unchecked("Meta", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3() { _start: { lean_object* x_1; @@ -1709,7 +1776,7 @@ x_1 = lean_mk_string_unchecked("Grind", 5, 5); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4() { _start: { lean_object* x_1; @@ -1717,27 +1784,27 @@ x_1 = lean_mk_string_unchecked("casesExt", 8, 8); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2; -x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3; -x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2; +x_3 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3; +x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____lambda__1), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____lambda__1), 2, 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7() { _start: { lean_object* x_1; @@ -1745,14 +1812,14 @@ x_1 = lean_alloc_closure((void*)(l_id___rarg___boxed), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8() { +static lean_object* _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6; x_3 = l_Lean_Meta_Grind_instInhabitedCasesTypes___closed__2; -x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7; +x_4 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7; x_5 = lean_alloc_ctor(0, 4, 0); lean_ctor_set(x_5, 0, x_1); lean_ctor_set(x_5, 1, x_2); @@ -1761,11 +1828,11 @@ lean_ctor_set(x_5, 3, x_4); return x_5; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; -x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8; +x_2 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8; x_3 = l_Lean_registerSimpleScopedEnvExtension___rarg(x_2, x_1); return x_3; } @@ -14734,23 +14801,23 @@ l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTypes_contains___ l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTypes_contains___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_CasesTypes_contains___spec__2___closed__2(); l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_CasesTypes_insert___spec__2___closed__1 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_CasesTypes_insert___spec__2___closed__1(); lean_mark_persistent(l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_CasesTypes_insert___spec__2___closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__1); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__2); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__3); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__4); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__5); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__6); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__7); -l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8(); -lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122____closed__8); -if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_122_(lean_io_mk_world()); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__1); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__2); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__3); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__4); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__5); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__6); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__7); +l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8 = _init_l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8(); +lean_mark_persistent(l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149____closed__8); +if (builtin) {res = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Cases___hyg_149_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; l_Lean_Meta_Grind_casesExt = lean_io_result_get_value(res); lean_mark_persistent(l_Lean_Meta_Grind_casesExt); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/CasesMatch.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/CasesMatch.c index eed01a9a4b..a1731caee3 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/CasesMatch.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/CasesMatch.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.CasesMatch -// Imports: Lean.Meta.Tactic.Util Lean.Meta.Tactic.Cases Lean.Meta.Match.MatcherApp +// Imports: Lean.Meta.Tactic.Util Lean.Meta.Tactic.Cases Lean.Meta.Match.MatcherApp Lean.Meta.Tactic.Grind.MatchCond #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -14,60 +14,84 @@ extern "C" { #endif lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_updateTags(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_throwTacticEx___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkAppN(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_casesMatch_updateTags___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_sort___override(lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__2; static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__1; +uint8_t lean_usize_dec_eq(size_t, size_t); lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_MVarId_getTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_matchMatcherApp_x3f___at___private_Lean_Meta_Tactic_Split_0__Lean_Meta_Split_generalizeMatchDiscrs_mkNewTarget___spec__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__6; lean_object* l_Lean_stringToMessageData(lean_object*); +LEAN_EXPORT uint8_t l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1(lean_object*); lean_object* l_Lean_Level_ofNat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_updateTags___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_ptr_addr(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToAlt(lean_object*); +lean_object* l_Lean_Meta_Grind_markAsMatchCond(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallBoundedTelescope___at_Lean_Meta_arrowDomainsN___spec__6___rarg(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isEq(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__5; lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getLevel(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_forallE___override(lean_object*, lean_object*, lean_object*, uint8_t); lean_object* l_outOfBounds___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Meta_Grind_casesMatch___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_casesMatch_updateTags___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2; static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallMetaBoundedTelescope(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isFalse(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter(lean_object*, lean_object*); lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); lean_object* l_Lean_indentExpr(lean_object*); +uint8_t l_Lean_Expr_isHEq(lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_withNewEqs___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_get_match_equations_for(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_sub(lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond(lean_object*); lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1; lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__4; lean_object* l_Lean_MVarId_setTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__2; lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -77,6 +101,532 @@ lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint lean_object* lean_nat_add(lean_object*, lean_object*); lean_object* l_Lean_Expr_mvarId_x21(lean_object*); static lean_object* l_Lean_Meta_Grind_casesMatch___lambda__2___closed__3; +uint8_t l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(uint8_t, uint8_t); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_6 = lean_box(x_2); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_1); +lean_ctor_set(x_7, 1, x_6); +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_3); +lean_ctor_set(x_8, 1, x_7); +x_9 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_9, 0, x_8); +return x_9; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; +lean_inc(x_1); +x_6 = l_Lean_Expr_isFalse(x_1); +if (x_6 == 0) +{ +lean_object* x_7; lean_object* x_8; +x_7 = lean_box(0); +x_8 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1(x_1, x_4, x_2, x_3, x_7); +lean_dec(x_3); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_dec(x_2); +lean_dec(x_1); +x_9 = lean_box(x_4); +x_10 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_10, 0, x_9); +x_11 = lean_box(x_4); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_3); +lean_ctor_set(x_12, 1, x_11); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_10); +lean_ctor_set(x_13, 1, x_12); +x_14 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_14, 0, x_13); +return x_14; +} +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; +x_1 = 0; +x_2 = lean_box(x_1); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; +x_3 = lean_ctor_get(x_2, 1); +lean_inc(x_3); +lean_dec(x_2); +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +if (lean_obj_tag(x_4) == 7) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_5 = lean_ctor_get(x_3, 1); +lean_inc(x_5); +lean_dec(x_3); +x_6 = lean_ctor_get(x_4, 1); +lean_inc(x_6); +x_7 = lean_ctor_get(x_4, 2); +lean_inc(x_7); +x_8 = l_Lean_Expr_isEq(x_6); +if (x_8 == 0) +{ +uint8_t x_9; +x_9 = l_Lean_Expr_isHEq(x_6); +lean_dec(x_6); +if (x_9 == 0) +{ +lean_object* x_10; uint8_t x_11; lean_object* x_12; +x_10 = lean_box(0); +x_11 = lean_unbox(x_5); +lean_dec(x_5); +lean_inc(x_1); +x_12 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(x_7, x_1, x_4, x_11, x_10); +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_13; +lean_dec(x_1); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +return x_13; +} +else +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +lean_dec(x_12); +x_2 = x_14; +goto _start; +} +} +else +{ +uint8_t x_16; lean_object* x_17; lean_object* x_18; +lean_dec(x_5); +x_16 = 1; +x_17 = lean_box(0); +lean_inc(x_1); +x_18 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(x_7, x_1, x_4, x_16, x_17); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; +lean_dec(x_1); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +lean_dec(x_18); +return x_19; +} +else +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +lean_dec(x_18); +x_2 = x_20; +goto _start; +} +} +} +else +{ +uint8_t x_22; lean_object* x_23; lean_object* x_24; +lean_dec(x_6); +lean_dec(x_5); +x_22 = 1; +x_23 = lean_box(0); +lean_inc(x_1); +x_24 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(x_7, x_1, x_4, x_22, x_23); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; +lean_dec(x_1); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +lean_dec(x_24); +return x_25; +} +else +{ +lean_object* x_26; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +lean_dec(x_24); +x_2 = x_26; +goto _start; +} +} +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_dec(x_1); +x_28 = lean_ctor_get(x_3, 1); +lean_inc(x_28); +lean_dec(x_3); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_4); +lean_ctor_set(x_29, 1, x_28); +x_30 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1; +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_30); +lean_ctor_set(x_31, 1, x_29); +return x_31; +} +} +} +LEAN_EXPORT uint8_t l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1(lean_object* x_1) { +_start: +{ +uint8_t x_2; +x_2 = 1; +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1___boxed), 1, 0); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1; +x_2 = lean_box(0); +x_3 = lean_apply_1(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_2 = lean_box(0); +x_3 = 0; +x_4 = lean_box(x_3); +x_5 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_4); +x_6 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_6, 0, x_2); +lean_ctor_set(x_6, 1, x_5); +x_7 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1(x_2, x_6); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +lean_dec(x_7); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; +x_9 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2; +return x_9; +} +else +{ +lean_object* x_10; +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +lean_dec(x_8); +return x_10; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; lean_object* x_7; +x_6 = lean_unbox(x_2); +lean_dec(x_2); +x_7 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__1(x_1, x_6, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +uint8_t x_6; lean_object* x_7; +x_6 = lean_unbox(x_4); +lean_dec(x_4); +x_7 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___lambda__2(x_1, x_2, x_3, x_6, x_5); +lean_dec(x_5); +return x_7; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1___boxed(lean_object* x_1) { +_start: +{ +uint8_t x_2; lean_object* x_3; +x_2 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___lambda__1(x_1); +lean_dec(x_1); +x_3 = lean_box(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToAlt(lean_object* x_1) { +_start: +{ +if (lean_obj_tag(x_1) == 7) +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; uint8_t x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; size_t x_10; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = lean_ctor_get(x_1, 1); +lean_inc(x_3); +x_4 = lean_ctor_get(x_1, 2); +lean_inc(x_4); +x_5 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); +lean_dec(x_1); +lean_inc(x_3); +x_6 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond(x_3); +x_7 = lean_unbox(x_6); +lean_dec(x_6); +lean_inc(x_4); +x_8 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToAlt(x_4); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +x_9 = l_Lean_Expr_forallE___override(x_2, x_3, x_4, x_5); +x_10 = lean_ptr_addr(x_3); +if (x_7 == 0) +{ +uint8_t x_11; +x_11 = lean_usize_dec_eq(x_10, x_10); +if (x_11 == 0) +{ +lean_object* x_12; +lean_dec(x_9); +lean_dec(x_4); +x_12 = l_Lean_Expr_forallE___override(x_2, x_3, x_8, x_5); +return x_12; +} +else +{ +size_t x_13; size_t x_14; uint8_t x_15; +x_13 = lean_ptr_addr(x_4); +lean_dec(x_4); +x_14 = lean_ptr_addr(x_8); +x_15 = lean_usize_dec_eq(x_13, x_14); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_9); +x_16 = l_Lean_Expr_forallE___override(x_2, x_3, x_8, x_5); +return x_16; +} +else +{ +uint8_t x_17; +x_17 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_5, x_5); +if (x_17 == 0) +{ +lean_object* x_18; +lean_dec(x_9); +x_18 = l_Lean_Expr_forallE___override(x_2, x_3, x_8, x_5); +return x_18; +} +else +{ +lean_dec(x_8); +lean_dec(x_3); +lean_dec(x_2); +return x_9; +} +} +} +} +else +{ +lean_object* x_19; size_t x_20; uint8_t x_21; +x_19 = l_Lean_Meta_Grind_markAsMatchCond(x_3); +x_20 = lean_ptr_addr(x_19); +x_21 = lean_usize_dec_eq(x_10, x_20); +if (x_21 == 0) +{ +lean_object* x_22; +lean_dec(x_9); +lean_dec(x_4); +x_22 = l_Lean_Expr_forallE___override(x_2, x_19, x_8, x_5); +return x_22; +} +else +{ +size_t x_23; size_t x_24; uint8_t x_25; +x_23 = lean_ptr_addr(x_4); +lean_dec(x_4); +x_24 = lean_ptr_addr(x_8); +x_25 = lean_usize_dec_eq(x_23, x_24); +if (x_25 == 0) +{ +lean_object* x_26; +lean_dec(x_9); +x_26 = l_Lean_Expr_forallE___override(x_2, x_19, x_8, x_5); +return x_26; +} +else +{ +uint8_t x_27; +x_27 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_5, x_5); +if (x_27 == 0) +{ +lean_object* x_28; +lean_dec(x_9); +x_28 = l_Lean_Expr_forallE___override(x_2, x_19, x_8, x_5); +return x_28; +} +else +{ +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_2); +return x_9; +} +} +} +} +} +else +{ +return x_1; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 7) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; size_t x_13; size_t x_14; uint8_t x_15; +x_4 = lean_ctor_get(x_1, 0); +lean_inc(x_4); +x_5 = lean_ctor_get(x_1, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_1, 2); +lean_inc(x_6); +x_7 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); +lean_dec(x_1); +lean_inc(x_5); +x_8 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToAlt(x_5); +x_9 = lean_unsigned_to_nat(1u); +x_10 = lean_nat_sub(x_2, x_9); +lean_inc(x_6); +x_11 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter(x_6, x_10); +lean_dec(x_10); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_12 = l_Lean_Expr_forallE___override(x_4, x_5, x_6, x_7); +x_13 = lean_ptr_addr(x_5); +lean_dec(x_5); +x_14 = lean_ptr_addr(x_8); +x_15 = lean_usize_dec_eq(x_13, x_14); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_12); +lean_dec(x_6); +x_16 = l_Lean_Expr_forallE___override(x_4, x_8, x_11, x_7); +return x_16; +} +else +{ +size_t x_17; size_t x_18; uint8_t x_19; +x_17 = lean_ptr_addr(x_6); +lean_dec(x_6); +x_18 = lean_ptr_addr(x_11); +x_19 = lean_usize_dec_eq(x_17, x_18); +if (x_19 == 0) +{ +lean_object* x_20; +lean_dec(x_12); +x_20 = l_Lean_Expr_forallE___override(x_4, x_8, x_11, x_7); +return x_20; +} +else +{ +uint8_t x_21; +x_21 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_7, x_7); +if (x_21 == 0) +{ +lean_object* x_22; +lean_dec(x_12); +x_22 = l_Lean_Expr_forallE___override(x_4, x_8, x_11, x_7); +return x_22; +} +else +{ +lean_dec(x_11); +lean_dec(x_8); +lean_dec(x_4); +return x_12; +} +} +} +} +else +{ +return x_1; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = lean_unsigned_to_nat(0u); +x_4 = lean_nat_dec_eq(x_2, x_3); +if (x_4 == 0) +{ +lean_object* x_5; lean_object* x_6; +x_5 = lean_box(0); +x_6 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1(x_1, x_2, x_5); +return x_6; +} +else +{ +return x_1; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___lambda__1(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +return x_4; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -568,7 +1118,7 @@ lean_inc(x_7); x_13 = lean_get_match_equations_for(x_12, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_13) == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); @@ -588,170 +1138,171 @@ x_22 = lean_ctor_get(x_1, 6); lean_inc(x_22); x_23 = l_Lean_mkAppN(x_21, x_22); lean_dec(x_22); +x_24 = lean_ctor_get(x_1, 8); +lean_inc(x_24); +lean_dec(x_1); +x_25 = lean_array_get_size(x_24); +lean_dec(x_24); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_23); -x_24 = lean_infer_type(x_23, x_7, x_8, x_9, x_10, x_15); -if (lean_obj_tag(x_24) == 0) +x_26 = lean_infer_type(x_23, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_ctor_get(x_1, 8); +lean_object* x_27; lean_object* x_28; lean_object* x_29; uint8_t x_30; lean_object* x_31; +x_27 = lean_ctor_get(x_26, 0); lean_inc(x_27); -lean_dec(x_1); -x_28 = lean_array_get_size(x_27); -lean_dec(x_27); -x_29 = 2; +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_addMatchCondsToSplitter(x_27, x_25); +x_30 = 2; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -x_30 = l_Lean_Meta_forallMetaBoundedTelescope(x_25, x_28, x_29, x_7, x_8, x_9, x_10, x_26); -if (lean_obj_tag(x_30) == 0) +x_31 = l_Lean_Meta_forallMetaBoundedTelescope(x_29, x_25, x_30, x_7, x_8, x_9, x_10, x_28); +if (lean_obj_tag(x_31) == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_31 = lean_ctor_get(x_30, 0); -lean_inc(x_31); -x_32 = lean_ctor_get(x_30, 1); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_32 = lean_ctor_get(x_31, 0); lean_inc(x_32); -lean_dec(x_30); -x_33 = lean_ctor_get(x_31, 0); +x_33 = lean_ctor_get(x_31, 1); lean_inc(x_33); lean_dec(x_31); -x_34 = l_Lean_mkAppN(x_23, x_33); -x_35 = l_Lean_mkAppN(x_34, x_3); +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_mkAppN(x_23, x_34); +x_36 = l_Lean_mkAppN(x_35, x_3); lean_inc(x_4); -x_36 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_4, x_35, x_7, x_8, x_9, x_10, x_32); -x_37 = lean_ctor_get(x_36, 1); -lean_inc(x_37); -lean_dec(x_36); -x_38 = l_Lean_Meta_Grind_casesMatch_updateTags(x_4, x_33, x_7, x_8, x_9, x_10, x_37); +x_37 = l_Lean_MVarId_assign___at_Lean_Meta_getLevel___spec__1(x_4, x_36, x_7, x_8, x_9, x_10, x_33); +x_38 = lean_ctor_get(x_37, 1); +lean_inc(x_38); +lean_dec(x_37); +x_39 = l_Lean_Meta_Grind_casesMatch_updateTags(x_4, x_34, x_7, x_8, x_9, x_10, x_38); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -if (lean_obj_tag(x_38) == 0) +if (lean_obj_tag(x_39) == 0) { -uint8_t x_39; -x_39 = !lean_is_exclusive(x_38); -if (x_39 == 0) +uint8_t x_40; +x_40 = !lean_is_exclusive(x_39); +if (x_40 == 0) { -lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_40 = lean_ctor_get(x_38, 0); -lean_dec(x_40); -x_41 = lean_array_to_list(x_33); -x_42 = lean_box(0); -x_43 = l_List_mapTR_loop___at_Lean_Meta_Grind_casesMatch___spec__1(x_41, x_42); -lean_ctor_set(x_38, 0, x_43); -return x_38; +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_41 = lean_ctor_get(x_39, 0); +lean_dec(x_41); +x_42 = lean_array_to_list(x_34); +x_43 = lean_box(0); +x_44 = l_List_mapTR_loop___at_Lean_Meta_Grind_casesMatch___spec__1(x_42, x_43); +lean_ctor_set(x_39, 0, x_44); +return x_39; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_44 = lean_ctor_get(x_38, 1); -lean_inc(x_44); -lean_dec(x_38); -x_45 = lean_array_to_list(x_33); -x_46 = lean_box(0); -x_47 = l_List_mapTR_loop___at_Lean_Meta_Grind_casesMatch___spec__1(x_45, x_46); -x_48 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_48, 0, x_47); -lean_ctor_set(x_48, 1, x_44); -return x_48; +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_45 = lean_ctor_get(x_39, 1); +lean_inc(x_45); +lean_dec(x_39); +x_46 = lean_array_to_list(x_34); +x_47 = lean_box(0); +x_48 = l_List_mapTR_loop___at_Lean_Meta_Grind_casesMatch___spec__1(x_46, x_47); +x_49 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_45); +return x_49; } } else { -uint8_t x_49; -lean_dec(x_33); -x_49 = !lean_is_exclusive(x_38); -if (x_49 == 0) +uint8_t x_50; +lean_dec(x_34); +x_50 = !lean_is_exclusive(x_39); +if (x_50 == 0) { -return x_38; +return x_39; } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_38, 0); -x_51 = lean_ctor_get(x_38, 1); +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_39, 0); +x_52 = lean_ctor_get(x_39, 1); +lean_inc(x_52); lean_inc(x_51); -lean_inc(x_50); -lean_dec(x_38); -x_52 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_52, 0, x_50); -lean_ctor_set(x_52, 1, x_51); -return x_52; +lean_dec(x_39); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; } } } else { -uint8_t x_53; +uint8_t x_54; lean_dec(x_23); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_4); -x_53 = !lean_is_exclusive(x_30); -if (x_53 == 0) +x_54 = !lean_is_exclusive(x_31); +if (x_54 == 0) { -return x_30; +return x_31; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; -x_54 = lean_ctor_get(x_30, 0); -x_55 = lean_ctor_get(x_30, 1); +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_31, 0); +x_56 = lean_ctor_get(x_31, 1); +lean_inc(x_56); lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_30); -x_56 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_56, 0, x_54); -lean_ctor_set(x_56, 1, x_55); -return x_56; +lean_dec(x_31); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +return x_57; } } } else { -uint8_t x_57; +uint8_t x_58; +lean_dec(x_25); lean_dec(x_23); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_4); -lean_dec(x_1); -x_57 = !lean_is_exclusive(x_24); -if (x_57 == 0) +x_58 = !lean_is_exclusive(x_26); +if (x_58 == 0) { -return x_24; +return x_26; } else { -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_24, 0); -x_59 = lean_ctor_get(x_24, 1); +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = lean_ctor_get(x_26, 0); +x_60 = lean_ctor_get(x_26, 1); +lean_inc(x_60); lean_inc(x_59); -lean_inc(x_58); -lean_dec(x_24); -x_60 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_60, 0, x_58); -lean_ctor_set(x_60, 1, x_59); -return x_60; +lean_dec(x_26); +x_61 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_61, 0, x_59); +lean_ctor_set(x_61, 1, x_60); +return x_61; } } } else { -uint8_t x_61; +uint8_t x_62; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -760,23 +1311,23 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_61 = !lean_is_exclusive(x_13); -if (x_61 == 0) +x_62 = !lean_is_exclusive(x_13); +if (x_62 == 0) { return x_13; } else { -lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_62 = lean_ctor_get(x_13, 0); -x_63 = lean_ctor_get(x_13, 1); +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_13, 0); +x_64 = lean_ctor_get(x_13, 1); +lean_inc(x_64); lean_inc(x_63); -lean_inc(x_62); lean_dec(x_13); -x_64 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_64, 0, x_62); -lean_ctor_set(x_64, 1, x_63); -return x_64; +x_65 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_65, 0, x_63); +lean_ctor_set(x_65, 1, x_64); +return x_65; } } } @@ -1115,6 +1666,7 @@ return x_12; lean_object* initialize_Lean_Meta_Tactic_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Cases(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Match_MatcherApp(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_CasesMatch(uint8_t builtin, lean_object* w) { lean_object * res; @@ -1129,6 +1681,15 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Match_MatcherApp(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_MatchCond(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___spec__1___closed__1); +l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__1); +l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_CasesMatch_0__Lean_Meta_Grind_isMatchCond___closed__2); l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__1 = _init_l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__1); l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__2 = _init_l_Lean_Meta_Grind_casesMatch_mkMotiveAndRefls___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Core.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Core.c index 48bb16beb5..13e8214234 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Core.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Core.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.Core -// Imports: Init.Grind.Util Lean.Meta.LitValues Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Inv Lean.Meta.Tactic.Grind.PP Lean.Meta.Tactic.Grind.Ctor Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Beta Lean.Meta.Tactic.Grind.Internalize +// Imports: Init.Grind.Util Lean.Meta.LitValues Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Inv Lean.Meta.Tactic.Grind.PP Lean.Meta.Tactic.Grind.Ctor Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Beta Lean.Meta.Tactic.Grind.Internalize Lean.Meta.Tactic.Grind.Simp #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -15,13 +15,14 @@ extern "C" { #endif lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_add_go___closed__3; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__5; static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__3; -static lean_object* l_Lean_Meta_Grind_add___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__2___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_propagateEqcDown___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_mk_empty_array_with_capacity(lean_object*); size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_propagateBeta___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -31,20 +32,23 @@ lean_object* l_Lean_Meta_mkEqTrue(lean_object*, lean_object*, lean_object*, lean LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__7(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__2___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__8___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__3; +lean_object* l_Lean_Meta_mkEqSymm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_invertTrans___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__2___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_propagateEqcDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_uint64_to_usize(uint64_t); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_propagateCtor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_popNextEq_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -54,6 +58,7 @@ lean_object* l_Lean_MessageData_ofList(lean_object*); lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_updateRoots___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_simpAndInternalize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_checkSystem(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__1; @@ -65,6 +70,8 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_c static lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagateBeta___spec__2___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_reinsertParents___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_add___lambda__5___closed__1; uint64_t l_Lean_Meta_Grind_congrHash(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__16; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_propagateBeta___spec__5___boxed(lean_object**); @@ -72,6 +79,7 @@ lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__2___closed__6; static lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagateBeta___spec__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_propagateDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__2___closed__2; @@ -89,6 +97,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add_goFact(lean_object*, lean_object* LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__6(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagateBeta___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_storeFact(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_updateMT___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithTrueEqFalse___closed__4; lean_object* l_Lean_Meta_Grind_isCongrRoot(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -100,6 +109,8 @@ lean_object* l_Lean_Meta_Grind_propagateUp(lean_object*, lean_object*, lean_obje LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_invertTrans_go(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__3___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_updateMT(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_simp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_Goal_getENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_updateMT___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_propagateBeta___spec__5___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -129,10 +140,10 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_c LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2(lean_object*, lean_object*, size_t, lean_object*); lean_object* l_Lean_Meta_Grind_propagateBetaEqs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState(lean_object*); static lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagateBeta___spec__2___closed__1; lean_object* l_Lean_Meta_Grind_getFnRoots(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__2; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addNewEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_closeGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -148,6 +159,7 @@ lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); lean_object* l_Array_back_x3f___rarg(lean_object*); lean_object* l_Lean_Meta_Grind_getTrueExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_pop(lean_object*); static lean_object* l_Lean_Meta_Grind_add___lambda__3___closed__1; lean_object* l_Lean_Meta_mkHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -179,20 +191,24 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Gr static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_propagateBeta___spec__5___closed__3; uint8_t l_Lean_Meta_Grind_isSameExpr_unsafe__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_add___closed__2; +lean_object* l_Lean_Meta_Grind_alreadyInternalized(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getParents(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_propagateBeta___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_ReaderT_bind___at___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_process_new_offset_eq_lit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1; +static lean_object* l_Lean_Meta_Grind_add___lambda__5___closed__2; lean_object* l_Lean_Meta_Grind_updateLastTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__10; lean_object* l_Array_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; +lean_object* l_Lean_Meta_Grind_hasSameType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_usize_to_nat(size_t); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___closed__5; static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_reinsertParents___spec__1___closed__2; +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1; lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__5___boxed(lean_object**); lean_object* l_Lean_Meta_Grind_copyParentsTo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -208,6 +224,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Gr static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_grind_mk_eq_proof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_propagateBeta___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_propagateEqcDown___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__7; @@ -239,6 +256,7 @@ lean_object* l_Lean_Meta_Grind_markAsInconsistent(lean_object*, lean_object*, le lean_object* l_Lean_Meta_Grind_isNatNum(lean_object*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1; LEAN_EXPORT lean_object* l_Array_indexOfAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__3(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -247,6 +265,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_a LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_invertTrans_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isProp(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagateBeta___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_add_go___closed__2; LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_propagateBeta___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -257,6 +276,7 @@ lean_object* l_Array_back_x21___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_storeFact___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__3___boxed(lean_object**); lean_object* l_Lean_Meta_Grind_ppENodeRef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__2___closed__5; static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__3___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__8; @@ -269,6 +289,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_a size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_popNextEq_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); lean_object* l_Lean_Expr_fvar___override(lean_object*); @@ -277,6 +298,7 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_propagat LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_go___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Array_indexOfAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -290,6 +312,7 @@ LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_propagateBe LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__4(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__8___closed__2; lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add_goFact___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__9; @@ -299,6 +322,7 @@ lean_object* l_Lean_Meta_Grind_resetParentsOf(lean_object*, lean_object*, lean_o lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__6___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add_go___lambda__2(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__13; static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithTrueEqFalse___closed__3; @@ -315,6 +339,7 @@ lean_object* l_Lean_Meta_Grind_internalize(lean_object*, lean_object*, lean_obje size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_propagateBeta___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateBeta___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_invertTrans_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_closeGoalWithValuesEq___closed__14; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -14364,24 +14389,47 @@ lean_dec(x_1); return x_10; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1() { _start: { -lean_object* x_11; lean_object* x_12; -x_11 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__1; -x_12 = l_Lean_Core_checkSystem(x_11, x_8, x_9, x_10); -if (lean_obj_tag(x_12) == 0) +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep_propagateEqcDown___spec__1___closed__1; +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2() { +_start: { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_12, 1); -lean_inc(x_13); -lean_dec(x_12); -x_14 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_popNextEq_x3f(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -if (lean_obj_tag(x_15) == 0) +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: { -uint8_t x_16; +lean_object* x_12; lean_object* x_13; +x_12 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__1; +x_13 = l_Lean_Core_checkSystem(x_12, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_13, 1); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_popNextEq_x3f(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_17; +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -14389,121 +14437,94 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); -x_16 = !lean_is_exclusive(x_14); -if (x_16 == 0) +lean_dec(x_1); +x_17 = !lean_is_exclusive(x_15); +if (x_17 == 0) { -lean_object* x_17; lean_object* x_18; -x_17 = lean_ctor_get(x_14, 0); -lean_dec(x_17); -x_18 = lean_box(0); -lean_ctor_set(x_14, 0, x_18); -return x_14; +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_15, 0); +lean_dec(x_18); +x_19 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2; +lean_ctor_set(x_15, 0, x_19); +return x_15; } else { -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_14, 1); -lean_inc(x_19); -lean_dec(x_14); -x_20 = lean_box(0); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_19); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; -x_22 = lean_ctor_get(x_15, 0); -lean_inc(x_22); +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_15, 1); +lean_inc(x_20); lean_dec(x_15); -x_23 = lean_ctor_get(x_14, 1); -lean_inc(x_23); -lean_dec(x_14); -x_24 = lean_ctor_get(x_22, 0); -lean_inc(x_24); -x_25 = lean_ctor_get(x_22, 1); -lean_inc(x_25); -x_26 = lean_ctor_get(x_22, 2); -lean_inc(x_26); -x_27 = lean_ctor_get_uint8(x_22, sizeof(void*)*3); -lean_dec(x_22); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_28 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep(x_24, x_25, x_26, x_27, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_23); -if (lean_obj_tag(x_28) == 0) +x_21 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2; +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_20); +return x_22; +} +} +else { -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_28, 1); -lean_inc(x_29); -lean_dec(x_28); -x_30 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_29); +uint8_t x_23; +x_23 = !lean_is_exclusive(x_16); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; uint8_t x_29; lean_object* x_30; +x_24 = lean_ctor_get(x_16, 0); +x_25 = lean_ctor_get(x_15, 1); +lean_inc(x_25); +lean_dec(x_15); +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_24, 1); +lean_inc(x_27); +x_28 = lean_ctor_get(x_24, 2); +lean_inc(x_28); +x_29 = lean_ctor_get_uint8(x_24, sizeof(void*)*3); +lean_dec(x_24); +x_30 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep(x_26, x_27, x_28, x_29, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_25); +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_31; +x_31 = !lean_is_exclusive(x_30); +if (x_31 == 0) +{ +lean_object* x_32; +x_32 = lean_ctor_get(x_30, 0); +lean_dec(x_32); +lean_ctor_set(x_16, 0, x_1); +lean_ctor_set(x_30, 0, x_16); return x_30; } else { -uint8_t x_31; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_31 = !lean_is_exclusive(x_28); -if (x_31 == 0) -{ -return x_28; -} -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_28, 0); -x_33 = lean_ctor_get(x_28, 1); +lean_object* x_33; lean_object* x_34; +x_33 = lean_ctor_get(x_30, 1); lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_28); -x_34 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_34, 0, x_32); +lean_dec(x_30); +lean_ctor_set(x_16, 0, x_1); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_16); lean_ctor_set(x_34, 1, x_33); return x_34; } } -} -} else { uint8_t x_35; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_35 = !lean_is_exclusive(x_12); +lean_free_object(x_16); +lean_dec(x_1); +x_35 = !lean_is_exclusive(x_30); if (x_35 == 0) { -return x_12; +return x_30; } else { lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_12, 0); -x_37 = lean_ctor_get(x_12, 1); +x_36 = lean_ctor_get(x_30, 0); +x_37 = lean_ctor_get(x_30, 1); lean_inc(x_37); lean_inc(x_36); -lean_dec(x_12); +lean_dec(x_30); x_38 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_38, 0, x_36); lean_ctor_set(x_38, 1, x_37); @@ -14511,83 +14532,382 @@ return x_38; } } } -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1() { -_start: +else { -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1___boxed), 10, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; +x_39 = lean_ctor_get(x_16, 0); +lean_inc(x_39); +lean_dec(x_16); +x_40 = lean_ctor_get(x_15, 1); +lean_inc(x_40); +lean_dec(x_15); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_39, 1); +lean_inc(x_42); +x_43 = lean_ctor_get(x_39, 2); +lean_inc(x_43); +x_44 = lean_ctor_get_uint8(x_39, sizeof(void*)*3); +lean_dec(x_39); +x_45 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep(x_41, x_42, x_43, x_44, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_40); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_10 = l_Lean_Meta_Grind_isInconsistent(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_unbox(x_11); -lean_dec(x_11); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_13 = lean_ctor_get(x_10, 1); -lean_inc(x_13); -lean_dec(x_10); -x_14 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1; -x_15 = lean_box(0); -x_16 = lean_apply_10(x_14, x_15, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_13); -return x_16; +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_46 = lean_ctor_get(x_45, 1); +lean_inc(x_46); +if (lean_is_exclusive(x_45)) { + lean_ctor_release(x_45, 0); + lean_ctor_release(x_45, 1); + x_47 = x_45; +} else { + lean_dec_ref(x_45); + x_47 = lean_box(0); +} +x_48 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_48, 0, x_1); +if (lean_is_scalar(x_47)) { + x_49 = lean_alloc_ctor(0, 2, 0); +} else { + x_49 = x_47; +} +lean_ctor_set(x_49, 0, x_48); +lean_ctor_set(x_49, 1, x_46); +return x_49; } else { -lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_17 = lean_ctor_get(x_10, 1); -lean_inc(x_17); +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_dec(x_1); +x_50 = lean_ctor_get(x_45, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_45, 1); +lean_inc(x_51); +if (lean_is_exclusive(x_45)) { + lean_ctor_release(x_45, 0); + lean_ctor_release(x_45, 1); + x_52 = x_45; +} else { + lean_dec_ref(x_45); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_52)) { + x_53 = lean_alloc_ctor(1, 2, 0); +} else { + x_53 = x_52; +} +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_51); +return x_53; +} +} +} +} +else +{ +uint8_t x_54; lean_dec(x_10); -x_18 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_resetNewEqs(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_17); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); lean_dec(x_1); -x_19 = !lean_is_exclusive(x_18); +x_54 = !lean_is_exclusive(x_13); +if (x_54 == 0) +{ +return x_13; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_13, 0); +x_56 = lean_ctor_get(x_13, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_13); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +return x_57; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +lean_dec(x_2); +x_12 = l_Lean_Meta_Grind_isInconsistent(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_unbox(x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_dec(x_12); +x_16 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_17 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +if (lean_obj_tag(x_18) == 0) +{ +uint8_t x_19; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_19 = !lean_is_exclusive(x_17); if (x_19 == 0) { lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_18, 0); +x_20 = lean_ctor_get(x_17, 0); lean_dec(x_20); -x_21 = lean_box(0); -lean_ctor_set(x_18, 0, x_21); -return x_18; +x_21 = lean_ctor_get(x_18, 0); +lean_inc(x_21); +lean_dec(x_18); +lean_ctor_set(x_17, 0, x_21); +return x_17; } else { lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_18, 1); +x_22 = lean_ctor_get(x_17, 1); lean_inc(x_22); +lean_dec(x_17); +x_23 = lean_ctor_get(x_18, 0); +lean_inc(x_23); lean_dec(x_18); -x_23 = lean_box(0); x_24 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_24, 0, x_23); lean_ctor_set(x_24, 1, x_22); return x_24; } } +else +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_ctor_get(x_17, 1); +lean_inc(x_25); +lean_dec(x_17); +x_26 = lean_ctor_get(x_18, 0); +lean_inc(x_26); +lean_dec(x_18); +x_2 = x_26; +x_11 = x_25; +goto _start; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +else +{ +uint8_t x_28; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_28 = !lean_is_exclusive(x_17); +if (x_28 == 0) +{ +return x_17; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_17, 0); +x_30 = lean_ctor_get(x_17, 1); +lean_inc(x_30); +lean_inc(x_29); +lean_dec(x_17); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +return x_31; +} +} +} +else +{ +lean_object* x_32; lean_object* x_33; uint8_t x_34; +lean_dec(x_1); +x_32 = lean_ctor_get(x_12, 1); +lean_inc(x_32); +lean_dec(x_12); +x_33 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_resetNewEqs(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_32); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_34 = !lean_is_exclusive(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_ctor_get(x_33, 0); +lean_dec(x_35); +x_36 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1; +lean_ctor_set(x_33, 0, x_36); +return x_33; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_33, 1); +lean_inc(x_37); +lean_dec(x_33); +x_38 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1; +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_37); +return x_39; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1() { _start: { -lean_object* x_11; -x_11 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_1); +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; +x_10 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1; +x_11 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1(x_10, x_10, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +lean_dec(x_12); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_11); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_11, 0); +lean_dec(x_15); +x_16 = lean_box(0); +lean_ctor_set(x_11, 0, x_16); return x_11; } +else +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_11, 1); +lean_inc(x_17); +lean_dec(x_11); +x_18 = lean_box(0); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_18); +lean_ctor_set(x_19, 1, x_17); +return x_19; +} +} +else +{ +uint8_t x_20; +x_20 = !lean_is_exclusive(x_11); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +x_21 = lean_ctor_get(x_11, 0); +lean_dec(x_21); +x_22 = lean_ctor_get(x_13, 0); +lean_inc(x_22); +lean_dec(x_13); +lean_ctor_set(x_11, 0, x_22); +return x_11; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_11, 1); +lean_inc(x_23); +lean_dec(x_11); +x_24 = lean_ctor_get(x_13, 0); +lean_inc(x_24); +lean_dec(x_13); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +return x_25; +} +} +} +else +{ +uint8_t x_26; +x_26 = !lean_is_exclusive(x_11); +if (x_26 == 0) +{ +return x_11; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_11, 0); +x_28 = lean_ctor_get(x_11, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_11); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); +return x_12; +} } LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore(lean_object* x_1, lean_object* x_2, lean_object* x_3, uint8_t x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: @@ -14608,7 +14928,7 @@ lean_object* x_15; lean_object* x_16; x_15 = lean_ctor_get(x_14, 1); lean_inc(x_15); lean_dec(x_14); -x_16 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_15); +x_16 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_15); return x_16; } else @@ -14685,9 +15005,9 @@ x_14 = !lean_is_exclusive(x_12); if (x_14 == 0) { lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_15 = lean_ctor_get(x_12, 22); +x_15 = lean_ctor_get(x_12, 23); x_16 = l_Lean_PersistentArray_push___rarg(x_15, x_1); -lean_ctor_set(x_12, 22, x_16); +lean_ctor_set(x_12, 23, x_16); x_17 = lean_st_ref_set(x_2, x_12, x_13); x_18 = !lean_is_exclusive(x_17); if (x_18 == 0) @@ -14767,7 +15087,7 @@ lean_inc(x_26); lean_inc(x_25); lean_inc(x_24); lean_dec(x_12); -x_50 = l_Lean_PersistentArray_push___rarg(x_47, x_1); +x_50 = l_Lean_PersistentArray_push___rarg(x_48, x_1); x_51 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_51, 0, x_24); lean_ctor_set(x_51, 1, x_25); @@ -14791,8 +15111,8 @@ lean_ctor_set(x_51, 18, x_43); lean_ctor_set(x_51, 19, x_44); lean_ctor_set(x_51, 20, x_45); lean_ctor_set(x_51, 21, x_46); -lean_ctor_set(x_51, 22, x_50); -lean_ctor_set(x_51, 23, x_48); +lean_ctor_set(x_51, 22, x_47); +lean_ctor_set(x_51, 23, x_50); lean_ctor_set(x_51, 24, x_49); lean_ctor_set_uint8(x_51, sizeof(void*)*25, x_31); x_52 = lean_st_ref_set(x_2, x_51, x_13); @@ -15786,7 +16106,7 @@ return x_25; } } } -static lean_object* _init_l_Lean_Meta_Grind_add___closed__1() { +static lean_object* _init_l_Lean_Meta_Grind_add___lambda__5___closed__1() { _start: { lean_object* x_1; @@ -15794,87 +16114,311 @@ x_1 = lean_mk_string_unchecked("assert", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_Grind_add___closed__2() { +static lean_object* _init_l_Lean_Meta_Grind_add___lambda__5___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__1; -x_2 = l_Lean_Meta_Grind_add___closed__1; +x_2 = l_Lean_Meta_Grind_add___lambda__5___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; uint8_t x_15; +lean_inc(x_1); +x_14 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_storeFact(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_16 = lean_ctor_get(x_14, 1); +x_17 = lean_ctor_get(x_14, 0); +lean_dec(x_17); +x_18 = l_Lean_Meta_Grind_add___lambda__5___closed__2; +x_19 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_18, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_16); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_unbox(x_20); +lean_dec(x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_free_object(x_14); +x_22 = lean_ctor_get(x_19, 1); +lean_inc(x_22); +lean_dec(x_19); +x_23 = lean_box(0); +x_24 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_22); +return x_24; +} +else +{ +uint8_t x_25; +x_25 = !lean_is_exclusive(x_19); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_19, 1); +x_27 = lean_ctor_get(x_19, 0); +lean_dec(x_27); +x_28 = l_Lean_Meta_Grind_updateLastTag(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_26); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +lean_inc(x_1); +x_30 = l_Lean_MessageData_ofExpr(x_1); +x_31 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; +lean_ctor_set_tag(x_19, 7); +lean_ctor_set(x_19, 1, x_30); +lean_ctor_set(x_19, 0, x_31); +lean_ctor_set_tag(x_14, 7); +lean_ctor_set(x_14, 1, x_31); +lean_ctor_set(x_14, 0, x_19); +x_32 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_18, x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_29); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_33, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_34); +lean_dec(x_33); +return x_35; +} +else +{ +uint8_t x_36; +lean_free_object(x_19); +lean_free_object(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_36 = !lean_is_exclusive(x_28); +if (x_36 == 0) +{ +return x_28; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_28, 0); +x_38 = lean_ctor_get(x_28, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_28); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +lean_object* x_40; lean_object* x_41; +x_40 = lean_ctor_get(x_19, 1); +lean_inc(x_40); +lean_dec(x_19); +x_41 = l_Lean_Meta_Grind_updateLastTag(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_40); +if (lean_obj_tag(x_41) == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +lean_dec(x_41); +lean_inc(x_1); +x_43 = l_Lean_MessageData_ofExpr(x_1); +x_44 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; +x_45 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_43); +lean_ctor_set_tag(x_14, 7); +lean_ctor_set(x_14, 1, x_44); +lean_ctor_set(x_14, 0, x_45); +x_46 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_18, x_14, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_42); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_47, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_48); +lean_dec(x_47); +return x_49; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_free_object(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_50 = lean_ctor_get(x_41, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_41, 1); +lean_inc(x_51); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_52 = x_41; +} else { + lean_dec_ref(x_41); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_52)) { + x_53 = lean_alloc_ctor(1, 2, 0); +} else { + x_53 = x_52; +} +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_51); +return x_53; +} +} +} +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +x_54 = lean_ctor_get(x_14, 1); +lean_inc(x_54); +lean_dec(x_14); +x_55 = l_Lean_Meta_Grind_add___lambda__5___closed__2; +x_56 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_55, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_54); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_unbox(x_57); +lean_dec(x_57); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_59 = lean_ctor_get(x_56, 1); +lean_inc(x_59); +lean_dec(x_56); +x_60 = lean_box(0); +x_61 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_60, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_59); +return x_61; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_56, 1); +lean_inc(x_62); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + x_63 = x_56; +} else { + lean_dec_ref(x_56); + x_63 = lean_box(0); +} +x_64 = l_Lean_Meta_Grind_updateLastTag(x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_62); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_65 = lean_ctor_get(x_64, 1); +lean_inc(x_65); +lean_dec(x_64); +lean_inc(x_1); +x_66 = l_Lean_MessageData_ofExpr(x_1); +x_67 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; +if (lean_is_scalar(x_63)) { + x_68 = lean_alloc_ctor(7, 2, 0); +} else { + x_68 = x_63; + lean_ctor_set_tag(x_68, 7); +} +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_66); +x_69 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_67); +x_70 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_55, x_69, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_65); +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +lean_dec(x_70); +x_73 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_71, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_72); +lean_dec(x_71); +return x_73; +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +lean_dec(x_63); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_74 = lean_ctor_get(x_64, 0); +lean_inc(x_74); +x_75 = lean_ctor_get(x_64, 1); +lean_inc(x_75); +if (lean_is_exclusive(x_64)) { + lean_ctor_release(x_64, 0); + lean_ctor_release(x_64, 1); + x_76 = x_64; +} else { + lean_dec_ref(x_64); + x_76 = lean_box(0); +} +if (lean_is_scalar(x_76)) { + x_77 = lean_alloc_ctor(1, 2, 0); +} else { + x_77 = x_76; +} +lean_ctor_set(x_77, 0, x_74); +lean_ctor_set(x_77, 1, x_75); +return x_77; +} +} +} +} +} LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_13; uint8_t x_14; +uint8_t x_13; lean_inc(x_1); -x_13 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_storeFact(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) +x_13 = l_Lean_Expr_isTrue(x_1); +if (x_13 == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_15 = lean_ctor_get(x_13, 1); -x_16 = lean_ctor_get(x_13, 0); -lean_dec(x_16); -x_17 = l_Lean_Meta_Grind_add___closed__2; -x_18 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_15); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_unbox(x_19); -lean_dec(x_19); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_free_object(x_13); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_box(0); -x_23 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_22, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_21); -return x_23; +lean_object* x_14; lean_object* x_15; +x_14 = lean_box(0); +x_15 = l_Lean_Meta_Grind_add___lambda__5(x_1, x_2, x_3, x_14, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_15; } else { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_18); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_18, 1); -x_26 = lean_ctor_get(x_18, 0); -lean_dec(x_26); -x_27 = l_Lean_Meta_Grind_updateLastTag(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_25); -if (lean_obj_tag(x_27) == 0) -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_28 = lean_ctor_get(x_27, 1); -lean_inc(x_28); -lean_dec(x_27); -lean_inc(x_1); -x_29 = l_Lean_MessageData_ofExpr(x_1); -x_30 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; -lean_ctor_set_tag(x_18, 7); -lean_ctor_set(x_18, 1, x_29); -lean_ctor_set(x_18, 0, x_30); -lean_ctor_set_tag(x_13, 7); -lean_ctor_set(x_13, 1, x_30); -lean_ctor_set(x_13, 0, x_18); -x_31 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_17, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_28); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 1); -lean_inc(x_33); -lean_dec(x_31); -x_34 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_32, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_33); -lean_dec(x_32); -return x_34; -} -else -{ -uint8_t x_35; -lean_free_object(x_18); -lean_free_object(x_13); +lean_object* x_16; lean_object* x_17; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -15886,200 +16430,11 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_35 = !lean_is_exclusive(x_27); -if (x_35 == 0) -{ -return x_27; -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_27, 0); -x_37 = lean_ctor_get(x_27, 1); -lean_inc(x_37); -lean_inc(x_36); -lean_dec(x_27); -x_38 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_38, 0, x_36); -lean_ctor_set(x_38, 1, x_37); -return x_38; -} -} -} -else -{ -lean_object* x_39; lean_object* x_40; -x_39 = lean_ctor_get(x_18, 1); -lean_inc(x_39); -lean_dec(x_18); -x_40 = l_Lean_Meta_Grind_updateLastTag(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_39); -if (lean_obj_tag(x_40) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_41 = lean_ctor_get(x_40, 1); -lean_inc(x_41); -lean_dec(x_40); -lean_inc(x_1); -x_42 = l_Lean_MessageData_ofExpr(x_1); -x_43 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; -x_44 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_44, 0, x_43); -lean_ctor_set(x_44, 1, x_42); -lean_ctor_set_tag(x_13, 7); -lean_ctor_set(x_13, 1, x_43); -lean_ctor_set(x_13, 0, x_44); -x_45 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_17, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_41); -x_46 = lean_ctor_get(x_45, 0); -lean_inc(x_46); -x_47 = lean_ctor_get(x_45, 1); -lean_inc(x_47); -lean_dec(x_45); -x_48 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_46, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_47); -lean_dec(x_46); -return x_48; -} -else -{ -lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -lean_free_object(x_13); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_49 = lean_ctor_get(x_40, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_40, 1); -lean_inc(x_50); -if (lean_is_exclusive(x_40)) { - lean_ctor_release(x_40, 0); - lean_ctor_release(x_40, 1); - x_51 = x_40; -} else { - lean_dec_ref(x_40); - x_51 = lean_box(0); -} -if (lean_is_scalar(x_51)) { - x_52 = lean_alloc_ctor(1, 2, 0); -} else { - x_52 = x_51; -} -lean_ctor_set(x_52, 0, x_49); -lean_ctor_set(x_52, 1, x_50); -return x_52; -} -} -} -} -else -{ -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; -x_53 = lean_ctor_get(x_13, 1); -lean_inc(x_53); -lean_dec(x_13); -x_54 = l_Lean_Meta_Grind_add___closed__2; -x_55 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_54, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_53); -x_56 = lean_ctor_get(x_55, 0); -lean_inc(x_56); -x_57 = lean_unbox(x_56); -lean_dec(x_56); -if (x_57 == 0) -{ -lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_58 = lean_ctor_get(x_55, 1); -lean_inc(x_58); -lean_dec(x_55); -x_59 = lean_box(0); -x_60 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_59, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_58); -return x_60; -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_61 = lean_ctor_get(x_55, 1); -lean_inc(x_61); -if (lean_is_exclusive(x_55)) { - lean_ctor_release(x_55, 0); - lean_ctor_release(x_55, 1); - x_62 = x_55; -} else { - lean_dec_ref(x_55); - x_62 = lean_box(0); -} -x_63 = l_Lean_Meta_Grind_updateLastTag(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_61); -if (lean_obj_tag(x_63) == 0) -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; -x_64 = lean_ctor_get(x_63, 1); -lean_inc(x_64); -lean_dec(x_63); -lean_inc(x_1); -x_65 = l_Lean_MessageData_ofExpr(x_1); -x_66 = l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___closed__8; -if (lean_is_scalar(x_62)) { - x_67 = lean_alloc_ctor(7, 2, 0); -} else { - x_67 = x_62; - lean_ctor_set_tag(x_67, 7); -} -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_65); -x_68 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_68, 0, x_67); -lean_ctor_set(x_68, 1, x_66); -x_69 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_54, x_68, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_64); -x_70 = lean_ctor_get(x_69, 0); -lean_inc(x_70); -x_71 = lean_ctor_get(x_69, 1); -lean_inc(x_71); -lean_dec(x_69); -x_72 = l_Lean_Meta_Grind_add___lambda__4(x_1, x_2, x_3, x_70, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_71); -lean_dec(x_70); -return x_72; -} -else -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; -lean_dec(x_62); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_73 = lean_ctor_get(x_63, 0); -lean_inc(x_73); -x_74 = lean_ctor_get(x_63, 1); -lean_inc(x_74); -if (lean_is_exclusive(x_63)) { - lean_ctor_release(x_63, 0); - lean_ctor_release(x_63, 1); - x_75 = x_63; -} else { - lean_dec_ref(x_63); - x_75 = lean_box(0); -} -if (lean_is_scalar(x_75)) { - x_76 = lean_alloc_ctor(1, 2, 0); -} else { - x_76 = x_75; -} -lean_ctor_set(x_76, 0, x_73); -lean_ctor_set(x_76, 1, x_74); -return x_76; -} -} +x_16 = lean_box(0); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_12); +return x_17; } } } @@ -16110,6 +16465,15 @@ lean_dec(x_4); return x_14; } } +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_add___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Lean_Meta_Grind_add___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +return x_14; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addHypothesis(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -16163,6 +16527,1287 @@ return x_20; } } } +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(0u); +x_2 = lean_mk_empty_array_with_capacity(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_11 = lean_st_ref_get(x_2, x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +x_14 = lean_st_ref_take(x_2, x_13); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = !lean_is_exclusive(x_15); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_15, 6); +lean_dec(x_18); +x_19 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1; +lean_ctor_set(x_15, 6, x_19); +x_20 = lean_st_ref_set(x_2, x_15, x_16); +x_21 = lean_ctor_get(x_20, 1); +lean_inc(x_21); +lean_dec(x_20); +lean_inc(x_2); +x_22 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_21); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); +x_25 = lean_st_ref_set(x_2, x_12, x_24); +lean_dec(x_2); +x_26 = !lean_is_exclusive(x_25); +if (x_26 == 0) +{ +lean_object* x_27; +x_27 = lean_ctor_get(x_25, 0); +lean_dec(x_27); +lean_ctor_set(x_25, 0, x_23); +return x_25; +} +else +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_30 = lean_ctor_get(x_22, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_22, 1); +lean_inc(x_31); +lean_dec(x_22); +x_32 = lean_st_ref_set(x_2, x_12, x_31); +lean_dec(x_2); +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) +{ +lean_object* x_34; +x_34 = lean_ctor_get(x_32, 0); +lean_dec(x_34); +lean_ctor_set_tag(x_32, 1); +lean_ctor_set(x_32, 0, x_30); +return x_32; +} +else +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_dec(x_32); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_30); +lean_ctor_set(x_36, 1, x_35); +return x_36; +} +} +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_37 = lean_ctor_get(x_15, 0); +x_38 = lean_ctor_get(x_15, 1); +x_39 = lean_ctor_get(x_15, 2); +x_40 = lean_ctor_get(x_15, 3); +x_41 = lean_ctor_get(x_15, 4); +x_42 = lean_ctor_get(x_15, 5); +x_43 = lean_ctor_get_uint8(x_15, sizeof(void*)*25); +x_44 = lean_ctor_get(x_15, 7); +x_45 = lean_ctor_get(x_15, 8); +x_46 = lean_ctor_get(x_15, 9); +x_47 = lean_ctor_get(x_15, 10); +x_48 = lean_ctor_get(x_15, 11); +x_49 = lean_ctor_get(x_15, 12); +x_50 = lean_ctor_get(x_15, 13); +x_51 = lean_ctor_get(x_15, 14); +x_52 = lean_ctor_get(x_15, 15); +x_53 = lean_ctor_get(x_15, 16); +x_54 = lean_ctor_get(x_15, 17); +x_55 = lean_ctor_get(x_15, 18); +x_56 = lean_ctor_get(x_15, 19); +x_57 = lean_ctor_get(x_15, 20); +x_58 = lean_ctor_get(x_15, 21); +x_59 = lean_ctor_get(x_15, 22); +x_60 = lean_ctor_get(x_15, 23); +x_61 = lean_ctor_get(x_15, 24); +lean_inc(x_61); +lean_inc(x_60); +lean_inc(x_59); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_inc(x_53); +lean_inc(x_52); +lean_inc(x_51); +lean_inc(x_50); +lean_inc(x_49); +lean_inc(x_48); +lean_inc(x_47); +lean_inc(x_46); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_42); +lean_inc(x_41); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_15); +x_62 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1; +x_63 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_63, 0, x_37); +lean_ctor_set(x_63, 1, x_38); +lean_ctor_set(x_63, 2, x_39); +lean_ctor_set(x_63, 3, x_40); +lean_ctor_set(x_63, 4, x_41); +lean_ctor_set(x_63, 5, x_42); +lean_ctor_set(x_63, 6, x_62); +lean_ctor_set(x_63, 7, x_44); +lean_ctor_set(x_63, 8, x_45); +lean_ctor_set(x_63, 9, x_46); +lean_ctor_set(x_63, 10, x_47); +lean_ctor_set(x_63, 11, x_48); +lean_ctor_set(x_63, 12, x_49); +lean_ctor_set(x_63, 13, x_50); +lean_ctor_set(x_63, 14, x_51); +lean_ctor_set(x_63, 15, x_52); +lean_ctor_set(x_63, 16, x_53); +lean_ctor_set(x_63, 17, x_54); +lean_ctor_set(x_63, 18, x_55); +lean_ctor_set(x_63, 19, x_56); +lean_ctor_set(x_63, 20, x_57); +lean_ctor_set(x_63, 21, x_58); +lean_ctor_set(x_63, 22, x_59); +lean_ctor_set(x_63, 23, x_60); +lean_ctor_set(x_63, 24, x_61); +lean_ctor_set_uint8(x_63, sizeof(void*)*25, x_43); +x_64 = lean_st_ref_set(x_2, x_63, x_16); +x_65 = lean_ctor_get(x_64, 1); +lean_inc(x_65); +lean_dec(x_64); +lean_inc(x_2); +x_66 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_65); +if (lean_obj_tag(x_66) == 0) +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +x_68 = lean_ctor_get(x_66, 1); +lean_inc(x_68); +lean_dec(x_66); +x_69 = lean_st_ref_set(x_2, x_12, x_68); +lean_dec(x_2); +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +if (lean_is_exclusive(x_69)) { + lean_ctor_release(x_69, 0); + lean_ctor_release(x_69, 1); + x_71 = x_69; +} else { + lean_dec_ref(x_69); + x_71 = lean_box(0); +} +if (lean_is_scalar(x_71)) { + x_72 = lean_alloc_ctor(0, 2, 0); +} else { + x_72 = x_71; +} +lean_ctor_set(x_72, 0, x_67); +lean_ctor_set(x_72, 1, x_70); +return x_72; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_73 = lean_ctor_get(x_66, 0); +lean_inc(x_73); +x_74 = lean_ctor_get(x_66, 1); +lean_inc(x_74); +lean_dec(x_66); +x_75 = lean_st_ref_set(x_2, x_12, x_74); +lean_dec(x_2); +x_76 = lean_ctor_get(x_75, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_75)) { + lean_ctor_release(x_75, 0); + lean_ctor_release(x_75, 1); + x_77 = x_75; +} else { + lean_dec_ref(x_75); + x_77 = lean_box(0); +} +if (lean_is_scalar(x_77)) { + x_78 = lean_alloc_ctor(1, 2, 0); +} else { + x_78 = x_77; + lean_ctor_set_tag(x_78, 1); +} +lean_ctor_set(x_78, 0, x_73); +lean_ctor_set(x_78, 1, x_76); +return x_78; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg), 10, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_simpAndInternalize(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = l_Lean_Meta_Grind_alreadyInternalized(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_unbox(x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_dec(x_12); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_16 = l_Lean_Meta_Grind_simp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = lean_box(0); +x_21 = l_Lean_Meta_Grind_internalize(x_19, x_2, x_20, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18); +if (lean_obj_tag(x_21) == 0) +{ +uint8_t x_22; +x_22 = !lean_is_exclusive(x_21); +if (x_22 == 0) +{ +lean_object* x_23; +x_23 = lean_ctor_get(x_21, 0); +lean_dec(x_23); +lean_ctor_set(x_21, 0, x_17); +return x_21; +} +else +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); +lean_dec(x_21); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_17); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +else +{ +uint8_t x_26; +lean_dec(x_17); +x_26 = !lean_is_exclusive(x_21); +if (x_26 == 0) +{ +return x_21; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_21, 0); +x_28 = lean_ctor_get(x_21, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_21); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +else +{ +uint8_t x_30; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_30 = !lean_is_exclusive(x_16); +if (x_30 == 0) +{ +return x_16; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_16, 0); +x_32 = lean_ctor_get(x_16, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_16); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +else +{ +uint8_t x_34; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_34 = !lean_is_exclusive(x_12); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_object* x_38; +x_35 = lean_ctor_get(x_12, 0); +lean_dec(x_35); +x_36 = lean_box(0); +x_37 = 1; +x_38 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_38, 0, x_1); +lean_ctor_set(x_38, 1, x_36); +lean_ctor_set_uint8(x_38, sizeof(void*)*2, x_37); +lean_ctor_set(x_12, 0, x_38); +return x_12; +} +else +{ +lean_object* x_39; lean_object* x_40; uint8_t x_41; lean_object* x_42; lean_object* x_43; +x_39 = lean_ctor_get(x_12, 1); +lean_inc(x_39); +lean_dec(x_12); +x_40 = lean_box(0); +x_41 = 1; +x_42 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_42, 0, x_1); +lean_ctor_set(x_42, 1, x_40); +lean_ctor_set_uint8(x_42, sizeof(void*)*2, x_41); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_39); +return x_43; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_11, 0, x_1); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_10); +return x_12; +} +} +static lean_object* _init_l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_proveEq_x3f___lambda__1___boxed), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +x_15 = lean_grind_mk_eq_proof(x_1, x_2, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); +x_18 = l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1; +x_19 = lean_ctor_get(x_3, 1); +lean_inc(x_19); +lean_dec(x_3); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; +x_20 = lean_ctor_get(x_4, 1); +lean_inc(x_20); +lean_dec(x_4); +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_21; +x_21 = lean_apply_10(x_18, x_16, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_17); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +lean_dec(x_20); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_23 = l_Lean_Meta_mkEqSymm(x_22, x_10, x_11, x_12, x_13, x_17); +if (lean_obj_tag(x_23) == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_26 = l_Lean_Meta_mkEqTrans(x_16, x_24, x_10, x_11, x_12, x_13, x_25); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = lean_apply_10(x_18, x_27, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_28); +return x_29; +} +else +{ +uint8_t x_30; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_30 = !lean_is_exclusive(x_26); +if (x_30 == 0) +{ +return x_26; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_26, 0); +x_32 = lean_ctor_get(x_26, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_26); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +else +{ +uint8_t x_34; +lean_dec(x_16); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_34 = !lean_is_exclusive(x_23); +if (x_34 == 0) +{ +return x_23; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_23, 0); +x_36 = lean_ctor_get(x_23, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_23); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; +} +} +} +} +else +{ +lean_object* x_38; +x_38 = lean_ctor_get(x_4, 1); +lean_inc(x_38); +lean_dec(x_4); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_19, 0); +lean_inc(x_39); +lean_dec(x_19); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_40 = l_Lean_Meta_mkEqTrans(x_39, x_16, x_10, x_11, x_12, x_13, x_17); +if (lean_obj_tag(x_40) == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +lean_dec(x_40); +x_43 = lean_apply_10(x_18, x_41, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_42); +return x_43; +} +else +{ +uint8_t x_44; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_44 = !lean_is_exclusive(x_40); +if (x_44 == 0) +{ +return x_40; +} +else +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_40, 0); +x_46 = lean_ctor_get(x_40, 1); +lean_inc(x_46); +lean_inc(x_45); +lean_dec(x_40); +x_47 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +return x_47; +} +} +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_19, 0); +lean_inc(x_48); +lean_dec(x_19); +x_49 = lean_ctor_get(x_38, 0); +lean_inc(x_49); +lean_dec(x_38); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_50 = l_Lean_Meta_mkEqTrans(x_48, x_16, x_10, x_11, x_12, x_13, x_17); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +lean_dec(x_50); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_53 = l_Lean_Meta_mkEqSymm(x_49, x_10, x_11, x_12, x_13, x_52); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_56 = l_Lean_Meta_mkEqTrans(x_51, x_54, x_10, x_11, x_12, x_13, x_55); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +x_59 = lean_apply_10(x_18, x_57, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_58); +return x_59; +} +else +{ +uint8_t x_60; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_60 = !lean_is_exclusive(x_56); +if (x_60 == 0) +{ +return x_56; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_56, 0); +x_62 = lean_ctor_get(x_56, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_56); +x_63 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_62); +return x_63; +} +} +} +else +{ +uint8_t x_64; +lean_dec(x_51); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_64 = !lean_is_exclusive(x_53); +if (x_64 == 0) +{ +return x_53; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_53, 0); +x_66 = lean_ctor_get(x_53, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_53); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; +} +} +} +else +{ +uint8_t x_68; +lean_dec(x_49); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_68 = !lean_is_exclusive(x_50); +if (x_68 == 0) +{ +return x_50; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_69 = lean_ctor_get(x_50, 0); +x_70 = lean_ctor_get(x_50, 1); +lean_inc(x_70); +lean_inc(x_69); +lean_dec(x_50); +x_71 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_71, 0, x_69); +lean_ctor_set(x_71, 1, x_70); +return x_71; +} +} +} +} +} +else +{ +uint8_t x_72; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +x_72 = !lean_is_exclusive(x_15); +if (x_72 == 0) +{ +return x_15; +} +else +{ +lean_object* x_73; lean_object* x_74; lean_object* x_75; +x_73 = lean_ctor_get(x_15, 0); +x_74 = lean_ctor_get(x_15, 1); +lean_inc(x_74); +lean_inc(x_73); +lean_dec(x_15); +x_75 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +return x_75; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_2); +lean_inc(x_1); +x_15 = l_Lean_Meta_Grind_hasSameType(x_1, x_2, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_unbox(x_16); +lean_dec(x_16); +if (x_17 == 0) +{ +uint8_t x_18; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_15); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_15, 0); +lean_dec(x_19); +x_20 = lean_box(0); +lean_ctor_set(x_15, 0, x_20); +return x_15; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +x_21 = lean_ctor_get(x_15, 1); +lean_inc(x_21); +lean_dec(x_15); +x_22 = lean_box(0); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_21); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_box(0); +x_26 = l_Lean_Meta_Grind_proveEq_x3f___lambda__2(x_1, x_2, x_3, x_4, x_25, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_24); +return x_26; +} +} +else +{ +uint8_t x_27; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) +{ +return x_15; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_unsigned_to_nat(0u); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_13 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_simpAndInternalize(x_1, x_12, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_16 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_17 = lean_ctor_get(x_16, 1); +lean_inc(x_17); +lean_dec(x_16); +x_18 = lean_ctor_get(x_2, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_14, 0); +lean_inc(x_19); +x_20 = l_Lean_Meta_Grind_isEqv(x_18, x_19, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_17); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_unbox(x_21); +lean_dec(x_21); +if (x_22 == 0) +{ +uint8_t x_23; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_23 = !lean_is_exclusive(x_20); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +x_24 = lean_ctor_get(x_20, 0); +lean_dec(x_24); +x_25 = lean_box(0); +lean_ctor_set(x_20, 0, x_25); +return x_20; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_20, 1); +lean_inc(x_26); +lean_dec(x_20); +x_27 = lean_box(0); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_26); +return x_28; +} +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_20, 1); +lean_inc(x_29); +lean_dec(x_20); +x_30 = lean_box(0); +x_31 = l_Lean_Meta_Grind_proveEq_x3f___lambda__3(x_18, x_19, x_2, x_14, x_30, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_29); +return x_31; +} +} +else +{ +uint8_t x_32; +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_32 = !lean_is_exclusive(x_16); +if (x_32 == 0) +{ +return x_16; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_16, 0); +x_34 = lean_ctor_get(x_16, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_16); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +else +{ +uint8_t x_36; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_36 = !lean_is_exclusive(x_13); +if (x_36 == 0) +{ +return x_13; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_13, 0); +x_38 = lean_ctor_get(x_13, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_13); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; lean_object* x_13; lean_object* x_42; lean_object* x_43; uint8_t x_44; +x_42 = l_Lean_Meta_Grind_alreadyInternalized(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_unbox(x_43); +if (x_44 == 0) +{ +lean_object* x_45; uint8_t x_46; +x_45 = lean_ctor_get(x_42, 1); +lean_inc(x_45); +lean_dec(x_42); +x_46 = lean_unbox(x_43); +lean_dec(x_43); +x_12 = x_46; +x_13 = x_45; +goto block_41; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; uint8_t x_51; +lean_dec(x_43); +x_47 = lean_ctor_get(x_42, 1); +lean_inc(x_47); +lean_dec(x_42); +x_48 = l_Lean_Meta_Grind_alreadyInternalized(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_47); +x_49 = lean_ctor_get(x_48, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_48, 1); +lean_inc(x_50); +lean_dec(x_48); +x_51 = lean_unbox(x_49); +lean_dec(x_49); +x_12 = x_51; +x_13 = x_50; +goto block_41; +} +block_41: +{ +if (x_12 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_14 = lean_unsigned_to_nat(0u); +x_15 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_simpAndInternalize), 11, 2); +lean_closure_set(x_15, 0, x_1); +lean_closure_set(x_15, 1, x_14); +x_16 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_proveEq_x3f___lambda__4), 11, 1); +lean_closure_set(x_16, 0, x_2); +x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at___private_Lean_Meta_Tactic_Grind_Canon_0__Lean_Meta_Grind_Canon_isDefEqBounded___spec__1___rarg), 11, 2); +lean_closure_set(x_17, 0, x_15); +lean_closure_set(x_17, 1, x_16); +x_18 = l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg(x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_13); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = l_Lean_Meta_Grind_isEqv(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_13); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_unbox(x_20); +lean_dec(x_20); +if (x_21 == 0) +{ +uint8_t x_22; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_22 = !lean_is_exclusive(x_19); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_19, 0); +lean_dec(x_23); +x_24 = lean_box(0); +lean_ctor_set(x_19, 0, x_24); +return x_19; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_19, 1); +lean_inc(x_25); +lean_dec(x_19); +x_26 = lean_box(0); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_25); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; +x_28 = lean_ctor_get(x_19, 1); +lean_inc(x_28); +lean_dec(x_19); +x_29 = lean_grind_mk_eq_proof(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_28); +if (lean_obj_tag(x_29) == 0) +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = lean_ctor_get(x_29, 0); +x_32 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_29, 0, x_32); +return x_29; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_29, 0); +x_34 = lean_ctor_get(x_29, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_29); +x_35 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_35, 0, x_33); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_34); +return x_36; +} +} +else +{ +uint8_t x_37; +x_37 = !lean_is_exclusive(x_29); +if (x_37 == 0) +{ +return x_29; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_29, 0); +x_39 = lean_ctor_get(x_29, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_29); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Meta_Grind_proveEq_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Meta_Grind_proveEq_x3f___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_5); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_proveEq_x3f___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Meta_Grind_proveEq_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_5); +return x_15; +} +} lean_object* initialize_Init_Grind_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_LitValues(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Types(uint8_t builtin, lean_object*); @@ -16172,6 +17817,7 @@ lean_object* initialize_Lean_Meta_Tactic_Grind_Ctor(uint8_t builtin, lean_object lean_object* initialize_Lean_Meta_Tactic_Grind_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Beta(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Internalize(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_Simp(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_Core(uint8_t builtin, lean_object* w) { lean_object * res; @@ -16204,6 +17850,9 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Internalize(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_Simp(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2___closed__1 = _init_l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2___closed__1(); l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_eraseAux___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__2___closed__2(); l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___lambda__1___closed__1 = _init_l_Lean_RBNode_forIn_visit___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_removeParents___spec__4___lambda__1___closed__1(); @@ -16340,8 +17989,12 @@ l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__4 lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__4); l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__5(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqStep___closed__5); -l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_addEqCore_processTodo___closed__1); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__1); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___spec__1___lambda__1___closed__2); +l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_processNewEqs___closed__1); l_Lean_Meta_Grind_add_go___closed__1 = _init_l_Lean_Meta_Grind_add_go___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_add_go___closed__1); l_Lean_Meta_Grind_add_go___closed__2 = _init_l_Lean_Meta_Grind_add_go___closed__2(); @@ -16352,10 +18005,14 @@ l_Lean_Meta_Grind_add___lambda__3___closed__1 = _init_l_Lean_Meta_Grind_add___la lean_mark_persistent(l_Lean_Meta_Grind_add___lambda__3___closed__1); l_Lean_Meta_Grind_add___lambda__3___closed__2 = _init_l_Lean_Meta_Grind_add___lambda__3___closed__2(); lean_mark_persistent(l_Lean_Meta_Grind_add___lambda__3___closed__2); -l_Lean_Meta_Grind_add___closed__1 = _init_l_Lean_Meta_Grind_add___closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_add___closed__1); -l_Lean_Meta_Grind_add___closed__2 = _init_l_Lean_Meta_Grind_add___closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_add___closed__2); +l_Lean_Meta_Grind_add___lambda__5___closed__1 = _init_l_Lean_Meta_Grind_add___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_add___lambda__5___closed__1); +l_Lean_Meta_Grind_add___lambda__5___closed__2 = _init_l_Lean_Meta_Grind_add___lambda__5___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_add___lambda__5___closed__2); +l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Core_0__Lean_Meta_Grind_withoutModifyingState___rarg___closed__1); +l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_proveEq_x3f___lambda__2___closed__1); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Ctor.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Ctor.c index 6b5b40158b..567cc7ac44 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Ctor.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Ctor.c @@ -23,7 +23,7 @@ lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, l uint64_t lean_uint64_lor(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateCtor(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Ctor_0__Lean_Meta_Grind_propagateInjEqs___closed__3; lean_object* lean_mk_array(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateCtor___lambda__3___closed__2; @@ -213,7 +213,7 @@ x_15 = l___private_Lean_Meta_Tactic_Grind_Ctor_0__Lean_Meta_Grind_propagateInjEq x_16 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_16, 0, x_14); lean_ctor_set(x_16, 1, x_15); -x_17 = l_Lean_Meta_Grind_reportIssue(x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_17 = l_Lean_Meta_Grind_reportIssue(x_16, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); x_18 = !lean_is_exclusive(x_17); if (x_18 == 0) { diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatch.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatch.c index 50ffbfaf2c..fa9177bf06 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatch.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatch.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.EMatch -// Imports: Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Intro Lean.Meta.Tactic.Grind.DoNotSimp +// Imports: Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Intro Lean.Meta.Tactic.Grind.DoNotSimp Lean.Meta.Tactic.Grind.MatchCond Lean.Meta.Tactic.Grind.Core #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -18,10 +18,12 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_mkConstWithLevelParams___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorem___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l___private_Lean_Meta_Tactic_Grind_EMatchTheorem_0__Lean_Meta_Grind_dontCare; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkNatLit(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_addTrace___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__7___closed__2; @@ -38,6 +40,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedContext; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processContinue___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__2___closed__3; +lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ConstantInfo_levelParams(lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processMatch___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -47,10 +50,9 @@ LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_G static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___spec__1___closed__6; uint64_t lean_uint64_lor(uint64_t, uint64_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_withInitApp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3; uint8_t l_Lean_Expr_isApp(lean_object*); lean_object* l_Lean_Meta_Grind_markAsDoNotSimp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__3; lean_object* l_Lean_MessageData_ofList(lean_object*); @@ -65,6 +67,7 @@ uint8_t lean_usize_dec_eq(size_t, size_t); static lean_object* l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArgs_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_Match_isMatchEqnTheorem(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__4; lean_object* l_instInhabitedReaderT___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__1; @@ -73,9 +76,9 @@ lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getMaxGeneration___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Meta_Grind_grind_debug_proofs; -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_Meta_Grind_mkEMatchTheoremCore___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processOffset___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Environment_find_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorems___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -88,6 +91,8 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_Choice_updateGen(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_ReaderT_read___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___spec__1___closed__3; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2; lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); static lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorem___lambda__1___closed__2; lean_object* l_Lean_stringToMessageData(lean_object*); @@ -121,6 +126,7 @@ lean_object* l_Lean_Meta_Grind_EMatchTheorem_getProofWithFreshMVarLevels(lean_ob LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_checkMaxEmatchExceeded(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forMAux___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); @@ -131,6 +137,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_ size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematch___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_markAsMatchCond(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2___closed__2; lean_object* lean_checked_assign(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -139,15 +146,13 @@ lean_object* l_Array_reverse___rarg(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___closed__6; lean_object* lean_st_ref_take(lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___spec__1___closed__4; -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7; static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData___spec__1___closed__3; uint8_t lean_expr_eqv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__12___rarg(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedState; LEAN_EXPORT lean_object* l_Array_anyMUnsafe_any___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__10(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processChoices(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofSyntax(lean_object*); @@ -157,16 +162,15 @@ lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lea LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__12___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArgs_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData___spec__1(size_t, size_t, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8; extern lean_object* l___private_Lean_Expr_0__Lean_natAddFn; lean_object* l_Lean_Meta_Grind_checkMaxInstancesExceeded(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematch___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7; static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withLocalDeclImp___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_groundPattern_x3f(lean_object*); static lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArgsPrefix_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; lean_object* l_Lean_PersistentArray_append___rarg(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__2; lean_object* l_Lean_Meta_check(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -182,19 +186,23 @@ LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_G static lean_object* l_Lean_Meta_Grind_ematch___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__1; lean_object* lean_st_ref_get(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkAppM(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedContext___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forMAux___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_List_isEmpty___rarg(lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_to_list(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1(lean_object*); lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3; static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___spec__1___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forM___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_withInitApp(lean_object*); lean_object* l_Lean_Expr_toHeadIndex(lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData(lean_object*); @@ -205,7 +213,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_ static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__2; lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withNewMCtxDepthImp___rarg(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_constName_x21(lean_object*); extern lean_object* l_Lean_instInhabitedExpr; @@ -239,7 +246,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1; +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___boxed(lean_object**); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -250,12 +257,12 @@ static lean_object* l_Lean_Meta_Grind_ematch___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2___closed__4; extern lean_object* l_Lean_Meta_instMonadMetaM; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__5; -static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorem___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__9___boxed(lean_object**); static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processContinue___spec__1___closed__1; uint8_t l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___spec__1___boxed(lean_object**); +static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___closed__5; lean_object* l_Lean_MessageData_ofConstName(lean_object*, uint8_t); lean_object* l_OptionT_instMonad___rarg(lean_object*); @@ -267,7 +274,6 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_ lean_object* l_List_tail_x21___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__4(lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processMatch___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); @@ -278,19 +284,21 @@ LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_ematchTheorems(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_forallMetaBoundedTelescope(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_EMatch_ematchTheorems___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4; uint8_t l_Lean_Meta_Grind_ENode_isCongrRoot(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematchAndAssert___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__3; lean_object* l_Lean_PersistentHashMap_find_x3f___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__1(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processContinue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_EMatch_M_run_x27(lean_object*); lean_object* l_Lean_Expr_constLevels_x21(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematchAndAssert___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1(lean_object*); LEAN_EXPORT lean_object* l_ReaderT_bind___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__11___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_Grind_isEqBwdPattern(lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematch___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__3___boxed(lean_object**); @@ -301,7 +309,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_ uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT uint8_t l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_eqvFunctions(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_shareCommon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_addTheoremInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppPrefix(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -318,6 +326,7 @@ static double l_Lean_addTrace___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__7___boxed(lean_object**); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2___closed__1; lean_object* l_Lean_Meta_Grind_markTheoremInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8(lean_object*); lean_object* l_Lean_Meta_mkHasTypeButIsExpectedMsg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkForallFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -329,6 +338,7 @@ lean_object* lean_panic_fn(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processOffset(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_isEqv(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__2___closed__3; lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -340,10 +350,12 @@ uint64_t lean_uint64_shift_left(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematchAndAssert___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArgs_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_reverse___rarg(lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5; +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5; lean_object* lean_array_mk(lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchEqBwdPat___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_instantiateMVarsCore(lean_object*, lean_object*); @@ -367,14 +379,17 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematchAndAssert___lambda__2(lean_obje LEAN_EXPORT lean_object* l_ReaderT_bind___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__11(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_unassigned___closed__3; +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__7; +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_canon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11; -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_proveEq_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_EMatch_instInhabitedContext___closed__3; lean_object* l_Lean_Meta_Grind_Origin_key(lean_object*); @@ -415,12 +430,12 @@ lean_object* l_Lean_Meta_isProof(lean_object*, lean_object*, lean_object*, lean_ LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processMatch___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__2___closed__5; +lean_object* l_Lean_Meta_isEqnThm(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_instMonad___rarg(lean_object*); lean_object* l_Lean_Meta_Grind_internalize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processContinue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_ematchAndAssert___closed__2; LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_processMatch___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4; static lean_object* _init_l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__1() { _start: { @@ -905,7 +920,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__2; -x_3 = lean_unsigned_to_nat(88u); +x_3 = lean_unsigned_to_nat(90u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -1187,7 +1202,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__4; -x_3 = lean_unsigned_to_nat(109u); +x_3 = lean_unsigned_to_nat(111u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -1218,7 +1233,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__4; -x_3 = lean_unsigned_to_nat(108u); +x_3 = lean_unsigned_to_nat(110u); x_4 = lean_unsigned_to_nat(4u); x_5 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_matchArg_x3f___closed__7; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -4769,7 +4784,7 @@ lean_dec(x_3); return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { lean_object* x_14; @@ -4777,11 +4792,11 @@ x_14 = lean_apply_12(x_1, x_8, x_2, x_3, x_4, x_5, x_6, x_7, x_9, x_10, x_11, x_ return x_14; } } -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg(lean_object* x_1, uint8_t x_2, lean_object* x_3, lean_object* x_4, uint8_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { _start: { lean_object* x_17; lean_object* x_18; -x_17 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___lambda__1), 13, 7); +x_17 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___lambda__1), 13, 7); lean_closure_set(x_17, 0, x_4); lean_closure_set(x_17, 1, x_6); lean_closure_set(x_17, 2, x_7); @@ -4836,14 +4851,192 @@ return x_26; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___boxed), 16, 0); +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___boxed), 16, 0); return x_2; } } +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; +x_15 = lean_expr_instantiate1(x_1, x_3); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_16 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds(x_15, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; uint8_t x_23; uint8_t x_24; lean_object* x_25; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_box(0); +x_20 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_20, 0, x_3); +lean_ctor_set(x_20, 1, x_19); +x_21 = lean_array_mk(x_20); +x_22 = 0; +x_23 = 1; +x_24 = 1; +x_25 = l_Lean_Meta_mkForallFVars(x_21, x_17, x_22, x_23, x_24, x_10, x_11, x_12, x_13, x_18); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_21); +return x_25; +} +else +{ +uint8_t x_26; +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_3); +x_26 = !lean_is_exclusive(x_16); +if (x_26 == 0) +{ +return x_16; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_16, 0); +x_28 = lean_ctor_get(x_16, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_16); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +if (lean_obj_tag(x_1) == 7) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; +x_14 = lean_ctor_get(x_1, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_1, 1); +lean_inc(x_15); +x_16 = lean_ctor_get(x_1, 2); +lean_inc(x_16); +x_17 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); +lean_dec(x_1); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_15); +x_18 = l_Lean_Meta_isProp(x_15, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 1); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1___boxed), 14, 2); +lean_closure_set(x_21, 0, x_16); +lean_closure_set(x_21, 1, x_2); +x_22 = lean_unbox(x_19); +lean_dec(x_19); +if (x_22 == 0) +{ +uint8_t x_23; lean_object* x_24; +x_23 = 0; +x_24 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg(x_14, x_17, x_15, x_21, x_23, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_20); +return x_24; +} +else +{ +lean_object* x_25; uint8_t x_26; lean_object* x_27; +x_25 = l_Lean_Meta_Grind_markAsMatchCond(x_15); +x_26 = 0; +x_27 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg(x_14, x_17, x_25, x_21, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_20); +return x_27; +} +} +else +{ +uint8_t x_28; +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_28 = !lean_is_exclusive(x_18); +if (x_28 == 0) +{ +return x_18; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_18, 0); +x_30 = lean_ctor_get(x_18, 1); +lean_inc(x_30); +lean_inc(x_29); +lean_dec(x_18); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +return x_31; +} +} +} +else +{ +lean_object* x_32; +x_32 = lean_apply_12(x_2, x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_32; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; uint8_t x_18; lean_object* x_19; +x_17 = lean_unbox(x_2); +lean_dec(x_2); +x_18 = lean_unbox(x_5); +lean_dec(x_5); +x_19 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___spec__1___rarg(x_1, x_17, x_3, x_4, x_18, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +return x_19; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_1); +return x_15; +} +} static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__1() { _start: { @@ -4954,70 +5147,7 @@ lean_ctor_set(x_14, 1, x_13); return x_14; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { -_start: -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_expr_instantiate1(x_1, x_3); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -x_16 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(x_15, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; uint8_t x_23; uint8_t x_24; lean_object* x_25; -x_17 = lean_ctor_get(x_16, 0); -lean_inc(x_17); -x_18 = lean_ctor_get(x_16, 1); -lean_inc(x_18); -lean_dec(x_16); -x_19 = lean_box(0); -x_20 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_20, 0, x_3); -lean_ctor_set(x_20, 1, x_19); -x_21 = lean_array_mk(x_20); -x_22 = 0; -x_23 = 1; -x_24 = 1; -x_25 = l_Lean_Meta_mkForallFVars(x_21, x_17, x_22, x_23, x_24, x_10, x_11, x_12, x_13, x_18); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_21); -return x_25; -} -else -{ -uint8_t x_26; -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_3); -x_26 = !lean_is_exclusive(x_16); -if (x_26 == 0) -{ -return x_16; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_16, 0); -x_28 = lean_ctor_get(x_16, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_16); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; -} -} -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1() { _start: { lean_object* x_1; @@ -5025,227 +5155,125 @@ x_1 = lean_mk_string_unchecked("Eq", 2, 2); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1; +x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -if (lean_obj_tag(x_1) == 7) +lean_object* x_14; uint8_t x_15; +lean_inc(x_2); +x_14 = l_Lean_Expr_cleanupAnnotations(x_2); +x_15 = l_Lean_Expr_isApp(x_14); +if (x_15 == 0) { -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; lean_object* x_18; -x_14 = lean_ctor_get(x_1, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_1, 1); -lean_inc(x_15); -x_16 = lean_ctor_get(x_1, 2); -lean_inc(x_16); -x_17 = lean_ctor_get_uint8(x_1, sizeof(void*)*3 + 8); -lean_dec(x_1); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -x_18 = l_Lean_Meta_Grind_markAsDoNotSimp(x_15, x_9, x_10, x_11, x_12, x_13); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -x_21 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed), 14, 2); -lean_closure_set(x_21, 0, x_16); -lean_closure_set(x_21, 1, x_2); -x_22 = 0; -x_23 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg(x_14, x_17, x_19, x_21, x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_20); -return x_23; -} -else -{ -uint8_t x_24; -lean_dec(x_16); +lean_object* x_16; lean_dec(x_14); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_24 = !lean_is_exclusive(x_18); -if (x_24 == 0) -{ -return x_18; +lean_dec(x_1); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_2); +lean_ctor_set(x_16, 1, x_13); +return x_16; } else { -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_18, 0); -x_26 = lean_ctor_get(x_18, 1); -lean_inc(x_26); -lean_inc(x_25); +lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_17 = l_Lean_Expr_appArg(x_14, lean_box(0)); +x_18 = l_Lean_Expr_appFnCleanup(x_14, lean_box(0)); +x_19 = l_Lean_Expr_isApp(x_18); +if (x_19 == 0) +{ +lean_object* x_20; lean_dec(x_18); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -return x_27; -} -} +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_1); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_2); +lean_ctor_set(x_20, 1, x_13); +return x_20; } else { -lean_object* x_28; uint8_t x_29; -lean_inc(x_1); -x_28 = l_Lean_Expr_cleanupAnnotations(x_1); -x_29 = l_Lean_Expr_isApp(x_28); -if (x_29 == 0) +lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_21 = l_Lean_Expr_appArg(x_18, lean_box(0)); +x_22 = l_Lean_Expr_appFnCleanup(x_18, lean_box(0)); +x_23 = l_Lean_Expr_isApp(x_22); +if (x_23 == 0) +{ +lean_object* x_24; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_1); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_2); +lean_ctor_set(x_24, 1, x_13); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_25 = l_Lean_Expr_appArg(x_22, lean_box(0)); +x_26 = l_Lean_Expr_appFnCleanup(x_22, lean_box(0)); +x_27 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2; +x_28 = l_Lean_Expr_isConstOf(x_26, x_27); +if (x_28 == 0) +{ +lean_object* x_29; +lean_dec(x_26); +lean_dec(x_25); +lean_dec(x_21); +lean_dec(x_17); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_1); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_2); +lean_ctor_set(x_29, 1, x_13); +return x_29; +} +else { lean_object* x_30; -lean_dec(x_28); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); lean_dec(x_2); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_1); -lean_ctor_set(x_30, 1, x_13); +x_30 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1(x_1, x_26, x_25, x_21, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_26); return x_30; } -else -{ -lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_31 = l_Lean_Expr_appArg(x_28, lean_box(0)); -x_32 = l_Lean_Expr_appFnCleanup(x_28, lean_box(0)); -x_33 = l_Lean_Expr_isApp(x_32); -if (x_33 == 0) -{ -lean_object* x_34; -lean_dec(x_32); -lean_dec(x_31); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_1); -lean_ctor_set(x_34, 1, x_13); -return x_34; -} -else -{ -lean_object* x_35; lean_object* x_36; uint8_t x_37; -x_35 = l_Lean_Expr_appArg(x_32, lean_box(0)); -x_36 = l_Lean_Expr_appFnCleanup(x_32, lean_box(0)); -x_37 = l_Lean_Expr_isApp(x_36); -if (x_37 == 0) -{ -lean_object* x_38; -lean_dec(x_36); -lean_dec(x_35); -lean_dec(x_31); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_1); -lean_ctor_set(x_38, 1, x_13); -return x_38; -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; -x_39 = l_Lean_Expr_appArg(x_36, lean_box(0)); -x_40 = l_Lean_Expr_appFnCleanup(x_36, lean_box(0)); -x_41 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2; -x_42 = l_Lean_Expr_isConstOf(x_40, x_41); -if (x_42 == 0) -{ -lean_object* x_43; -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_35); -lean_dec(x_31); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_1); -lean_ctor_set(x_43, 1, x_13); -return x_43; -} -else -{ -lean_object* x_44; -lean_dec(x_1); -x_44 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1(x_2, x_40, x_39, x_35, x_31, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_40); -return x_44; } } } } } -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -uint8_t x_17; uint8_t x_18; lean_object* x_19; -x_17 = lean_unbox(x_2); -lean_dec(x_2); -x_18 = lean_unbox(x_5); -lean_dec(x_5); -x_19 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___spec__1___rarg(x_1, x_17, x_3, x_4, x_18, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); -return x_19; +lean_object* x_14; lean_object* x_15; +x_14 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed), 13, 1); +lean_closure_set(x_14, 0, x_2); +x_15 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds(x_1, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +return x_15; } } LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { @@ -5282,13 +5310,18 @@ lean_dec(x_2); return x_14; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_15; -x_15 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); -lean_dec(x_1); -return x_15; +lean_object* x_14; +x_14 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_14; } } LEAN_EXPORT lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { @@ -6105,6 +6138,24 @@ return x_107; } } } +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_1); +lean_ctor_set(x_13, 1, x_12); +return x_13; +} +} +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg___boxed), 12, 0); +return x_2; +} +} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { @@ -6428,12 +6479,23 @@ lean_inc(x_22); lean_dec(x_20); x_23 = l_Lean_Meta_Grind_Origin_key(x_3); x_24 = l_Lean_Meta_Match_isMatchEqnTheorem(x_22, x_23); -lean_dec(x_23); if (x_24 == 0) { -lean_object* x_25; lean_object* x_26; -x_25 = lean_box(0); -x_26 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2(x_2, x_1, x_3, x_17, x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = l_Lean_Meta_isEqnThm(x_23, x_13, x_14, x_21); +lean_dec(x_23); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_unbox(x_26); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_25, 1); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_box(0); +x_30 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2(x_2, x_1, x_3, x_17, x_29, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_28); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -6444,13 +6506,15 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_26; +return x_30; } else { -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_5, 1); -lean_inc(x_27); +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_25, 1); +lean_inc(x_31); +lean_dec(x_25); +x_32 = lean_alloc_closure((void*)(l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg___boxed), 12, 0); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -6461,68 +6525,32 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -x_28 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(x_17, x_27, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); -if (lean_obj_tag(x_28) == 0) +x_33 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateEqnTypeConds(x_17, x_32, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_31); +if (lean_obj_tag(x_33) == 0) { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -lean_dec(x_28); -x_31 = lean_box(0); -x_32 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2(x_2, x_1, x_3, x_29, x_31, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_30); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -return x_32; -} -else -{ -uint8_t x_33; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_1); -x_33 = !lean_is_exclusive(x_28); -if (x_33 == 0) -{ -return x_28; -} -else -{ -lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_28, 0); -x_35 = lean_ctor_get(x_28, 1); -lean_inc(x_35); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_34 = lean_ctor_get(x_33, 0); lean_inc(x_34); -lean_dec(x_28); -x_36 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_36, 0, x_34); -lean_ctor_set(x_36, 1, x_35); -return x_36; -} -} -} +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); +x_36 = lean_box(0); +x_37 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2(x_2, x_1, x_3, x_34, x_36, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_35); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_37; } else { -uint8_t x_37; +uint8_t x_38; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -6535,23 +6563,134 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_1); -x_37 = !lean_is_exclusive(x_16); -if (x_37 == 0) +x_38 = !lean_is_exclusive(x_33); +if (x_38 == 0) +{ +return x_33; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_33, 0); +x_40 = lean_ctor_get(x_33, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_33); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +} +else +{ +lean_object* x_42; lean_object* x_43; +lean_dec(x_23); +x_42 = lean_ctor_get(x_5, 1); +lean_inc(x_42); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_43 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType(x_17, x_42, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +if (lean_obj_tag(x_43) == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; +x_44 = lean_ctor_get(x_43, 0); +lean_inc(x_44); +x_45 = lean_ctor_get(x_43, 1); +lean_inc(x_45); +lean_dec(x_43); +x_46 = lean_box(0); +x_47 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__2(x_2, x_1, x_3, x_44, x_46, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_45); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +return x_47; +} +else +{ +uint8_t x_48; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_48 = !lean_is_exclusive(x_43); +if (x_48 == 0) +{ +return x_43; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_43, 0); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_43); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +} +else +{ +uint8_t x_52; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_52 = !lean_is_exclusive(x_16); +if (x_52 == 0) { return x_16; } else { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_16, 0); -x_39 = lean_ctor_get(x_16, 1); -lean_inc(x_39); -lean_inc(x_38); +lean_object* x_53; lean_object* x_54; lean_object* x_55; +x_53 = lean_ctor_get(x_16, 0); +x_54 = lean_ctor_get(x_16, 1); +lean_inc(x_54); +lean_inc(x_53); lean_dec(x_16); -x_40 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -return x_40; +x_55 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_55, 0, x_53); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } } @@ -6770,6 +6909,24 @@ lean_dec(x_3); return x_14; } } +LEAN_EXPORT lean_object* l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_ReaderT_pure___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__8___rarg(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_13; +} +} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { _start: { @@ -6878,7 +7035,7 @@ x_15 = lean_apply_11(x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x return x_15; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1() { _start: { lean_object* x_1; @@ -6886,16 +7043,16 @@ x_1 = lean_mk_string_unchecked("type error constructing proof for ", 34, 34); return x_1; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3() { _start: { lean_object* x_1; @@ -6903,16 +7060,16 @@ x_1 = lean_mk_string_unchecked("\nwhen assigning metavariable ", 29, 29); return x_1; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5() { _start: { lean_object* x_1; @@ -6920,16 +7077,16 @@ x_1 = lean_mk_string_unchecked(" with ", 6, 6); return x_1; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7() { _start: { lean_object* x_1; @@ -6937,16 +7094,16 @@ x_1 = lean_mk_string_unchecked("\n", 1, 1); return x_1; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9() { _start: { lean_object* x_1; lean_object* x_2; @@ -6956,11 +7113,11 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; x_2 = lean_box(0); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -6968,16 +7125,271 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11() { +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20) { +_start: +{ +lean_object* x_21; +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +x_21 = lean_checked_assign(x_1, x_8, x_16, x_17, x_18, x_19, x_20); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_unbox(x_22); +lean_dec(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_7); +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); +lean_dec(x_21); +x_25 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_2, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_24); +if (lean_obj_tag(x_25) == 0) +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +lean_inc(x_19); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +x_28 = l_Lean_Meta_mkHasTypeButIsExpectedMsg(x_3, x_4, x_16, x_17, x_18, x_19, x_27); +if (lean_obj_tag(x_28) == 0) +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; uint8_t x_47; +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2; +x_32 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_26); +x_33 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4; +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +x_35 = l_Lean_MessageData_ofExpr(x_5); +x_36 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); +x_37 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6; +x_38 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_38, 0, x_36); +lean_ctor_set(x_38, 1, x_37); +x_39 = l_Lean_indentExpr(x_6); +x_40 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +x_41 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8; +x_42 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_42, 0, x_40); +lean_ctor_set(x_42, 1, x_41); +x_43 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_29); +x_44 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData___spec__1___closed__2; +x_45 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +x_46 = l_Lean_Meta_Grind_reportIssue(x_45, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_30); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +x_47 = !lean_is_exclusive(x_46); +if (x_47 == 0) +{ +lean_object* x_48; lean_object* x_49; +x_48 = lean_ctor_get(x_46, 0); +lean_dec(x_48); +x_49 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11; +lean_ctor_set(x_46, 0, x_49); +return x_46; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_46, 1); +lean_inc(x_50); +lean_dec(x_46); +x_51 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11; +x_52 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_52, 0, x_51); +lean_ctor_set(x_52, 1, x_50); +return x_52; +} +} +else +{ +uint8_t x_53; +lean_dec(x_26); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_6); +lean_dec(x_5); +x_53 = !lean_is_exclusive(x_28); +if (x_53 == 0) +{ +return x_28; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_28, 0); +x_55 = lean_ctor_get(x_28, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_28); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +uint8_t x_57; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_57 = !lean_is_exclusive(x_25); +if (x_57 == 0) +{ +return x_25; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_25, 0); +x_59 = lean_ctor_get(x_25, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_25); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_61 = !lean_is_exclusive(x_21); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; +x_62 = lean_ctor_get(x_21, 0); +lean_dec(x_62); +x_63 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_63, 0, x_7); +lean_ctor_set(x_21, 0, x_63); +return x_21; +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_21, 1); +lean_inc(x_64); +lean_dec(x_21); +x_65 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_65, 0, x_7); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_65); +lean_ctor_set(x_66, 1, x_64); +return x_66; +} +} +} +else +{ +uint8_t x_67; +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_67 = !lean_is_exclusive(x_21); +if (x_67 == 0) +{ +return x_21; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_21, 0); +x_69 = lean_ctor_get(x_21, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_21); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +return x_70; +} +} +} +} +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("cast", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18, lean_object* x_19, lean_object* x_20, lean_object* x_21, lean_object* x_22, lean_object* x_23) { _start: { @@ -6991,6 +7403,10 @@ lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); lean_dec(x_10); lean_dec(x_7); lean_dec(x_1); @@ -7001,29 +7417,29 @@ return x_26; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_36; lean_object* x_112; lean_object* x_113; lean_object* x_114; uint8_t x_115; +lean_object* x_27; lean_object* x_28; lean_object* x_36; lean_object* x_136; lean_object* x_137; lean_object* x_138; uint8_t x_139; lean_dec(x_9); -x_112 = lean_nat_sub(x_3, x_10); -x_113 = lean_unsigned_to_nat(1u); -x_114 = lean_nat_sub(x_112, x_113); -lean_dec(x_112); -x_115 = lean_nat_dec_lt(x_114, x_4); -if (x_115 == 0) +x_136 = lean_nat_sub(x_3, x_10); +x_137 = lean_unsigned_to_nat(1u); +x_138 = lean_nat_sub(x_136, x_137); +lean_dec(x_136); +x_139 = lean_nat_dec_lt(x_138, x_4); +if (x_139 == 0) { -lean_object* x_116; lean_object* x_117; -lean_dec(x_114); -x_116 = l_Lean_instInhabitedExpr; -x_117 = l_outOfBounds___rarg(x_116); -x_36 = x_117; -goto block_111; +lean_object* x_140; lean_object* x_141; +lean_dec(x_138); +x_140 = l_Lean_instInhabitedExpr; +x_141 = l_outOfBounds___rarg(x_140); +x_36 = x_141; +goto block_135; } else { -lean_object* x_118; -x_118 = lean_array_fget(x_2, x_114); -lean_dec(x_114); -x_36 = x_118; -goto block_111; +lean_object* x_142; +x_142 = lean_array_fget(x_2, x_138); +lean_dec(x_138); +x_36 = x_142; +goto block_135; } block_35: { @@ -7034,6 +7450,10 @@ lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); lean_dec(x_10); lean_dec(x_7); lean_dec(x_1); @@ -7062,7 +7482,7 @@ x_23 = x_28; goto _start; } } -block_111: +block_135: { lean_object* x_37; uint8_t x_38; x_37 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_unassigned; @@ -7090,289 +7510,284 @@ lean_inc(x_36); x_44 = lean_infer_type(x_36, x_19, x_20, x_21, x_22, x_43); if (lean_obj_tag(x_44) == 0) { -lean_object* x_45; lean_object* x_46; uint8_t x_47; lean_object* x_48; lean_object* x_84; +lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; x_45 = lean_ctor_get(x_44, 0); lean_inc(x_45); x_46 = lean_ctor_get(x_44, 1); lean_inc(x_46); lean_dec(x_44); +x_47 = lean_ctor_get(x_1, 5); +lean_inc(x_47); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); lean_inc(x_19); lean_inc(x_45); lean_inc(x_42); -x_84 = l_Lean_Meta_isExprDefEq(x_42, x_45, x_19, x_20, x_21, x_22, x_46); -if (lean_obj_tag(x_84) == 0) +x_48 = l_Lean_Meta_isExprDefEq(x_42, x_45, x_19, x_20, x_21, x_22, x_46); +if (lean_obj_tag(x_48) == 0) { -lean_object* x_85; uint8_t x_86; -x_85 = lean_ctor_get(x_84, 0); -lean_inc(x_85); -x_86 = lean_unbox(x_85); -if (x_86 == 0) -{ -lean_object* x_87; uint8_t x_88; -lean_dec(x_40); -x_87 = lean_ctor_get(x_84, 1); -lean_inc(x_87); -lean_dec(x_84); -x_88 = lean_unbox(x_85); -lean_dec(x_85); -x_47 = x_88; -x_48 = x_87; -goto block_83; -} -else -{ -lean_object* x_89; lean_object* x_90; -lean_dec(x_85); -x_89 = lean_ctor_get(x_84, 1); -lean_inc(x_89); -lean_dec(x_84); -lean_inc(x_22); -lean_inc(x_21); -lean_inc(x_20); -lean_inc(x_19); -lean_inc(x_36); -x_90 = lean_checked_assign(x_40, x_36, x_19, x_20, x_21, x_22, x_89); -if (lean_obj_tag(x_90) == 0) -{ -lean_object* x_91; lean_object* x_92; uint8_t x_93; -x_91 = lean_ctor_get(x_90, 0); -lean_inc(x_91); -x_92 = lean_ctor_get(x_90, 1); -lean_inc(x_92); -lean_dec(x_90); -x_93 = lean_unbox(x_91); -lean_dec(x_91); -x_47 = x_93; -x_48 = x_92; -goto block_83; -} -else -{ -uint8_t x_94; -lean_dec(x_45); -lean_dec(x_42); -lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_22); -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_10); -lean_dec(x_7); -lean_dec(x_1); -x_94 = !lean_is_exclusive(x_90); -if (x_94 == 0) -{ -return x_90; -} -else -{ -lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_95 = lean_ctor_get(x_90, 0); -x_96 = lean_ctor_get(x_90, 1); -lean_inc(x_96); -lean_inc(x_95); -lean_dec(x_90); -x_97 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_97, 0, x_95); -lean_ctor_set(x_97, 1, x_96); -return x_97; -} -} -} -} -else -{ -uint8_t x_98; -lean_dec(x_45); -lean_dec(x_42); -lean_dec(x_40); -lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_22); -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_10); -lean_dec(x_7); -lean_dec(x_1); -x_98 = !lean_is_exclusive(x_84); -if (x_98 == 0) -{ -return x_84; -} -else -{ -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_84, 0); -x_100 = lean_ctor_get(x_84, 1); -lean_inc(x_100); -lean_inc(x_99); -lean_dec(x_84); -x_101 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_101, 0, x_99); -lean_ctor_set(x_101, 1, x_100); -return x_101; -} -} -block_83: -{ -if (x_47 == 0) -{ -lean_object* x_49; lean_object* x_50; -x_49 = lean_ctor_get(x_1, 5); +lean_object* x_49; uint8_t x_50; +x_49 = lean_ctor_get(x_48, 0); lean_inc(x_49); -x_50 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_49, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_48); -if (lean_obj_tag(x_50) == 0) +x_50 = lean_unbox(x_49); +lean_dec(x_49); +if (x_50 == 0) { -lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_51 = lean_ctor_get(x_50, 0); +lean_object* x_51; lean_object* x_52; +x_51 = lean_ctor_get(x_48, 1); lean_inc(x_51); -x_52 = lean_ctor_get(x_50, 1); -lean_inc(x_52); -lean_dec(x_50); +lean_dec(x_48); lean_inc(x_22); lean_inc(x_21); lean_inc(x_20); lean_inc(x_19); -x_53 = l_Lean_Meta_mkHasTypeButIsExpectedMsg(x_45, x_42, x_19, x_20, x_21, x_22, x_52); +lean_inc(x_18); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_42); +lean_inc(x_45); +x_52 = l_Lean_Meta_Grind_proveEq_x3f(x_45, x_42, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_51); +if (lean_obj_tag(x_52) == 0) +{ +lean_object* x_53; +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); if (lean_obj_tag(x_53) == 0) { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; -x_54 = lean_ctor_get(x_53, 0); +lean_object* x_54; lean_object* x_55; +lean_dec(x_40); +x_54 = lean_ctor_get(x_52, 1); lean_inc(x_54); -x_55 = lean_ctor_get(x_53, 1); -lean_inc(x_55); -lean_dec(x_53); -x_56 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2; -x_57 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_51); -x_58 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4; -x_59 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -x_60 = l_Lean_MessageData_ofExpr(x_39); -x_61 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -x_62 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6; -x_63 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -x_64 = l_Lean_indentExpr(x_36); -x_65 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -x_66 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8; -x_67 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); +lean_dec(x_52); +x_55 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_47, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_54); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +lean_dec(x_55); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +x_58 = l_Lean_Meta_mkHasTypeButIsExpectedMsg(x_45, x_42, x_19, x_20, x_21, x_22, x_57); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_58, 1); +lean_inc(x_60); +lean_dec(x_58); +x_61 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2; +x_62 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_56); +x_63 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4; +x_64 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +x_65 = l_Lean_MessageData_ofExpr(x_39); +x_66 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_65); +x_67 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6; x_68 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_68, 0, x_67); -lean_ctor_set(x_68, 1, x_54); -x_69 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData___spec__1___closed__2; +lean_ctor_set(x_68, 0, x_66); +lean_ctor_set(x_68, 1, x_67); +x_69 = l_Lean_indentExpr(x_36); x_70 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_70, 0, x_68); lean_ctor_set(x_70, 1, x_69); -x_71 = l_Lean_Meta_Grind_reportIssue(x_70, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_55); -x_72 = lean_ctor_get(x_71, 1); -lean_inc(x_72); -lean_dec(x_71); -x_73 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11; -x_27 = x_73; -x_28 = x_72; +x_71 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8; +x_72 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +x_73 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_59); +x_74 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assignmentToMessageData___spec__1___closed__2; +x_75 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_75, 0, x_73); +lean_ctor_set(x_75, 1, x_74); +x_76 = l_Lean_Meta_Grind_reportIssue(x_75, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_60); +x_77 = lean_ctor_get(x_76, 1); +lean_inc(x_77); +lean_dec(x_76); +x_78 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11; +x_27 = x_78; +x_28 = x_77; goto block_35; } else { -uint8_t x_74; -lean_dec(x_51); +uint8_t x_79; +lean_dec(x_56); lean_dec(x_39); lean_dec(x_36); lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); lean_dec(x_10); lean_dec(x_7); lean_dec(x_1); -x_74 = !lean_is_exclusive(x_53); -if (x_74 == 0) +x_79 = !lean_is_exclusive(x_58); +if (x_79 == 0) { -return x_53; +return x_58; } else { -lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_75 = lean_ctor_get(x_53, 0); -x_76 = lean_ctor_get(x_53, 1); -lean_inc(x_76); -lean_inc(x_75); -lean_dec(x_53); -x_77 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_77, 0, x_75); -lean_ctor_set(x_77, 1, x_76); -return x_77; -} -} -} -else -{ -uint8_t x_78; -lean_dec(x_45); -lean_dec(x_42); -lean_dec(x_39); -lean_dec(x_36); -lean_dec(x_22); -lean_dec(x_21); -lean_dec(x_20); -lean_dec(x_19); -lean_dec(x_10); -lean_dec(x_7); -lean_dec(x_1); -x_78 = !lean_is_exclusive(x_50); -if (x_78 == 0) -{ -return x_50; -} -else -{ -lean_object* x_79; lean_object* x_80; lean_object* x_81; -x_79 = lean_ctor_get(x_50, 0); -x_80 = lean_ctor_get(x_50, 1); +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_58, 0); +x_81 = lean_ctor_get(x_58, 1); +lean_inc(x_81); lean_inc(x_80); -lean_inc(x_79); -lean_dec(x_50); -x_81 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_81, 0, x_79); -lean_ctor_set(x_81, 1, x_80); -return x_81; +lean_dec(x_58); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; } } } else { -lean_object* x_82; +uint8_t x_83; lean_dec(x_45); lean_dec(x_42); lean_dec(x_39); lean_dec(x_36); -lean_inc(x_7); -x_82 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_82, 0, x_7); -x_27 = x_82; -x_28 = x_48; -goto block_35; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_83 = !lean_is_exclusive(x_55); +if (x_83 == 0) +{ +return x_55; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_55, 0); +x_85 = lean_ctor_get(x_55, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_55); +x_86 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_86, 0, x_84); +lean_ctor_set(x_86, 1, x_85); +return x_86; } } } else { -uint8_t x_102; +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_87 = lean_ctor_get(x_52, 1); +lean_inc(x_87); +lean_dec(x_52); +x_88 = lean_ctor_get(x_53, 0); +lean_inc(x_88); +lean_dec(x_53); +x_89 = lean_box(0); +lean_inc(x_36); +x_90 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_90, 0, x_36); +lean_ctor_set(x_90, 1, x_89); +x_91 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_91, 0, x_88); +lean_ctor_set(x_91, 1, x_90); +x_92 = lean_array_mk(x_91); +x_93 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2; +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +x_94 = l_Lean_Meta_mkAppM(x_93, x_92, x_19, x_20, x_21, x_22, x_87); +if (lean_obj_tag(x_94) == 0) +{ +lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +lean_dec(x_94); +x_97 = lean_box(0); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_7); +x_98 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1(x_40, x_47, x_45, x_42, x_39, x_36, x_7, x_95, x_97, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_96); +if (lean_obj_tag(x_98) == 0) +{ +lean_object* x_99; lean_object* x_100; +x_99 = lean_ctor_get(x_98, 0); +lean_inc(x_99); +x_100 = lean_ctor_get(x_98, 1); +lean_inc(x_100); +lean_dec(x_98); +x_27 = x_99; +x_28 = x_100; +goto block_35; +} +else +{ +uint8_t x_101; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_101 = !lean_is_exclusive(x_98); +if (x_101 == 0) +{ +return x_98; +} +else +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; +x_102 = lean_ctor_get(x_98, 0); +x_103 = lean_ctor_get(x_98, 1); +lean_inc(x_103); +lean_inc(x_102); +lean_dec(x_98); +x_104 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_104, 0, x_102); +lean_ctor_set(x_104, 1, x_103); +return x_104; +} +} +} +else +{ +uint8_t x_105; +lean_dec(x_47); +lean_dec(x_45); lean_dec(x_42); lean_dec(x_40); lean_dec(x_39); @@ -7381,32 +7796,216 @@ lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); lean_dec(x_10); lean_dec(x_7); lean_dec(x_1); -x_102 = !lean_is_exclusive(x_44); -if (x_102 == 0) +x_105 = !lean_is_exclusive(x_94); +if (x_105 == 0) +{ +return x_94; +} +else +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = lean_ctor_get(x_94, 0); +x_107 = lean_ctor_get(x_94, 1); +lean_inc(x_107); +lean_inc(x_106); +lean_dec(x_94); +x_108 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_108, 0, x_106); +lean_ctor_set(x_108, 1, x_107); +return x_108; +} +} +} +} +else +{ +uint8_t x_109; +lean_dec(x_47); +lean_dec(x_45); +lean_dec(x_42); +lean_dec(x_40); +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_109 = !lean_is_exclusive(x_52); +if (x_109 == 0) +{ +return x_52; +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; +x_110 = lean_ctor_get(x_52, 0); +x_111 = lean_ctor_get(x_52, 1); +lean_inc(x_111); +lean_inc(x_110); +lean_dec(x_52); +x_112 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_112, 0, x_110); +lean_ctor_set(x_112, 1, x_111); +return x_112; +} +} +} +else +{ +lean_object* x_113; lean_object* x_114; lean_object* x_115; +x_113 = lean_ctor_get(x_48, 1); +lean_inc(x_113); +lean_dec(x_48); +x_114 = lean_box(0); +lean_inc(x_22); +lean_inc(x_21); +lean_inc(x_20); +lean_inc(x_19); +lean_inc(x_7); +lean_inc(x_36); +x_115 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1(x_40, x_47, x_45, x_42, x_39, x_36, x_7, x_36, x_114, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_113); +if (lean_obj_tag(x_115) == 0) +{ +lean_object* x_116; lean_object* x_117; +x_116 = lean_ctor_get(x_115, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_115, 1); +lean_inc(x_117); +lean_dec(x_115); +x_27 = x_116; +x_28 = x_117; +goto block_35; +} +else +{ +uint8_t x_118; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_118 = !lean_is_exclusive(x_115); +if (x_118 == 0) +{ +return x_115; +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_119 = lean_ctor_get(x_115, 0); +x_120 = lean_ctor_get(x_115, 1); +lean_inc(x_120); +lean_inc(x_119); +lean_dec(x_115); +x_121 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_121, 0, x_119); +lean_ctor_set(x_121, 1, x_120); +return x_121; +} +} +} +} +else +{ +uint8_t x_122; +lean_dec(x_47); +lean_dec(x_45); +lean_dec(x_42); +lean_dec(x_40); +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_122 = !lean_is_exclusive(x_48); +if (x_122 == 0) +{ +return x_48; +} +else +{ +lean_object* x_123; lean_object* x_124; lean_object* x_125; +x_123 = lean_ctor_get(x_48, 0); +x_124 = lean_ctor_get(x_48, 1); +lean_inc(x_124); +lean_inc(x_123); +lean_dec(x_48); +x_125 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_125, 0, x_123); +lean_ctor_set(x_125, 1, x_124); +return x_125; +} +} +} +else +{ +uint8_t x_126; +lean_dec(x_42); +lean_dec(x_40); +lean_dec(x_39); +lean_dec(x_36); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_1); +x_126 = !lean_is_exclusive(x_44); +if (x_126 == 0) { return x_44; } else { -lean_object* x_103; lean_object* x_104; lean_object* x_105; -x_103 = lean_ctor_get(x_44, 0); -x_104 = lean_ctor_get(x_44, 1); -lean_inc(x_104); -lean_inc(x_103); +lean_object* x_127; lean_object* x_128; lean_object* x_129; +x_127 = lean_ctor_get(x_44, 0); +x_128 = lean_ctor_get(x_44, 1); +lean_inc(x_128); +lean_inc(x_127); lean_dec(x_44); -x_105 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_105, 0, x_103); -lean_ctor_set(x_105, 1, x_104); -return x_105; +x_129 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_129, 0, x_127); +lean_ctor_set(x_129, 1, x_128); +return x_129; } } } else { -uint8_t x_106; +uint8_t x_130; lean_dec(x_40); lean_dec(x_39); lean_dec(x_36); @@ -7414,37 +8013,41 @@ lean_dec(x_22); lean_dec(x_21); lean_dec(x_20); lean_dec(x_19); +lean_dec(x_18); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); lean_dec(x_10); lean_dec(x_7); lean_dec(x_1); -x_106 = !lean_is_exclusive(x_41); -if (x_106 == 0) +x_130 = !lean_is_exclusive(x_41); +if (x_130 == 0) { return x_41; } else { -lean_object* x_107; lean_object* x_108; lean_object* x_109; -x_107 = lean_ctor_get(x_41, 0); -x_108 = lean_ctor_get(x_41, 1); -lean_inc(x_108); -lean_inc(x_107); +lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_131 = lean_ctor_get(x_41, 0); +x_132 = lean_ctor_get(x_41, 1); +lean_inc(x_132); +lean_inc(x_131); lean_dec(x_41); -x_109 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_109, 0, x_107); -lean_ctor_set(x_109, 1, x_108); -return x_109; +x_133 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_133, 0, x_131); +lean_ctor_set(x_133, 1, x_132); +return x_133; } } } else { -lean_object* x_110; +lean_object* x_134; lean_dec(x_36); lean_inc(x_7); -x_110 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_110, 0, x_7); -x_27 = x_110; +x_134 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_134, 0, x_7); +x_27 = x_134; x_28 = x_23; goto block_35; } @@ -7676,11 +8279,11 @@ lean_ctor_set(x_71, 1, x_70); x_72 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_72, 0, x_71); lean_ctor_set(x_72, 1, x_68); -x_73 = l_Lean_Meta_Grind_reportIssue(x_72, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_66); +x_73 = l_Lean_Meta_Grind_reportIssue(x_72, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_66); x_74 = lean_ctor_get(x_73, 1); lean_inc(x_74); lean_dec(x_73); -x_75 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_75 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; lean_ctor_set(x_8, 0, x_75); x_76 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_76, 0, x_8); @@ -7908,11 +8511,11 @@ lean_ctor_set(x_113, 1, x_112); x_114 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_114, 0, x_113); lean_ctor_set(x_114, 1, x_110); -x_115 = l_Lean_Meta_Grind_reportIssue(x_114, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_107); +x_115 = l_Lean_Meta_Grind_reportIssue(x_114, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_107); x_116 = lean_ctor_get(x_115, 1); lean_inc(x_116); lean_dec(x_115); -x_117 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_117 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; lean_ctor_set(x_8, 0, x_117); x_118 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_118, 0, x_8); @@ -8170,11 +8773,11 @@ lean_ctor_set(x_163, 1, x_162); x_164 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_164, 0, x_163); lean_ctor_set(x_164, 1, x_160); -x_165 = l_Lean_Meta_Grind_reportIssue(x_164, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_157); +x_165 = l_Lean_Meta_Grind_reportIssue(x_164, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_157); x_166 = lean_ctor_get(x_165, 1); lean_inc(x_166); lean_dec(x_165); -x_167 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_167 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; lean_ctor_set(x_8, 1, x_138); lean_ctor_set(x_8, 0, x_167); x_168 = lean_alloc_ctor(0, 1, 0); @@ -8484,11 +9087,11 @@ lean_ctor_set(x_222, 1, x_221); x_223 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_223, 0, x_222); lean_ctor_set(x_223, 1, x_219); -x_224 = l_Lean_Meta_Grind_reportIssue(x_223, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_216); +x_224 = l_Lean_Meta_Grind_reportIssue(x_223, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_216); x_225 = lean_ctor_get(x_224, 1); lean_inc(x_225); lean_dec(x_224); -x_226 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_226 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; x_227 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_227, 0, x_226); lean_ctor_set(x_227, 1, x_196); @@ -9618,7 +10221,7 @@ x_46 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le x_47 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_47, 0, x_45); lean_ctor_set(x_47, 1, x_46); -x_48 = l_Lean_Meta_Grind_reportIssue(x_47, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_39); +x_48 = l_Lean_Meta_Grind_reportIssue(x_47, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_39); x_49 = lean_ctor_get(x_48, 0); lean_inc(x_49); x_50 = lean_ctor_get(x_48, 1); @@ -9842,7 +10445,7 @@ x_94 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le x_95 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_95, 0, x_93); lean_ctor_set(x_95, 1, x_94); -x_96 = l_Lean_Meta_Grind_reportIssue(x_95, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_87); +x_96 = l_Lean_Meta_Grind_reportIssue(x_95, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_87); x_97 = lean_ctor_get(x_96, 0); lean_inc(x_97); x_98 = lean_ctor_get(x_96, 1); @@ -10084,7 +10687,7 @@ x_147 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__L x_148 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_148, 0, x_146); lean_ctor_set(x_148, 1, x_147); -x_149 = l_Lean_Meta_Grind_reportIssue(x_148, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_140); +x_149 = l_Lean_Meta_Grind_reportIssue(x_148, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_140); x_150 = lean_ctor_get(x_149, 0); lean_inc(x_150); x_151 = lean_ctor_get(x_149, 1); @@ -10342,6 +10945,10 @@ lean_inc(x_19); lean_inc(x_18); lean_inc(x_17); lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); lean_inc(x_2); x_27 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3(x_2, x_3, x_4, x_5, x_1, x_24, x_26, x_24, x_26, x_22, lean_box(0), lean_box(0), x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); lean_dec(x_24); @@ -10479,7 +11086,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; x_2 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___closed__3; -x_3 = lean_unsigned_to_nat(250u); +x_3 = lean_unsigned_to_nat(267u); x_4 = lean_unsigned_to_nat(2u); x_5 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___lambda__5___closed__2; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -10595,6 +11202,7 @@ x_40 = lean_ctor_get(x_1, 5); lean_inc(x_40); lean_dec(x_1); x_41 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_40, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_31); +lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); if (lean_obj_tag(x_41) == 0) @@ -10613,7 +11221,7 @@ x_45 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le lean_ctor_set_tag(x_29, 7); lean_ctor_set(x_29, 1, x_45); lean_ctor_set(x_29, 0, x_30); -x_46 = l_Lean_Meta_Grind_reportIssue(x_29, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_43); +x_46 = l_Lean_Meta_Grind_reportIssue(x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_43); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10621,7 +11229,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_47 = !lean_is_exclusive(x_46); if (x_47 == 0) { @@ -10657,7 +11264,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_53 = !lean_is_exclusive(x_41); if (x_53 == 0) { @@ -10712,6 +11318,7 @@ x_62 = lean_ctor_get(x_1, 5); lean_inc(x_62); lean_dec(x_1); x_63 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_62, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_31); +lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); if (lean_obj_tag(x_63) == 0) @@ -10730,7 +11337,7 @@ x_68 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le lean_ctor_set_tag(x_29, 7); lean_ctor_set(x_29, 1, x_68); lean_ctor_set(x_29, 0, x_67); -x_69 = l_Lean_Meta_Grind_reportIssue(x_29, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_65); +x_69 = l_Lean_Meta_Grind_reportIssue(x_29, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_65); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10738,7 +11345,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_70 = lean_ctor_get(x_69, 1); lean_inc(x_70); if (lean_is_exclusive(x_69)) { @@ -10770,7 +11376,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_74 = lean_ctor_get(x_63, 0); lean_inc(x_74); x_75 = lean_ctor_get(x_63, 1); @@ -10837,6 +11442,7 @@ x_85 = lean_ctor_get(x_1, 5); lean_inc(x_85); lean_dec(x_1); x_86 = l_Lean_Meta_Grind_Origin_pp___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__3(x_85, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_31); +lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); if (lean_obj_tag(x_86) == 0) @@ -10860,7 +11466,7 @@ x_91 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Le x_92 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_92, 0, x_90); lean_ctor_set(x_92, 1, x_91); -x_93 = l_Lean_Meta_Grind_reportIssue(x_92, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_88); +x_93 = l_Lean_Meta_Grind_reportIssue(x_92, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_88); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10868,7 +11474,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_94 = lean_ctor_get(x_93, 1); lean_inc(x_94); if (lean_is_exclusive(x_93)) { @@ -10900,7 +11505,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_98 = lean_ctor_get(x_86, 0); lean_inc(x_98); x_99 = lean_ctor_get(x_86, 1); @@ -11764,6 +12368,41 @@ lean_dec(x_2); return x_12; } } +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +lean_object* x_19 = _args[18]; +lean_object* x_20 = _args[19]; +_start: +{ +lean_object* x_21; +x_21 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +return x_21; +} +} LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___boxed(lean_object** _args) { lean_object* x_1 = _args[0]; lean_object* x_2 = _args[1]; @@ -11792,10 +12431,6 @@ _start: { lean_object* x_24; x_24 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18, x_19, x_20, x_21, x_22, x_23); -lean_dec(x_18); -lean_dec(x_17); -lean_dec(x_16); -lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); lean_dec(x_8); @@ -13310,7 +13945,7 @@ if (x_43 == 0) lean_object* x_44; lean_object* x_45; x_44 = lean_ctor_get(x_23, 0); lean_dec(x_44); -x_45 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_45 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; lean_ctor_set(x_23, 0, x_45); return x_23; } @@ -13320,7 +13955,7 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; x_46 = lean_ctor_get(x_23, 1); lean_inc(x_46); lean_dec(x_23); -x_47 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_47 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; x_48 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_48, 0, x_47); lean_ctor_set(x_48, 1, x_46); @@ -13538,7 +14173,7 @@ if (lean_is_exclusive(x_59)) { lean_dec_ref(x_59); x_78 = lean_box(0); } -x_79 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_79 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; if (lean_is_scalar(x_78)) { x_80 = lean_alloc_ctor(0, 2, 0); } else { @@ -14976,7 +15611,7 @@ if (x_47 == 0) lean_object* x_48; lean_object* x_49; x_48 = lean_ctor_get(x_27, 0); lean_dec(x_48); -x_49 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_49 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; lean_ctor_set(x_27, 0, x_49); return x_27; } @@ -14986,7 +15621,7 @@ lean_object* x_50; lean_object* x_51; lean_object* x_52; x_50 = lean_ctor_get(x_27, 1); lean_inc(x_50); lean_dec(x_27); -x_51 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10; +x_51 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10; x_52 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_52, 0, x_51); lean_ctor_set(x_52, 1, x_50); @@ -15409,7 +16044,7 @@ else { lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_dec(x_2); -x_21 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_21 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; x_22 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_22, 0, x_21); lean_ctor_set(x_22, 1, x_4); @@ -16369,7 +17004,7 @@ else lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; x_45 = l_Lean_Expr_appArg(x_41, lean_box(0)); x_46 = l_Lean_Expr_appFnCleanup(x_41, lean_box(0)); -x_47 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2; +x_47 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2; x_48 = l_Lean_Expr_isConstOf(x_46, x_47); lean_dec(x_46); if (x_48 == 0) @@ -16624,7 +17259,7 @@ if (x_44 == 0) lean_object* x_45; lean_object* x_46; x_45 = lean_ctor_get(x_24, 0); lean_dec(x_45); -x_46 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_46 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; lean_ctor_set(x_9, 0, x_46); lean_ctor_set(x_24, 0, x_9); return x_24; @@ -16635,7 +17270,7 @@ lean_object* x_47; lean_object* x_48; lean_object* x_49; x_47 = lean_ctor_get(x_24, 1); lean_inc(x_47); lean_dec(x_24); -x_48 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_48 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; lean_ctor_set(x_9, 0, x_48); x_49 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_49, 0, x_9); @@ -16809,7 +17444,7 @@ if (lean_is_exclusive(x_51)) { lean_dec_ref(x_51); x_70 = lean_box(0); } -x_71 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9; +x_71 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9; x_72 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_72, 0, x_71); lean_ctor_set(x_72, 1, x_50); @@ -17586,7 +18221,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__1; x_2 = l_Lean_Meta_Grind_EMatch_ematchTheorem___lambda__1___closed__1; -x_3 = lean_unsigned_to_nat(353u); +x_3 = lean_unsigned_to_nat(377u); x_4 = lean_unsigned_to_nat(22u); x_5 = l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_assign_x3f___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -18510,10 +19145,10 @@ lean_inc(x_16); x_17 = lean_ctor_get(x_15, 1); lean_inc(x_17); lean_dec(x_15); -x_18 = lean_ctor_get(x_13, 10); +x_18 = lean_ctor_get(x_13, 11); lean_inc(x_18); lean_dec(x_13); -x_19 = lean_ctor_get(x_16, 11); +x_19 = lean_ctor_get(x_16, 12); lean_inc(x_19); lean_dec(x_16); x_20 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_ematch___lambda__1___boxed), 12, 1); @@ -18542,9 +19177,9 @@ if (x_28 == 0) { lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; x_29 = lean_ctor_get(x_26, 7); -x_30 = lean_ctor_get(x_26, 10); -x_31 = lean_ctor_get(x_26, 11); -x_32 = lean_ctor_get(x_26, 14); +x_30 = lean_ctor_get(x_26, 11); +x_31 = lean_ctor_get(x_26, 12); +x_32 = lean_ctor_get(x_26, 15); x_33 = lean_unsigned_to_nat(1u); x_34 = lean_nat_add(x_29, x_33); lean_dec(x_29); @@ -18553,9 +19188,9 @@ lean_dec(x_31); x_36 = lean_nat_add(x_32, x_33); lean_dec(x_32); x_37 = l_Lean_Meta_Grind_ematch___closed__3; -lean_ctor_set(x_26, 14, x_36); -lean_ctor_set(x_26, 11, x_37); -lean_ctor_set(x_26, 10, x_35); +lean_ctor_set(x_26, 15, x_36); +lean_ctor_set(x_26, 12, x_37); +lean_ctor_set(x_26, 11, x_35); lean_ctor_set(x_26, 7, x_34); x_38 = lean_st_ref_set(x_1, x_26, x_27); lean_dec(x_1); @@ -18640,10 +19275,10 @@ lean_dec(x_26); x_71 = lean_unsigned_to_nat(1u); x_72 = lean_nat_add(x_53, x_71); lean_dec(x_53); -x_73 = l_Lean_PersistentArray_append___rarg(x_56, x_57); -lean_dec(x_57); -x_74 = lean_nat_add(x_60, x_71); -lean_dec(x_60); +x_73 = l_Lean_PersistentArray_append___rarg(x_57, x_58); +lean_dec(x_58); +x_74 = lean_nat_add(x_61, x_71); +lean_dec(x_61); x_75 = l_Lean_Meta_Grind_ematch___closed__3; x_76 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_76, 0, x_45); @@ -18656,12 +19291,12 @@ lean_ctor_set(x_76, 6, x_51); lean_ctor_set(x_76, 7, x_72); lean_ctor_set(x_76, 8, x_54); lean_ctor_set(x_76, 9, x_55); -lean_ctor_set(x_76, 10, x_73); -lean_ctor_set(x_76, 11, x_75); -lean_ctor_set(x_76, 12, x_58); +lean_ctor_set(x_76, 10, x_56); +lean_ctor_set(x_76, 11, x_73); +lean_ctor_set(x_76, 12, x_75); lean_ctor_set(x_76, 13, x_59); -lean_ctor_set(x_76, 14, x_74); -lean_ctor_set(x_76, 15, x_61); +lean_ctor_set(x_76, 14, x_60); +lean_ctor_set(x_76, 15, x_74); lean_ctor_set(x_76, 16, x_62); lean_ctor_set(x_76, 17, x_63); lean_ctor_set(x_76, 18, x_64); @@ -18950,7 +19585,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ematchAndAssert(lean_object* x_1, lea _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_10 = lean_ctor_get(x_1, 13); +x_10 = lean_ctor_get(x_1, 14); lean_inc(x_10); x_11 = lean_ctor_get(x_1, 0); lean_inc(x_11); @@ -18981,7 +19616,7 @@ if (x_18 == 0) lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; x_19 = lean_ctor_get(x_17, 0); x_20 = lean_ctor_get(x_17, 1); -x_21 = lean_ctor_get(x_19, 13); +x_21 = lean_ctor_get(x_19, 14); lean_inc(x_21); x_22 = lean_nat_dec_eq(x_21, x_10); lean_dec(x_10); @@ -19018,7 +19653,7 @@ x_27 = lean_ctor_get(x_17, 1); lean_inc(x_27); lean_inc(x_26); lean_dec(x_17); -x_28 = lean_ctor_get(x_26, 13); +x_28 = lean_ctor_get(x_26, 14); lean_inc(x_28); x_29 = lean_nat_dec_eq(x_28, x_10); lean_dec(x_10); @@ -19123,6 +19758,8 @@ return x_11; lean_object* initialize_Lean_Meta_Tactic_Grind_Types(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Intro(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_DoNotSimp(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_Core(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_EMatch(uint8_t builtin, lean_object* w) { lean_object * res; @@ -19137,6 +19774,12 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_DoNotSimp(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_MatchCond(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_Core(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__1 = _init_l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__1); l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__2 = _init_l_Lean_Meta_Grind_EMatch_instInhabitedCnstr___closed__2(); @@ -19223,10 +19866,10 @@ l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatc lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__3); l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__4(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__1___closed__4); -l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__1); -l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___closed__2); +l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__1); +l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_annotateMatchEqnType___lambda__3___closed__2); l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__1 = _init_l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__1(); lean_mark_persistent(l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__1); l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__2 = _init_l_Lean_getConstInfo___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_addNewInstance___spec__5___closed__2(); @@ -19258,28 +19901,32 @@ l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_i lean_mark_persistent(l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__2___closed__2); l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__2___closed__3 = _init_l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__2___closed__3(); lean_mark_persistent(l_panic___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__2___closed__3); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__1); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__2); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__3); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__4); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__5); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__6); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__7); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__8); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__9); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__10); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___lambda__1___closed__11); l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1(); lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__1); l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2(); lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__2); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__3); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__4); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__5); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__6); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__7); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__8); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__9); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__10); -l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11(); -lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__3___closed__11); l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__1(); lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__1); l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_EMatch_0__Lean_Meta_Grind_EMatch_instantiateTheorem___spec__5___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatchTheorem.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatchTheorem.c index b89d61ad5d..6014e556d1 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatchTheorem.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/EMatchTheorem.c @@ -19,7 +19,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkEMatchTheoremWithKind_x3f___boxed(l lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_EMatchTheorem_0__Lean_Meta_Grind_ematchTheoremsExt; static lean_object* l_Lean_Meta_Grind_mkEMatchTheoremWithKind_x3f___lambda__2___closed__1; -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); lean_object* l_Lean_Name_reprPrec(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_EMatchTheorems_insert___spec__10(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Meta_Grind_ppPattern___closed__4; @@ -324,6 +323,7 @@ static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_EMatc static lean_object* l_Lean_Meta_Grind_mkEMatchTheoremForDecl___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_ppPattern___spec__1___lambda__1___closed__3; uint64_t lean_uint64_shift_right(uint64_t, uint64_t); +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_EMatchTheorem_0__Lean_Meta_Grind_reprOrigin____x40_Lean_Meta_Tactic_Grind_EMatchTheorem___hyg_792____closed__12; lean_object* lean_nat_to_int(lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at___private_Lean_Meta_Tactic_Grind_EMatchTheorem_0__Lean_Meta_Grind_NormalizePattern_saveBVar___spec__2(lean_object*, lean_object*, lean_object*); @@ -2097,7 +2097,7 @@ x_42 = lean_box(1); x_43 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_43, 0, x_1); lean_ctor_set(x_43, 1, x_42); -x_44 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_37, x_38); +x_44 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_37, x_38); x_45 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_45, 0, x_43); lean_ctor_set(x_45, 1, x_44); @@ -2149,7 +2149,7 @@ x_63 = lean_box(1); x_64 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_64, 0, x_62); lean_ctor_set(x_64, 1, x_63); -x_65 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_57, x_58); +x_65 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_57, x_58); x_66 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_66, 0, x_64); lean_ctor_set(x_66, 1, x_65); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Ext.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Ext.c index 102c2d56eb..6789fc3a24 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Ext.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Ext.c @@ -19,7 +19,7 @@ static lean_object* l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed LEAN_EXPORT lean_object* l_Lean_Meta_withNewMCtxDepth___at_Lean_Meta_Grind_instantiateExtTheorem___spec__5(lean_object*); lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_lor(uint64_t, uint64_t); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_instantiateExtTheorem___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem___spec__1___boxed(lean_object**); lean_object* lean_array_push(lean_object*, lean_object*); @@ -311,7 +311,7 @@ x_68 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem__ x_69 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_69, 0, x_67); lean_ctor_set(x_69, 1, x_68); -x_70 = l_Lean_Meta_Grind_reportIssue(x_69, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_61); +x_70 = l_Lean_Meta_Grind_reportIssue(x_69, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_61); x_71 = lean_ctor_get(x_70, 1); lean_inc(x_71); lean_dec(x_70); @@ -502,7 +502,7 @@ x_104 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem_ x_105 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_105, 0, x_103); lean_ctor_set(x_105, 1, x_104); -x_106 = l_Lean_Meta_Grind_reportIssue(x_105, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_96); +x_106 = l_Lean_Meta_Grind_reportIssue(x_105, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_96); x_107 = lean_ctor_get(x_106, 1); lean_inc(x_107); lean_dec(x_106); @@ -722,7 +722,7 @@ x_148 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem_ x_149 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_149, 0, x_147); lean_ctor_set(x_149, 1, x_148); -x_150 = l_Lean_Meta_Grind_reportIssue(x_149, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_140); +x_150 = l_Lean_Meta_Grind_reportIssue(x_149, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_140); x_151 = lean_ctor_get(x_150, 1); lean_inc(x_151); lean_dec(x_150); @@ -993,7 +993,7 @@ x_201 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem_ x_202 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_202, 0, x_200); lean_ctor_set(x_202, 1, x_201); -x_203 = l_Lean_Meta_Grind_reportIssue(x_202, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_193); +x_203 = l_Lean_Meta_Grind_reportIssue(x_202, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_193); x_204 = lean_ctor_get(x_203, 1); lean_inc(x_204); lean_dec(x_203); @@ -1652,6 +1652,7 @@ else lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; lean_dec(x_43); lean_dec(x_40); +lean_dec(x_7); x_49 = l_Lean_MessageData_ofName(x_4); x_50 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__3; lean_ctor_set_tag(x_38, 7); @@ -1674,7 +1675,7 @@ x_55 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__5; x_56 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_56, 0, x_54); lean_ctor_set(x_56, 1, x_55); -x_57 = l_Lean_Meta_Grind_reportIssue(x_56, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_44); +x_57 = l_Lean_Meta_Grind_reportIssue(x_56, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_44); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -1682,7 +1683,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_58 = !lean_is_exclusive(x_57); if (x_58 == 0) { @@ -1712,6 +1712,7 @@ else lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; uint8_t x_73; lean_dec(x_43); lean_dec(x_40); +lean_dec(x_7); x_64 = l_Lean_MessageData_ofName(x_4); x_65 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__3; lean_ctor_set_tag(x_38, 7); @@ -1734,7 +1735,7 @@ x_70 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__5; x_71 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_71, 0, x_69); lean_ctor_set(x_71, 1, x_70); -x_72 = l_Lean_Meta_Grind_reportIssue(x_71, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_44); +x_72 = l_Lean_Meta_Grind_reportIssue(x_71, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_44); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -1742,7 +1743,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_73 = !lean_is_exclusive(x_72); if (x_73 == 0) { @@ -1853,6 +1853,7 @@ else lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_dec(x_86); lean_dec(x_83); +lean_dec(x_7); x_92 = l_Lean_MessageData_ofName(x_4); x_93 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__3; x_94 = lean_alloc_ctor(7, 2, 0); @@ -1875,7 +1876,7 @@ x_99 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__5; x_100 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_100, 0, x_98); lean_ctor_set(x_100, 1, x_99); -x_101 = l_Lean_Meta_Grind_reportIssue(x_100, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_87); +x_101 = l_Lean_Meta_Grind_reportIssue(x_100, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_87); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -1883,7 +1884,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_102 = lean_ctor_get(x_101, 1); lean_inc(x_102); if (lean_is_exclusive(x_101)) { @@ -1910,6 +1910,7 @@ else lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_dec(x_86); lean_dec(x_83); +lean_dec(x_7); x_106 = l_Lean_MessageData_ofName(x_4); x_107 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__3; x_108 = lean_alloc_ctor(7, 2, 0); @@ -1932,7 +1933,7 @@ x_113 = l_Lean_Meta_Grind_instantiateExtTheorem___lambda__2___closed__5; x_114 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_114, 0, x_112); lean_ctor_set(x_114, 1, x_113); -x_115 = l_Lean_Meta_Grind_reportIssue(x_114, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_87); +x_115 = l_Lean_Meta_Grind_reportIssue(x_114, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_87); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -1940,7 +1941,6 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -lean_dec(x_7); x_116 = lean_ctor_get(x_115, 1); lean_inc(x_116); if (lean_is_exclusive(x_115)) { @@ -2369,6 +2369,7 @@ lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean lean_dec(x_50); lean_dec(x_47); lean_dec(x_15); +lean_dec(x_4); x_55 = lean_ctor_get(x_52, 1); lean_inc(x_55); lean_dec(x_52); @@ -2397,7 +2398,7 @@ x_65 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem__ x_66 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_66, 0, x_64); lean_ctor_set(x_66, 1, x_65); -x_67 = l_Lean_Meta_Grind_reportIssue(x_66, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_55); +x_67 = l_Lean_Meta_Grind_reportIssue(x_66, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_55); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -2405,7 +2406,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); x_68 = !lean_is_exclusive(x_67); if (x_68 == 0) { @@ -2511,6 +2511,7 @@ lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean lean_dec(x_81); lean_dec(x_47); lean_dec(x_15); +lean_dec(x_4); x_86 = lean_ctor_get(x_83, 1); lean_inc(x_86); lean_dec(x_83); @@ -2539,7 +2540,7 @@ x_97 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem__ x_98 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_98, 0, x_96); lean_ctor_set(x_98, 1, x_97); -x_99 = l_Lean_Meta_Grind_reportIssue(x_98, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_86); +x_99 = l_Lean_Meta_Grind_reportIssue(x_98, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_86); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -2547,7 +2548,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); x_100 = lean_ctor_get(x_99, 1); lean_inc(x_100); if (lean_is_exclusive(x_99)) { @@ -2661,6 +2661,7 @@ lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_dec(x_112); lean_dec(x_111); lean_dec(x_15); +lean_dec(x_4); x_118 = lean_ctor_get(x_115, 1); lean_inc(x_118); lean_dec(x_115); @@ -2694,7 +2695,7 @@ x_130 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem_ x_131 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_131, 0, x_129); lean_ctor_set(x_131, 1, x_130); -x_132 = l_Lean_Meta_Grind_reportIssue(x_131, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_118); +x_132 = l_Lean_Meta_Grind_reportIssue(x_131, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_118); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -2702,7 +2703,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); x_133 = lean_ctor_get(x_132, 1); lean_inc(x_133); if (lean_is_exclusive(x_132)) { @@ -2928,6 +2928,7 @@ lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_dec(x_182); lean_dec(x_180); lean_dec(x_15); +lean_dec(x_4); x_188 = lean_ctor_get(x_185, 1); lean_inc(x_188); lean_dec(x_185); @@ -2966,7 +2967,7 @@ x_200 = l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instantiateExtTheorem_ x_201 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_201, 0, x_199); lean_ctor_set(x_201, 1, x_200); -x_202 = l_Lean_Meta_Grind_reportIssue(x_201, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_188); +x_202 = l_Lean_Meta_Grind_reportIssue(x_201, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_188); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -2974,7 +2975,6 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); x_203 = lean_ctor_get(x_202, 1); lean_inc(x_203); if (lean_is_exclusive(x_202)) { diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/ForallProp.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/ForallProp.c index b4f96b208c..24d715c8cc 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/ForallProp.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/ForallProp.c @@ -27,7 +27,7 @@ uint8_t l_Lean_Exception_isInterrupt(lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateForallPropDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isApp(lean_object*); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateForallPropUp_propagateImpliesUp___lambda__1___closed__5; static lean_object* l___private_Lean_Meta_Tactic_Grind_ForallProp_0__Lean_Meta_Grind_isEqTrueHyp_x3f___closed__1; static lean_object* l_Lean_Meta_Grind_propagateForallPropUp___closed__3; @@ -2295,7 +2295,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_13, 1); -x_17 = lean_ctor_get(x_15, 11); +x_17 = lean_ctor_get(x_15, 12); lean_inc(x_17); lean_dec(x_15); x_18 = lean_ctor_get(x_17, 2); @@ -2324,7 +2324,7 @@ x_24 = l_Lean_Meta_Grind_propagateForallPropUp___lambda__2___closed__6; x_25 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_25, 0, x_23); lean_ctor_set(x_25, 1, x_24); -x_26 = l_Lean_Meta_Grind_reportIssue(x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_16); +x_26 = l_Lean_Meta_Grind_reportIssue(x_25, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_16); return x_26; } } @@ -2336,7 +2336,7 @@ x_28 = lean_ctor_get(x_13, 1); lean_inc(x_28); lean_inc(x_27); lean_dec(x_13); -x_29 = lean_ctor_get(x_27, 11); +x_29 = lean_ctor_get(x_27, 12); lean_inc(x_29); lean_dec(x_27); x_30 = lean_ctor_get(x_29, 2); @@ -2366,7 +2366,7 @@ x_37 = l_Lean_Meta_Grind_propagateForallPropUp___lambda__2___closed__6; x_38 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_38, 0, x_36); lean_ctor_set(x_38, 1, x_37); -x_39 = l_Lean_Meta_Grind_reportIssue(x_38, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_28); +x_39 = l_Lean_Meta_Grind_reportIssue(x_38, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_28); return x_39; } } @@ -2382,7 +2382,7 @@ lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); lean_inc(x_18); lean_dec(x_16); -x_19 = lean_ctor_get(x_17, 11); +x_19 = lean_ctor_get(x_17, 12); lean_inc(x_19); lean_dec(x_17); x_20 = lean_ctor_get(x_19, 2); @@ -2689,7 +2689,7 @@ lean_inc(x_15); x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); lean_dec(x_14); -x_17 = lean_ctor_get(x_15, 11); +x_17 = lean_ctor_get(x_15, 12); lean_inc(x_17); lean_dec(x_15); x_18 = lean_ctor_get(x_17, 2); @@ -2886,10 +2886,10 @@ x_18 = !lean_is_exclusive(x_16); if (x_18 == 0) { lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_19 = lean_ctor_get(x_16, 21); +x_19 = lean_ctor_get(x_16, 22); x_20 = lean_unsigned_to_nat(1u); x_21 = lean_nat_add(x_19, x_20); -lean_ctor_set(x_16, 21, x_21); +lean_ctor_set(x_16, 22, x_21); x_22 = lean_st_ref_set(x_2, x_16, x_17); x_23 = lean_ctor_get(x_22, 1); lean_inc(x_23); @@ -2957,7 +2957,7 @@ lean_inc(x_29); lean_inc(x_28); lean_dec(x_16); x_54 = lean_unsigned_to_nat(1u); -x_55 = lean_nat_add(x_50, x_54); +x_55 = lean_nat_add(x_51, x_54); x_56 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_56, 0, x_28); lean_ctor_set(x_56, 1, x_29); @@ -2980,8 +2980,8 @@ lean_ctor_set(x_56, 17, x_46); lean_ctor_set(x_56, 18, x_47); lean_ctor_set(x_56, 19, x_48); lean_ctor_set(x_56, 20, x_49); -lean_ctor_set(x_56, 21, x_55); -lean_ctor_set(x_56, 22, x_51); +lean_ctor_set(x_56, 21, x_50); +lean_ctor_set(x_56, 22, x_55); lean_ctor_set(x_56, 23, x_52); lean_ctor_set(x_56, 24, x_53); lean_ctor_set_uint8(x_56, sizeof(void*)*25, x_35); @@ -2990,7 +2990,7 @@ x_58 = lean_ctor_get(x_57, 1); lean_inc(x_58); lean_dec(x_57); x_59 = l___private_Lean_Meta_Tactic_Grind_ForallProp_0__Lean_Meta_Grind_addLocalEMatchTheorems___closed__2; -x_60 = lean_name_append_index_after(x_59, x_50); +x_60 = lean_name_append_index_after(x_59, x_51); x_61 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_61, 0, x_60); x_62 = l___private_Lean_Meta_Tactic_Grind_ForallProp_0__Lean_Meta_Grind_addLocalEMatchTheorems___lambda__4(x_1, x_12, x_61, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_58); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Internalize.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Internalize.c index 1874008775..5d680171bd 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Internalize.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Internalize.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.Internalize -// Imports: Init.Grind.Util Init.Grind.Lemmas Lean.Meta.LitValues Lean.Meta.Match.MatcherInfo Lean.Meta.Match.MatchEqsExt Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Canon Lean.Meta.Tactic.Grind.Beta Lean.Meta.Tactic.Grind.Arith.Internalize +// Imports: Init.Grind.Util Init.Grind.Lemmas Lean.Meta.LitValues Lean.Meta.Match.MatcherInfo Lean.Meta.Match.MatchEqsExt Lean.Meta.Tactic.Grind.Types Lean.Meta.Tactic.Grind.Util Lean.Meta.Tactic.Grind.Canon Lean.Meta.Tactic.Grind.Beta Lean.Meta.Tactic.Grind.MatchCond Lean.Meta.Tactic.Grind.Arith.Internalize #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -16,9 +16,12 @@ extern "C" { LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__8; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_Grind_internalize___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_is_matcher(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__2___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__17; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate___closed__3; extern lean_object* l___private_Lean_Meta_Tactic_Grind_EMatchTheorem_0__Lean_Meta_Grind_dontCare; @@ -29,6 +32,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__2(lean_object*, LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__1___boxed(lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___closed__6; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4; lean_object* l_Lean_mkAppN(lean_object*, lean_object*); size_t lean_usize_shift_right(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -39,6 +43,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_ static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___closed__2; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__2___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isDIte(lean_object*); lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_Arith_Offset_0__Lean_Meta_Grind_Arith_Offset_setUnsat___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_eraseIrrelevantMData___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -48,12 +53,15 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_ static lean_object* l_Lean_Meta_Grind_addCongrTable___closed__4; LEAN_EXPORT lean_object* l_List_filterTR_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__4(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_addCongrTable___spec__6(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__2___boxed(lean_object**); lean_object* l_Lean_Meta_Grind_unfoldReducible___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_uint64_to_usize(uint64_t); +uint8_t l_Lean_Expr_isAppOfArity(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_mkENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; static lean_object* l_Lean_Meta_Grind_activateTheorem___closed__1; uint8_t l_Lean_Expr_isApp(lean_object*); lean_object* l_Lean_Meta_Grind_propagateBetaForNewApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -62,7 +70,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_ uint8_t l_Lean_Meta_Grind_isCongruent(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__6(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__7; lean_object* l_Lean_Expr_sort___override(lean_object*); lean_object* l_Lean_MessageData_ofList(lean_object*); @@ -79,6 +87,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__1___boxed(lea LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___closed__1; lean_object* lean_mk_array(lean_object*, lean_object*); +uint8_t lean_usize_dec_eq(size_t, size_t); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_activateTheorem___closed__2; @@ -86,6 +95,7 @@ uint64_t l_Lean_Meta_Grind_congrHash(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes; +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__15; lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_normalizeLevels___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); @@ -104,6 +114,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_ lean_object* l_Lean_mkApp4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findEntryAtAux___at_Lean_Meta_Grind_addCongrTable___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_internalize___lambda__3___closed__1; @@ -116,7 +127,8 @@ lean_object* l_Lean_Meta_Grind_propagateUp(lean_object*, lean_object*, lean_obje uint8_t l_Lean_Expr_isBVar(lean_object*); lean_object* l_Lean_Meta_Grind_Goal_getENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__12; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__4; lean_object* l_Lean_Meta_Grind_EMatchTheorems_insert(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_activateTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -126,7 +138,10 @@ lean_object* l_Lean_mkApp6(lean_object*, lean_object*, lean_object*, lean_object LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__1___boxed(lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static size_t l_Lean_PersistentHashMap_findEntryAux___at_Lean_Meta_Grind_addCongrTable___spec__2___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_mkENode_x27(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_addCongrTable___spec__5(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__4___closed__1; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -134,6 +149,7 @@ uint8_t l_List_elem___at_Lean_addAliasEntry___spec__16(lean_object*, lean_object lean_object* l_Lean_Core_transform___at_Lean_Meta_Grind_unfoldReducible___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__1(lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__13; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_addCongrTable___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -142,10 +158,12 @@ uint8_t lean_expr_eqv(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__2___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes___closed__8; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___closed__5; +lean_object* l_Lean_Meta_Grind_eraseIrrelevantMData___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__11; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_groundPattern_x3f(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isMatcher___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -153,6 +171,7 @@ static lean_object* l_Lean_Meta_Grind_addCongrTable___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___closed__2; +lean_object* l_Lean_MessageData_ofFormat(lean_object*); lean_object* l_Lean_Meta_isInductivePredicate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_EMatchTheorems_insert___spec__9(lean_object*, lean_object*); @@ -163,6 +182,7 @@ lean_object* lean_st_ref_get(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes___closed__4; lean_object* l_Lean_Meta_reduceMatcher_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_activateTheorem___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); @@ -180,7 +200,9 @@ static lean_object* l_Lean_Meta_Grind_activateTheorem___closed__4; extern lean_object* l_Lean_instInhabitedExpr; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Meta_Grind_CasesTypes_isSplit(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes___closed__11; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -191,6 +213,7 @@ lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_Grind_isSameExpr_unsafe__1(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_alreadyInternalized(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5; static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__3___closed__1; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___lambda__1___closed__1; @@ -198,6 +221,7 @@ uint8_t l_Lean_Expr_isIte(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__2(lean_object*, size_t, lean_object*); static lean_object* l_Lean_Meta_Grind_addCongrTable___closed__6; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; lean_object* l_Lean_Meta_Grind_mkEMatchEqTheorem(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_updateLastTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_addCongrTable___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -205,14 +229,16 @@ lean_object* l_Lean_Meta_Grind_hasSameType(lean_object*, lean_object*, lean_obje LEAN_EXPORT lean_object* l_Lean_Meta_Grind_activateTheorem___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_usize_to_nat(size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__2; static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___closed__5; LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___boxed(lean_object**); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__14; lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_mkGroundPattern(lean_object*); @@ -223,6 +249,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__3___boxed(lean_ static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes___closed__10; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__5; +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__16; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_shareCommon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); @@ -234,6 +261,7 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); uint8_t l_Lean_Meta_isMatcherAppCore(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__3; lean_object* l_Lean_Meta_Grind_registerParent(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_indentExpr(lean_object*); static lean_object* l_Lean_Meta_Grind_activateTheorem___closed__3; @@ -257,6 +285,7 @@ lean_object* l_Lean_Expr_getAppFn(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isProp(lean_object*); lean_object* l_Lean_PersistentHashMap_mkCollisionNode___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_mapTR_loop___at_Lean_Meta_Grind_mkEMatchTheoremCore___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isMorallyIff___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -272,6 +301,7 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_sub(size_t, size_t); static lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_mkENode_x27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___closed__1; size_t lean_usize_add(size_t, size_t); lean_object* lean_array_uget(lean_object*, size_t); @@ -282,6 +312,7 @@ lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_isMatcher___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); +lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_updateAppMap___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_HeadIndex_0__Lean_beqHeadIndex____x40_Lean_HeadIndex___hyg_69_(lean_object*, lean_object*); @@ -289,10 +320,13 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_ LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns___spec__5___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_canon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1; static lean_object* l_Lean_Meta_Grind_addCongrTable___closed__2; static lean_object* l_Lean_Meta_Grind_internalize___lambda__3___closed__2; lean_object* l_Lean_Meta_Grind_Origin_key(lean_object*); +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isMorallyIff(lean_object*); +uint8_t lean_nat_dec_le(lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); @@ -304,6 +338,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_ uint64_t l_Lean_HeadIndex_hash(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate___closed__2; static lean_object* l_Lean_Meta_Grind_addCongrTable___closed__3; +static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3; static lean_object* l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__8; lean_object* l_Lean_Meta_Grind_unfoldReducible___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getConfig___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -311,14 +346,18 @@ lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_activateTheorem___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofName(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); lean_object* l_Lean_Meta_isLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addCongrTable___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); +static lean_object* l_Lean_Meta_Grind_internalize___lambda__2___closed__18; LEAN_EXPORT lean_object* l_Lean_Meta_isMatcherApp___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_forbiddenSplitTypes___closed__5; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findEntryAtAux___at_Lean_Meta_Grind_addCongrTable___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -1919,7 +1958,7 @@ x_100 = l_Lean_Meta_Grind_addCongrTable___closed__6; x_101 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_101, 0, x_99); lean_ctor_set(x_101, 1, x_100); -x_102 = l_Lean_Meta_Grind_reportIssue(x_101, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_94); +x_102 = l_Lean_Meta_Grind_reportIssue(x_101, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_94); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -2050,7 +2089,7 @@ x_132 = l_Lean_Meta_Grind_addCongrTable___closed__6; x_133 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_133, 0, x_131); lean_ctor_set(x_133, 1, x_132); -x_134 = l_Lean_Meta_Grind_reportIssue(x_133, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_125); +x_134 = l_Lean_Meta_Grind_reportIssue(x_133, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_125); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -2355,7 +2394,7 @@ x_206 = l_Lean_Meta_Grind_addCongrTable___closed__6; x_207 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_207, 0, x_205); lean_ctor_set(x_207, 1, x_206); -x_208 = l_Lean_Meta_Grind_reportIssue(x_207, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_198); +x_208 = l_Lean_Meta_Grind_reportIssue(x_207, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_198); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -3782,11 +3821,11 @@ if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; x_16 = lean_ctor_get(x_12, 1); -x_17 = lean_ctor_get(x_14, 18); +x_17 = lean_ctor_get(x_14, 19); lean_ctor_set_tag(x_12, 1); lean_ctor_set(x_12, 1, x_17); lean_ctor_set(x_12, 0, x_1); -lean_ctor_set(x_14, 18, x_12); +lean_ctor_set(x_14, 19, x_12); x_18 = lean_st_ref_set(x_3, x_14, x_16); x_19 = !lean_is_exclusive(x_18); if (x_19 == 0) @@ -3868,7 +3907,7 @@ lean_inc(x_27); lean_inc(x_26); lean_dec(x_14); lean_ctor_set_tag(x_12, 1); -lean_ctor_set(x_12, 1, x_45); +lean_ctor_set(x_12, 1, x_46); lean_ctor_set(x_12, 0, x_1); x_52 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_52, 0, x_26); @@ -3889,8 +3928,8 @@ lean_ctor_set(x_52, 14, x_41); lean_ctor_set(x_52, 15, x_42); lean_ctor_set(x_52, 16, x_43); lean_ctor_set(x_52, 17, x_44); -lean_ctor_set(x_52, 18, x_12); -lean_ctor_set(x_52, 19, x_46); +lean_ctor_set(x_52, 18, x_45); +lean_ctor_set(x_52, 19, x_12); lean_ctor_set(x_52, 20, x_47); lean_ctor_set(x_52, 21, x_48); lean_ctor_set(x_52, 22, x_49); @@ -4011,7 +4050,7 @@ if (lean_is_exclusive(x_58)) { } x_87 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_87, 0, x_1); -lean_ctor_set(x_87, 1, x_79); +lean_ctor_set(x_87, 1, x_80); if (lean_is_scalar(x_86)) { x_88 = lean_alloc_ctor(0, 25, 1); } else { @@ -4035,8 +4074,8 @@ lean_ctor_set(x_88, 14, x_75); lean_ctor_set(x_88, 15, x_76); lean_ctor_set(x_88, 16, x_77); lean_ctor_set(x_88, 17, x_78); -lean_ctor_set(x_88, 18, x_87); -lean_ctor_set(x_88, 19, x_80); +lean_ctor_set(x_88, 18, x_79); +lean_ctor_set(x_88, 19, x_87); lean_ctor_set(x_88, 20, x_81); lean_ctor_set(x_88, 21, x_82); lean_ctor_set(x_88, 22, x_83); @@ -4510,11 +4549,86 @@ return x_22; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = l_Lean_Meta_Grind_getConfig___rarg(x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_13 = lean_st_ref_get(x_4, x_12); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); -x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*6 + 3); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 10); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Lean_Meta_Grind_CasesTypes_isSplit(x_16, x_1); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = l_Lean_Meta_Grind_getConfig___rarg(x_6, x_7, x_8, x_9, x_10, x_11, x_15); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get_uint8(x_19, sizeof(void*)*6 + 3); +lean_dec(x_19); +if (x_20 == 0) +{ +uint8_t x_21; +lean_dec(x_2); +x_21 = !lean_is_exclusive(x_18); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_18, 0); +lean_dec(x_22); +x_23 = lean_box(0); +lean_ctor_set(x_18, 0, x_23); +return x_18; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_18, 1); +lean_inc(x_24); +lean_dec(x_18); +x_25 = lean_box(0); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +return x_26; +} +} +else +{ +lean_object* x_27; lean_object* x_28; +x_27 = lean_ctor_get(x_18, 1); +lean_inc(x_27); +lean_dec(x_18); +x_28 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_27); +return x_28; +} +} +else +{ +lean_object* x_29; +x_29 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_15); +return x_29; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_1); +x_13 = l_Lean_Meta_isInductivePredicate(x_1, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_unbox(x_14); lean_dec(x_14); if (x_15 == 0) { @@ -4550,98 +4664,51 @@ return x_21; } else { -lean_object* x_22; lean_object* x_23; +lean_object* x_22; lean_object* x_23; lean_object* x_24; x_22 = lean_ctor_get(x_13, 1); lean_inc(x_22); lean_dec(x_13); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_23 = l_Lean_Meta_isInductivePredicate(x_1, x_8, x_9, x_10, x_11, x_22); -if (lean_obj_tag(x_23) == 0) +x_23 = lean_box(0); +x_24 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1(x_1, x_2, x_23, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_22); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_1); +return x_24; +} +} +else { -lean_object* x_24; uint8_t x_25; -x_24 = lean_ctor_get(x_23, 0); -lean_inc(x_24); -x_25 = lean_unbox(x_24); -lean_dec(x_24); +uint8_t x_25; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_25 = !lean_is_exclusive(x_13); if (x_25 == 0) { -uint8_t x_26; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_2); -x_26 = !lean_is_exclusive(x_23); -if (x_26 == 0) -{ -lean_object* x_27; lean_object* x_28; -x_27 = lean_ctor_get(x_23, 0); -lean_dec(x_27); -x_28 = lean_box(0); -lean_ctor_set(x_23, 0, x_28); -return x_23; +return x_13; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_23, 1); -lean_inc(x_29); -lean_dec(x_23); -x_30 = lean_box(0); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_29); -return x_31; -} -} -else -{ -lean_object* x_32; lean_object* x_33; -x_32 = lean_ctor_get(x_23, 1); -lean_inc(x_32); -lean_dec(x_23); -x_33 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_32); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -return x_33; -} -} -else -{ -uint8_t x_34; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_2); -x_34 = !lean_is_exclusive(x_23); -if (x_34 == 0) -{ -return x_23; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_23, 0); -x_36 = lean_ctor_get(x_23, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_23); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_13, 0); +x_27 = lean_ctor_get(x_13, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_13); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; } } } } -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; @@ -4658,7 +4725,7 @@ if (x_15 == 0) { lean_object* x_16; lean_object* x_17; x_16 = lean_box(0); -x_17 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1(x_13, x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_17 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(x_13, x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_17; } else @@ -4694,7 +4761,7 @@ return x_21; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; lean_object* x_13; uint8_t x_14; @@ -4710,7 +4777,7 @@ x_15 = lean_ctor_get(x_12, 1); lean_inc(x_15); lean_dec(x_12); x_16 = lean_box(0); -x_17 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +x_17 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); return x_17; } else @@ -4731,7 +4798,7 @@ x_22 = lean_ctor_get(x_19, 1); lean_inc(x_22); lean_dec(x_19); x_23 = lean_box(0); -x_24 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(x_1, x_23, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_22); +x_24 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3(x_1, x_23, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_22); return x_24; } else @@ -4876,7 +4943,7 @@ return x_49; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { uint8_t x_12; @@ -4886,7 +4953,7 @@ if (x_12 == 0) { lean_object* x_13; lean_object* x_14; x_13 = lean_box(0); -x_14 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3(x_1, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_14 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__4(x_1, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_14; } else @@ -4948,186 +5015,402 @@ return x_25; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = l_Lean_Meta_Grind_getConfig___rarg(x_5, x_6, x_7, x_8, x_9, x_10, x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*6 + 2); -lean_dec(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_12, 1); -lean_inc(x_15); -lean_dec(x_12); -x_16 = lean_box(0); -x_17 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__4(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); -return x_17; -} -else -{ -lean_object* x_18; uint8_t x_19; -x_18 = lean_ctor_get(x_12, 1); -lean_inc(x_18); -lean_dec(x_12); -x_19 = l_Lean_Expr_isIte(x_1); -if (x_19 == 0) -{ -uint8_t x_20; -x_20 = l_Lean_Expr_isDIte(x_1); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_box(0); -x_22 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__4(x_1, x_21, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -return x_22; -} -else -{ -lean_object* x_23; -x_23 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -if (lean_obj_tag(x_23) == 0) -{ -uint8_t x_24; -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_23, 0); -lean_dec(x_25); -x_26 = lean_box(0); -lean_ctor_set(x_23, 0, x_26); -return x_23; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_23, 1); -lean_inc(x_27); -lean_dec(x_23); -x_28 = lean_box(0); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_27); -return x_29; -} -} -else -{ -uint8_t x_30; -x_30 = !lean_is_exclusive(x_23); -if (x_30 == 0) -{ -return x_23; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_23, 0); -x_32 = lean_ctor_get(x_23, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_23); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -} -} -else -{ -lean_object* x_34; -x_34 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_18); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -if (lean_obj_tag(x_34) == 0) -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_34); -if (x_35 == 0) -{ -lean_object* x_36; lean_object* x_37; -x_36 = lean_ctor_get(x_34, 0); -lean_dec(x_36); -x_37 = lean_box(0); -lean_ctor_set(x_34, 0, x_37); -return x_34; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_34, 1); -lean_inc(x_38); -lean_dec(x_34); -x_39 = lean_box(0); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_38); -return x_40; -} -} -else -{ -uint8_t x_41; -x_41 = !lean_is_exclusive(x_34); -if (x_41 == 0) -{ -return x_34; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_34, 0); -x_43 = lean_ctor_get(x_34, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_34); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; -} -} -} -} -} -} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { -uint8_t x_11; -x_11 = l_Lean_Expr_isApp(x_1); -if (x_11 == 0) +switch (lean_obj_tag(x_1)) { +case 1: { -lean_object* x_12; lean_object* x_13; +lean_object* x_11; +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_11 = lean_infer_type(x_1, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +x_15 = l_Lean_Expr_getAppFn(x_13); +lean_dec(x_13); +if (lean_obj_tag(x_15) == 4) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; +lean_free_object(x_11); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +lean_dec(x_15); +x_17 = lean_st_ref_get(x_2, x_14); +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_17, 1); +x_21 = lean_ctor_get(x_19, 10); +lean_inc(x_21); +lean_dec(x_19); +x_22 = l_Lean_Meta_Grind_CasesTypes_isSplit(x_21, x_16); +lean_dec(x_16); +if (x_22 == 0) +{ +lean_object* x_23; lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_1); -x_12 = lean_box(0); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_10); -return x_13; +x_23 = lean_box(0); +lean_ctor_set(x_17, 0, x_23); +return x_17; } else { -lean_object* x_14; lean_object* x_15; -x_14 = lean_box(0); -x_15 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(x_1, x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -return x_15; +lean_object* x_24; +lean_free_object(x_17); +x_24 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_20); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_24; +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_25 = lean_ctor_get(x_17, 0); +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_17); +x_27 = lean_ctor_get(x_25, 10); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_Meta_Grind_CasesTypes_isSplit(x_27, x_16); +lean_dec(x_16); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_29 = lean_box(0); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_26); +return x_30; +} +else +{ +lean_object* x_31; +x_31 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_26); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_31; +} +} +} +else +{ +lean_object* x_32; +lean_dec(x_15); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_32 = lean_box(0); +lean_ctor_set(x_11, 0, x_32); +return x_11; +} +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_11, 0); +x_34 = lean_ctor_get(x_11, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_11); +x_35 = l_Lean_Expr_getAppFn(x_33); +lean_dec(x_33); +if (lean_obj_tag(x_35) == 4) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +lean_dec(x_35); +x_37 = lean_st_ref_get(x_2, x_34); +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +if (lean_is_exclusive(x_37)) { + lean_ctor_release(x_37, 0); + lean_ctor_release(x_37, 1); + x_40 = x_37; +} else { + lean_dec_ref(x_37); + x_40 = lean_box(0); +} +x_41 = lean_ctor_get(x_38, 10); +lean_inc(x_41); +lean_dec(x_38); +x_42 = l_Lean_Meta_Grind_CasesTypes_isSplit(x_41, x_36); +lean_dec(x_36); +if (x_42 == 0) +{ +lean_object* x_43; lean_object* x_44; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_43 = lean_box(0); +if (lean_is_scalar(x_40)) { + x_44 = lean_alloc_ctor(0, 2, 0); +} else { + x_44 = x_40; +} +lean_ctor_set(x_44, 0, x_43); +lean_ctor_set(x_44, 1, x_39); +return x_44; +} +else +{ +lean_object* x_45; +lean_dec(x_40); +x_45 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_39); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_45; +} +} +else +{ +lean_object* x_46; lean_object* x_47; +lean_dec(x_35); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_46 = lean_box(0); +x_47 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_47, 0, x_46); +lean_ctor_set(x_47, 1, x_34); +return x_47; +} +} +} +else +{ +uint8_t x_48; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_48 = !lean_is_exclusive(x_11); +if (x_48 == 0) +{ +return x_11; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; +x_49 = lean_ctor_get(x_11, 0); +x_50 = lean_ctor_get(x_11, 1); +lean_inc(x_50); +lean_inc(x_49); +lean_dec(x_11); +x_51 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_51, 0, x_49); +lean_ctor_set(x_51, 1, x_50); +return x_51; +} +} +} +case 5: +{ +lean_object* x_52; lean_object* x_53; uint8_t x_54; +x_52 = l_Lean_Meta_Grind_getConfig___rarg(x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_53 = lean_ctor_get(x_52, 0); +lean_inc(x_53); +x_54 = lean_ctor_get_uint8(x_53, sizeof(void*)*6 + 2); +lean_dec(x_53); +if (x_54 == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_52, 1); +lean_inc(x_55); +lean_dec(x_52); +x_56 = lean_box(0); +x_57 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(x_1, x_56, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_55); +return x_57; +} +else +{ +lean_object* x_58; uint8_t x_59; +x_58 = lean_ctor_get(x_52, 1); +lean_inc(x_58); +lean_dec(x_52); +x_59 = l_Lean_Expr_isIte(x_1); +if (x_59 == 0) +{ +uint8_t x_60; +x_60 = l_Lean_Expr_isDIte(x_1); +if (x_60 == 0) +{ +lean_object* x_61; lean_object* x_62; +x_61 = lean_box(0); +x_62 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__5(x_1, x_61, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_58); +return x_62; +} +else +{ +lean_object* x_63; +x_63 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_58); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +if (lean_obj_tag(x_63) == 0) +{ +uint8_t x_64; +x_64 = !lean_is_exclusive(x_63); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; +x_65 = lean_ctor_get(x_63, 0); +lean_dec(x_65); +x_66 = lean_box(0); +lean_ctor_set(x_63, 0, x_66); +return x_63; +} +else +{ +lean_object* x_67; lean_object* x_68; lean_object* x_69; +x_67 = lean_ctor_get(x_63, 1); +lean_inc(x_67); +lean_dec(x_63); +x_68 = lean_box(0); +x_69 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_67); +return x_69; +} +} +else +{ +uint8_t x_70; +x_70 = !lean_is_exclusive(x_63); +if (x_70 == 0) +{ +return x_63; +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_71 = lean_ctor_get(x_63, 0); +x_72 = lean_ctor_get(x_63, 1); +lean_inc(x_72); +lean_inc(x_71); +lean_dec(x_63); +x_73 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +return x_73; +} +} +} +} +else +{ +lean_object* x_74; +x_74 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addSplitCandidate(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_58); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +if (lean_obj_tag(x_74) == 0) +{ +uint8_t x_75; +x_75 = !lean_is_exclusive(x_74); +if (x_75 == 0) +{ +lean_object* x_76; lean_object* x_77; +x_76 = lean_ctor_get(x_74, 0); +lean_dec(x_76); +x_77 = lean_box(0); +lean_ctor_set(x_74, 0, x_77); +return x_74; +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; +x_78 = lean_ctor_get(x_74, 1); +lean_inc(x_78); +lean_dec(x_74); +x_79 = lean_box(0); +x_80 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_78); +return x_80; +} +} +else +{ +uint8_t x_81; +x_81 = !lean_is_exclusive(x_74); +if (x_81 == 0) +{ +return x_74; +} +else +{ +lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_82 = lean_ctor_get(x_74, 0); +x_83 = lean_ctor_get(x_74, 1); +lean_inc(x_83); +lean_inc(x_82); +lean_dec(x_74); +x_84 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_84, 0, x_82); +lean_ctor_set(x_84, 1, x_83); +return x_84; +} +} +} +} +} +default: +{ +lean_object* x_85; lean_object* x_86; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +x_85 = lean_box(0); +x_86 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_86, 0, x_85); +lean_ctor_set(x_86, 1, x_10); +return x_86; +} } } } @@ -5153,6 +5436,24 @@ _start: { lean_object* x_13; x_13 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); @@ -5161,19 +5462,6 @@ lean_dec(x_3); return x_13; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; -x_12 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_12; -} -} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -5840,7 +6128,7 @@ static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_normalizeLevels___lambda__1___boxed), 4, 0); +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_eraseIrrelevantMData___lambda__1___boxed), 4, 0); return x_1; } } @@ -5852,6 +6140,14 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_eraseIrrelevantMData___lambda return x_1; } } +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_normalizeLevels___lambda__1___boxed), 4, 0); +return x_1; +} +} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { @@ -5878,12 +6174,24 @@ lean_inc(x_8); x_18 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_14, x_16, x_17, x_8, x_9, x_15); if (lean_obj_tag(x_18) == 0) { -lean_object* x_19; lean_object* x_20; lean_object* x_21; +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); lean_inc(x_20); lean_dec(x_18); +x_21 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5; +lean_inc(x_9); +lean_inc(x_8); +x_22 = l_Lean_Core_transform___at_Lean_Core_betaReduce___spec__1(x_19, x_21, x_17, x_8, x_9, x_20); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_ctor_get(x_22, 1); +lean_inc(x_24); +lean_dec(x_22); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); @@ -5891,55 +6199,25 @@ lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_21 = l_Lean_Meta_Grind_canon(x_19, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_20); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_21, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_21, 1); -lean_inc(x_23); -lean_dec(x_21); -x_24 = l_Lean_Meta_Grind_shareCommon(x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_23); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_24; -} -else -{ -uint8_t x_25; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_25 = !lean_is_exclusive(x_21); -if (x_25 == 0) -{ -return x_21; -} -else +x_25 = l_Lean_Meta_Grind_canon(x_23, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_24); +if (lean_obj_tag(x_25) == 0) { lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_26 = lean_ctor_get(x_21, 0); -x_27 = lean_ctor_get(x_21, 1); -lean_inc(x_27); +x_26 = lean_ctor_get(x_25, 0); lean_inc(x_26); -lean_dec(x_21); -x_28 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_28, 0, x_26); -lean_ctor_set(x_28, 1, x_27); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_Meta_Grind_shareCommon(x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_27); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); return x_28; } -} -} else { uint8_t x_29; @@ -5950,20 +6228,19 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); -x_29 = !lean_is_exclusive(x_18); +x_29 = !lean_is_exclusive(x_25); if (x_29 == 0) { -return x_18; +return x_25; } else { lean_object* x_30; lean_object* x_31; lean_object* x_32; -x_30 = lean_ctor_get(x_18, 0); -x_31 = lean_ctor_get(x_18, 1); +x_30 = lean_ctor_get(x_25, 0); +x_31 = lean_ctor_get(x_25, 1); lean_inc(x_31); lean_inc(x_30); -lean_dec(x_18); +lean_dec(x_25); x_32 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_32, 0, x_30); lean_ctor_set(x_32, 1, x_31); @@ -5982,19 +6259,19 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_33 = !lean_is_exclusive(x_13); +x_33 = !lean_is_exclusive(x_22); if (x_33 == 0) { -return x_13; +return x_22; } else { lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_34 = lean_ctor_get(x_13, 0); -x_35 = lean_ctor_get(x_13, 1); +x_34 = lean_ctor_get(x_22, 0); +x_35 = lean_ctor_get(x_22, 1); lean_inc(x_35); lean_inc(x_34); -lean_dec(x_13); +lean_dec(x_22); x_36 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_36, 0, x_34); lean_ctor_set(x_36, 1, x_35); @@ -6002,6 +6279,93 @@ return x_36; } } } +else +{ +uint8_t x_37; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_37 = !lean_is_exclusive(x_18); +if (x_37 == 0) +{ +return x_18; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_18, 0); +x_39 = lean_ctor_get(x_18, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_18); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; +} +} +} +else +{ +uint8_t x_41; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_41 = !lean_is_exclusive(x_13); +if (x_41 == 0) +{ +return x_13; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_13, 0); +x_43 = lean_ctor_get(x_13, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_13); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_mkENode_x27(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; lean_object* x_13; +x_12 = 0; +x_13 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_12, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_mkENode_x27___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_mkENode_x27(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_12; +} } LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___spec__1(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: @@ -6733,17 +7097,35 @@ static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internaliz _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("nestedProof", 11, 11); +x_1 = lean_mk_string_unchecked("ite", 3, 3); return x_1; } } static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("nestedProof", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__1; x_2 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__2; -x_3 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__1; +x_3 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } @@ -6797,7 +7179,7 @@ lean_inc(x_4); x_20 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_19); if (lean_obj_tag(x_20) == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_34; uint8_t x_35; +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_34; lean_object* x_69; uint8_t x_70; x_21 = lean_ctor_get(x_20, 1); lean_inc(x_21); lean_dec(x_20); @@ -6808,48 +7190,46 @@ x_22 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_in lean_closure_set(x_22, 0, x_1); lean_closure_set(x_22, 1, x_2); lean_closure_set(x_22, 2, x_3); -x_34 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_35 = l_Lean_Expr_isConstOf(x_4, x_34); -if (x_35 == 0) +x_69 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_70 = l_Lean_Expr_isConstOf(x_4, x_69); +if (x_70 == 0) { -lean_object* x_36; -lean_dec(x_3); -x_36 = lean_box(0); -x_23 = x_36; -goto block_33; +lean_object* x_71; +x_71 = lean_box(0); +x_34 = x_71; +goto block_68; } else { -lean_object* x_37; lean_object* x_38; uint8_t x_39; -x_37 = lean_array_get_size(x_5); -x_38 = lean_unsigned_to_nat(2u); -x_39 = lean_nat_dec_eq(x_37, x_38); -if (x_39 == 0) +lean_object* x_72; lean_object* x_73; uint8_t x_74; +x_72 = lean_array_get_size(x_5); +x_73 = lean_unsigned_to_nat(2u); +x_74 = lean_nat_dec_eq(x_72, x_73); +if (x_74 == 0) { -lean_object* x_40; -lean_dec(x_37); -lean_dec(x_3); -x_40 = lean_box(0); -x_23 = x_40; -goto block_33; +lean_object* x_75; +lean_dec(x_72); +x_75 = lean_box(0); +x_34 = x_75; +goto block_68; } else { -lean_object* x_41; uint8_t x_42; lean_object* x_43; +lean_object* x_76; uint8_t x_77; lean_object* x_78; lean_dec(x_22); lean_dec(x_4); -x_41 = lean_unsigned_to_nat(0u); -x_42 = lean_nat_dec_lt(x_41, x_37); -lean_dec(x_37); +x_76 = lean_unsigned_to_nat(0u); +x_77 = lean_nat_dec_lt(x_76, x_72); +lean_dec(x_72); lean_inc(x_1); -x_43 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_43, 0, x_1); -if (x_42 == 0) +x_78 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_78, 0, x_1); +if (x_77 == 0) { -lean_object* x_44; lean_object* x_45; lean_object* x_46; +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_dec(x_5); -x_44 = l_Lean_instInhabitedExpr; -x_45 = l_outOfBounds___rarg(x_44); +x_79 = l_Lean_instInhabitedExpr; +x_80 = l_outOfBounds___rarg(x_79); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -6859,29 +7239,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_45); -x_46 = l_Lean_Meta_Grind_internalize(x_45, x_2, x_43, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); -if (lean_obj_tag(x_46) == 0) +lean_inc(x_80); +x_81 = l_Lean_Meta_Grind_internalize(x_80, x_2, x_78, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +if (lean_obj_tag(x_81) == 0) { -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_47 = lean_ctor_get(x_46, 1); -lean_inc(x_47); -lean_dec(x_46); +lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +lean_dec(x_81); lean_inc(x_1); -x_48 = l_Lean_Meta_Grind_registerParent(x_1, x_45, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_47); -x_49 = lean_ctor_get(x_48, 0); -lean_inc(x_49); -x_50 = lean_ctor_get(x_48, 1); -lean_inc(x_50); -lean_dec(x_48); -x_51 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_49, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_50); -lean_dec(x_49); -return x_51; +x_83 = l_Lean_Meta_Grind_registerParent(x_1, x_80, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_82); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +lean_dec(x_83); +x_86 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_84, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_85); +lean_dec(x_84); +return x_86; } else { -uint8_t x_52; -lean_dec(x_45); +uint8_t x_87; +lean_dec(x_80); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -6893,30 +7273,30 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_52 = !lean_is_exclusive(x_46); -if (x_52 == 0) +x_87 = !lean_is_exclusive(x_81); +if (x_87 == 0) { -return x_46; +return x_81; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_46, 0); -x_54 = lean_ctor_get(x_46, 1); -lean_inc(x_54); -lean_inc(x_53); -lean_dec(x_46); -x_55 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_55, 0, x_53); -lean_ctor_set(x_55, 1, x_54); -return x_55; +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_81, 0); +x_89 = lean_ctor_get(x_81, 1); +lean_inc(x_89); +lean_inc(x_88); +lean_dec(x_81); +x_90 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_90, 0, x_88); +lean_ctor_set(x_90, 1, x_89); +return x_90; } } } else { -lean_object* x_56; lean_object* x_57; -x_56 = lean_array_fget(x_5, x_41); +lean_object* x_91; lean_object* x_92; +x_91 = lean_array_fget(x_5, x_76); lean_dec(x_5); lean_inc(x_14); lean_inc(x_13); @@ -6927,29 +7307,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_56); -x_57 = l_Lean_Meta_Grind_internalize(x_56, x_2, x_43, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); -if (lean_obj_tag(x_57) == 0) +lean_inc(x_91); +x_92 = l_Lean_Meta_Grind_internalize(x_91, x_2, x_78, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +if (lean_obj_tag(x_92) == 0) { -lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_58 = lean_ctor_get(x_57, 1); -lean_inc(x_58); -lean_dec(x_57); +lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_93 = lean_ctor_get(x_92, 1); +lean_inc(x_93); +lean_dec(x_92); lean_inc(x_1); -x_59 = l_Lean_Meta_Grind_registerParent(x_1, x_56, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_58); -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -lean_dec(x_59); -x_62 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_60, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_61); -lean_dec(x_60); -return x_62; +x_94 = l_Lean_Meta_Grind_registerParent(x_1, x_91, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_93); +x_95 = lean_ctor_get(x_94, 0); +lean_inc(x_95); +x_96 = lean_ctor_get(x_94, 1); +lean_inc(x_96); +lean_dec(x_94); +x_97 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_95, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_96); +lean_dec(x_95); +return x_97; } else { -uint8_t x_63; -lean_dec(x_56); +uint8_t x_98; +lean_dec(x_91); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -6961,23 +7341,23 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_63 = !lean_is_exclusive(x_57); -if (x_63 == 0) +x_98 = !lean_is_exclusive(x_92); +if (x_98 == 0) { -return x_57; +return x_92; } else { -lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_64 = lean_ctor_get(x_57, 0); -x_65 = lean_ctor_get(x_57, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_57); -x_66 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_66, 0, x_64); -lean_ctor_set(x_66, 1, x_65); -return x_66; +lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_99 = lean_ctor_get(x_92, 0); +x_100 = lean_ctor_get(x_92, 1); +lean_inc(x_100); +lean_inc(x_99); +lean_dec(x_92); +x_101 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_101, 0, x_99); +lean_ctor_set(x_101, 1, x_100); +return x_101; } } } @@ -7050,10 +7430,190 @@ return x_32; } } } +block_68: +{ +lean_object* x_35; uint8_t x_36; +lean_dec(x_34); +x_35 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_36 = l_Lean_Expr_isConstOf(x_4, x_35); +if (x_36 == 0) +{ +lean_object* x_37; +lean_dec(x_3); +x_37 = lean_box(0); +x_23 = x_37; +goto block_33; } else { -uint8_t x_67; +lean_object* x_38; lean_object* x_39; uint8_t x_40; +x_38 = lean_array_get_size(x_5); +x_39 = lean_unsigned_to_nat(5u); +x_40 = lean_nat_dec_eq(x_38, x_39); +if (x_40 == 0) +{ +lean_object* x_41; +lean_dec(x_38); +lean_dec(x_3); +x_41 = lean_box(0); +x_23 = x_41; +goto block_33; +} +else +{ +lean_object* x_42; uint8_t x_43; lean_object* x_44; +lean_dec(x_22); +lean_dec(x_4); +x_42 = lean_unsigned_to_nat(1u); +x_43 = lean_nat_dec_lt(x_42, x_38); +lean_dec(x_38); +lean_inc(x_1); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_1); +if (x_43 == 0) +{ +lean_object* x_45; lean_object* x_46; lean_object* x_47; +lean_dec(x_5); +x_45 = l_Lean_instInhabitedExpr; +x_46 = l_outOfBounds___rarg(x_45); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_46); +x_47 = l_Lean_Meta_Grind_internalize(x_46, x_2, x_44, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_48 = lean_ctor_get(x_47, 1); +lean_inc(x_48); +lean_dec(x_47); +lean_inc(x_1); +x_49 = l_Lean_Meta_Grind_registerParent(x_1, x_46, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_48); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_49, 1); +lean_inc(x_51); +lean_dec(x_49); +x_52 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_50, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_51); +lean_dec(x_50); +return x_52; +} +else +{ +uint8_t x_53; +lean_dec(x_46); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_53 = !lean_is_exclusive(x_47); +if (x_53 == 0) +{ +return x_47; +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_47, 0); +x_55 = lean_ctor_get(x_47, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_47); +x_56 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_56, 0, x_54); +lean_ctor_set(x_56, 1, x_55); +return x_56; +} +} +} +else +{ +lean_object* x_57; lean_object* x_58; +x_57 = lean_array_fget(x_5, x_42); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_57); +x_58 = l_Lean_Meta_Grind_internalize(x_57, x_2, x_44, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_21); +if (lean_obj_tag(x_58) == 0) +{ +lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_59 = lean_ctor_get(x_58, 1); +lean_inc(x_59); +lean_dec(x_58); +lean_inc(x_1); +x_60 = l_Lean_Meta_Grind_registerParent(x_1, x_57, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_59); +x_61 = lean_ctor_get(x_60, 0); +lean_inc(x_61); +x_62 = lean_ctor_get(x_60, 1); +lean_inc(x_62); +lean_dec(x_60); +x_63 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_61, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_62); +lean_dec(x_61); +return x_63; +} +else +{ +uint8_t x_64; +lean_dec(x_57); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_64 = !lean_is_exclusive(x_58); +if (x_64 == 0) +{ +return x_58; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_58, 0); +x_66 = lean_ctor_get(x_58, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_58); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; +} +} +} +} +} +} +} +else +{ +uint8_t x_102; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -7067,29 +7627,29 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_67 = !lean_is_exclusive(x_20); -if (x_67 == 0) +x_102 = !lean_is_exclusive(x_20); +if (x_102 == 0) { return x_20; } else { -lean_object* x_68; lean_object* x_69; lean_object* x_70; -x_68 = lean_ctor_get(x_20, 0); -x_69 = lean_ctor_get(x_20, 1); -lean_inc(x_69); -lean_inc(x_68); +lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_103 = lean_ctor_get(x_20, 0); +x_104 = lean_ctor_get(x_20, 1); +lean_inc(x_104); +lean_inc(x_103); lean_dec(x_20); -x_70 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_70, 0, x_68); -lean_ctor_set(x_70, 1, x_69); -return x_70; +x_105 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_105, 0, x_103); +lean_ctor_set(x_105, 1, x_104); +return x_105; } } } else { -uint8_t x_71; +uint8_t x_106; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -7103,29 +7663,29 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_71 = !lean_is_exclusive(x_18); -if (x_71 == 0) +x_106 = !lean_is_exclusive(x_18); +if (x_106 == 0) { return x_18; } else { -lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_72 = lean_ctor_get(x_18, 0); -x_73 = lean_ctor_get(x_18, 1); -lean_inc(x_73); -lean_inc(x_72); +lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_107 = lean_ctor_get(x_18, 0); +x_108 = lean_ctor_get(x_18, 1); +lean_inc(x_108); +lean_inc(x_107); lean_dec(x_18); -x_74 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_74, 0, x_72); -lean_ctor_set(x_74, 1, x_73); -return x_74; +x_109 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_109, 0, x_107); +lean_ctor_set(x_109, 1, x_108); +return x_109; } } } else { -uint8_t x_75; +uint8_t x_110; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -7139,42 +7699,42 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_75 = !lean_is_exclusive(x_16); -if (x_75 == 0) +x_110 = !lean_is_exclusive(x_16); +if (x_110 == 0) { return x_16; } else { -lean_object* x_76; lean_object* x_77; lean_object* x_78; -x_76 = lean_ctor_get(x_16, 0); -x_77 = lean_ctor_get(x_16, 1); -lean_inc(x_77); -lean_inc(x_76); +lean_object* x_111; lean_object* x_112; lean_object* x_113; +x_111 = lean_ctor_get(x_16, 0); +x_112 = lean_ctor_get(x_16, 1); +lean_inc(x_112); +lean_inc(x_111); lean_dec(x_16); -x_78 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_78, 0, x_76); -lean_ctor_set(x_78, 1, x_77); -return x_78; +x_113 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_113, 0, x_111); +lean_ctor_set(x_113, 1, x_112); +return x_113; } } } case 1: { -lean_object* x_79; +lean_object* x_114; lean_dec(x_6); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_79 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_79) == 0) +x_114 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_114) == 0) { -lean_object* x_80; lean_object* x_81; -x_80 = lean_ctor_get(x_79, 1); -lean_inc(x_80); -lean_dec(x_79); +lean_object* x_115; lean_object* x_116; +x_115 = lean_ctor_get(x_114, 1); +lean_inc(x_115); +lean_dec(x_114); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -7184,13 +7744,13 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_81 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_80); -if (lean_obj_tag(x_81) == 0) +x_116 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_115); +if (lean_obj_tag(x_116) == 0) { -lean_object* x_82; lean_object* x_83; -x_82 = lean_ctor_get(x_81, 1); -lean_inc(x_82); -lean_dec(x_81); +lean_object* x_117; lean_object* x_118; +x_117 = lean_ctor_get(x_116, 1); +lean_inc(x_117); +lean_dec(x_116); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -7201,62 +7761,60 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_83 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_82); -if (lean_obj_tag(x_83) == 0) +x_118 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_117); +if (lean_obj_tag(x_118) == 0) { -lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_97; uint8_t x_98; -x_84 = lean_ctor_get(x_83, 1); -lean_inc(x_84); -lean_dec(x_83); +lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_132; lean_object* x_167; uint8_t x_168; +x_119 = lean_ctor_get(x_118, 1); +lean_inc(x_119); +lean_dec(x_118); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_85 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_85, 0, x_1); -lean_closure_set(x_85, 1, x_2); -lean_closure_set(x_85, 2, x_3); -x_97 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_98 = l_Lean_Expr_isConstOf(x_4, x_97); -if (x_98 == 0) +x_120 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_120, 0, x_1); +lean_closure_set(x_120, 1, x_2); +lean_closure_set(x_120, 2, x_3); +x_167 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_168 = l_Lean_Expr_isConstOf(x_4, x_167); +if (x_168 == 0) { -lean_object* x_99; -lean_dec(x_3); -x_99 = lean_box(0); -x_86 = x_99; -goto block_96; +lean_object* x_169; +x_169 = lean_box(0); +x_132 = x_169; +goto block_166; } else { -lean_object* x_100; lean_object* x_101; uint8_t x_102; -x_100 = lean_array_get_size(x_5); -x_101 = lean_unsigned_to_nat(2u); -x_102 = lean_nat_dec_eq(x_100, x_101); -if (x_102 == 0) +lean_object* x_170; lean_object* x_171; uint8_t x_172; +x_170 = lean_array_get_size(x_5); +x_171 = lean_unsigned_to_nat(2u); +x_172 = lean_nat_dec_eq(x_170, x_171); +if (x_172 == 0) { -lean_object* x_103; -lean_dec(x_100); -lean_dec(x_3); -x_103 = lean_box(0); -x_86 = x_103; -goto block_96; +lean_object* x_173; +lean_dec(x_170); +x_173 = lean_box(0); +x_132 = x_173; +goto block_166; } else { -lean_object* x_104; uint8_t x_105; lean_object* x_106; -lean_dec(x_85); +lean_object* x_174; uint8_t x_175; lean_object* x_176; +lean_dec(x_120); lean_dec(x_4); -x_104 = lean_unsigned_to_nat(0u); -x_105 = lean_nat_dec_lt(x_104, x_100); -lean_dec(x_100); +x_174 = lean_unsigned_to_nat(0u); +x_175 = lean_nat_dec_lt(x_174, x_170); +lean_dec(x_170); lean_inc(x_1); -x_106 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_106, 0, x_1); -if (x_105 == 0) +x_176 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_176, 0, x_1); +if (x_175 == 0) { -lean_object* x_107; lean_object* x_108; lean_object* x_109; +lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_dec(x_5); -x_107 = l_Lean_instInhabitedExpr; -x_108 = l_outOfBounds___rarg(x_107); +x_177 = l_Lean_instInhabitedExpr; +x_178 = l_outOfBounds___rarg(x_177); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -7266,951 +7824,518 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_108); -x_109 = l_Lean_Meta_Grind_internalize(x_108, x_2, x_106, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_84); -if (lean_obj_tag(x_109) == 0) +lean_inc(x_178); +x_179 = l_Lean_Meta_Grind_internalize(x_178, x_2, x_176, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +if (lean_obj_tag(x_179) == 0) { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; -x_110 = lean_ctor_get(x_109, 1); -lean_inc(x_110); -lean_dec(x_109); +lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; +x_180 = lean_ctor_get(x_179, 1); +lean_inc(x_180); +lean_dec(x_179); lean_inc(x_1); -x_111 = l_Lean_Meta_Grind_registerParent(x_1, x_108, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_110); -x_112 = lean_ctor_get(x_111, 0); -lean_inc(x_112); -x_113 = lean_ctor_get(x_111, 1); -lean_inc(x_113); -lean_dec(x_111); -x_114 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_112, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_113); -lean_dec(x_112); +x_181 = l_Lean_Meta_Grind_registerParent(x_1, x_178, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_180); +x_182 = lean_ctor_get(x_181, 0); +lean_inc(x_182); +x_183 = lean_ctor_get(x_181, 1); +lean_inc(x_183); +lean_dec(x_181); +x_184 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_182, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_183); +lean_dec(x_182); +return x_184; +} +else +{ +uint8_t x_185; +lean_dec(x_178); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_185 = !lean_is_exclusive(x_179); +if (x_185 == 0) +{ +return x_179; +} +else +{ +lean_object* x_186; lean_object* x_187; lean_object* x_188; +x_186 = lean_ctor_get(x_179, 0); +x_187 = lean_ctor_get(x_179, 1); +lean_inc(x_187); +lean_inc(x_186); +lean_dec(x_179); +x_188 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_188, 0, x_186); +lean_ctor_set(x_188, 1, x_187); +return x_188; +} +} +} +else +{ +lean_object* x_189; lean_object* x_190; +x_189 = lean_array_fget(x_5, x_174); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_189); +x_190 = l_Lean_Meta_Grind_internalize(x_189, x_2, x_176, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +if (lean_obj_tag(x_190) == 0) +{ +lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; +x_191 = lean_ctor_get(x_190, 1); +lean_inc(x_191); +lean_dec(x_190); +lean_inc(x_1); +x_192 = l_Lean_Meta_Grind_registerParent(x_1, x_189, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_191); +x_193 = lean_ctor_get(x_192, 0); +lean_inc(x_193); +x_194 = lean_ctor_get(x_192, 1); +lean_inc(x_194); +lean_dec(x_192); +x_195 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_193, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_194); +lean_dec(x_193); +return x_195; +} +else +{ +uint8_t x_196; +lean_dec(x_189); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_196 = !lean_is_exclusive(x_190); +if (x_196 == 0) +{ +return x_190; +} +else +{ +lean_object* x_197; lean_object* x_198; lean_object* x_199; +x_197 = lean_ctor_get(x_190, 0); +x_198 = lean_ctor_get(x_190, 1); +lean_inc(x_198); +lean_inc(x_197); +lean_dec(x_190); +x_199 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_199, 0, x_197); +lean_ctor_set(x_199, 1, x_198); +return x_199; +} +} +} +} +} +block_131: +{ +lean_object* x_122; lean_object* x_123; +lean_dec(x_121); +lean_inc(x_1); +x_122 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_122, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_123 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_122, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +if (lean_obj_tag(x_123) == 0) +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_124 = lean_ctor_get(x_123, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_123, 1); +lean_inc(x_125); +lean_dec(x_123); +x_126 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_120, x_124, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_125); +lean_dec(x_124); +lean_dec(x_5); +return x_126; +} +else +{ +uint8_t x_127; +lean_dec(x_120); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_127 = !lean_is_exclusive(x_123); +if (x_127 == 0) +{ +return x_123; +} +else +{ +lean_object* x_128; lean_object* x_129; lean_object* x_130; +x_128 = lean_ctor_get(x_123, 0); +x_129 = lean_ctor_get(x_123, 1); +lean_inc(x_129); +lean_inc(x_128); +lean_dec(x_123); +x_130 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_130, 0, x_128); +lean_ctor_set(x_130, 1, x_129); +return x_130; +} +} +} +block_166: +{ +lean_object* x_133; uint8_t x_134; +lean_dec(x_132); +x_133 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_134 = l_Lean_Expr_isConstOf(x_4, x_133); +if (x_134 == 0) +{ +lean_object* x_135; +lean_dec(x_3); +x_135 = lean_box(0); +x_121 = x_135; +goto block_131; +} +else +{ +lean_object* x_136; lean_object* x_137; uint8_t x_138; +x_136 = lean_array_get_size(x_5); +x_137 = lean_unsigned_to_nat(5u); +x_138 = lean_nat_dec_eq(x_136, x_137); +if (x_138 == 0) +{ +lean_object* x_139; +lean_dec(x_136); +lean_dec(x_3); +x_139 = lean_box(0); +x_121 = x_139; +goto block_131; +} +else +{ +lean_object* x_140; uint8_t x_141; lean_object* x_142; +lean_dec(x_120); +lean_dec(x_4); +x_140 = lean_unsigned_to_nat(1u); +x_141 = lean_nat_dec_lt(x_140, x_136); +lean_dec(x_136); +lean_inc(x_1); +x_142 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_142, 0, x_1); +if (x_141 == 0) +{ +lean_object* x_143; lean_object* x_144; lean_object* x_145; +lean_dec(x_5); +x_143 = l_Lean_instInhabitedExpr; +x_144 = l_outOfBounds___rarg(x_143); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_144); +x_145 = l_Lean_Meta_Grind_internalize(x_144, x_2, x_142, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +if (lean_obj_tag(x_145) == 0) +{ +lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; +x_146 = lean_ctor_get(x_145, 1); +lean_inc(x_146); +lean_dec(x_145); +lean_inc(x_1); +x_147 = l_Lean_Meta_Grind_registerParent(x_1, x_144, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_146); +x_148 = lean_ctor_get(x_147, 0); +lean_inc(x_148); +x_149 = lean_ctor_get(x_147, 1); +lean_inc(x_149); +lean_dec(x_147); +x_150 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_148, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_149); +lean_dec(x_148); +return x_150; +} +else +{ +uint8_t x_151; +lean_dec(x_144); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_151 = !lean_is_exclusive(x_145); +if (x_151 == 0) +{ +return x_145; +} +else +{ +lean_object* x_152; lean_object* x_153; lean_object* x_154; +x_152 = lean_ctor_get(x_145, 0); +x_153 = lean_ctor_get(x_145, 1); +lean_inc(x_153); +lean_inc(x_152); +lean_dec(x_145); +x_154 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_154, 0, x_152); +lean_ctor_set(x_154, 1, x_153); +return x_154; +} +} +} +else +{ +lean_object* x_155; lean_object* x_156; +x_155 = lean_array_fget(x_5, x_140); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_155); +x_156 = l_Lean_Meta_Grind_internalize(x_155, x_2, x_142, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_119); +if (lean_obj_tag(x_156) == 0) +{ +lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_157 = lean_ctor_get(x_156, 1); +lean_inc(x_157); +lean_dec(x_156); +lean_inc(x_1); +x_158 = l_Lean_Meta_Grind_registerParent(x_1, x_155, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_157); +x_159 = lean_ctor_get(x_158, 0); +lean_inc(x_159); +x_160 = lean_ctor_get(x_158, 1); +lean_inc(x_160); +lean_dec(x_158); +x_161 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_159, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_160); +lean_dec(x_159); +return x_161; +} +else +{ +uint8_t x_162; +lean_dec(x_155); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_162 = !lean_is_exclusive(x_156); +if (x_162 == 0) +{ +return x_156; +} +else +{ +lean_object* x_163; lean_object* x_164; lean_object* x_165; +x_163 = lean_ctor_get(x_156, 0); +x_164 = lean_ctor_get(x_156, 1); +lean_inc(x_164); +lean_inc(x_163); +lean_dec(x_156); +x_165 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_165, 0, x_163); +lean_ctor_set(x_165, 1, x_164); +return x_165; +} +} +} +} +} +} +} +else +{ +uint8_t x_200; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_200 = !lean_is_exclusive(x_118); +if (x_200 == 0) +{ +return x_118; +} +else +{ +lean_object* x_201; lean_object* x_202; lean_object* x_203; +x_201 = lean_ctor_get(x_118, 0); +x_202 = lean_ctor_get(x_118, 1); +lean_inc(x_202); +lean_inc(x_201); +lean_dec(x_118); +x_203 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_203, 0, x_201); +lean_ctor_set(x_203, 1, x_202); +return x_203; +} +} +} +else +{ +uint8_t x_204; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_204 = !lean_is_exclusive(x_116); +if (x_204 == 0) +{ +return x_116; +} +else +{ +lean_object* x_205; lean_object* x_206; lean_object* x_207; +x_205 = lean_ctor_get(x_116, 0); +x_206 = lean_ctor_get(x_116, 1); +lean_inc(x_206); +lean_inc(x_205); +lean_dec(x_116); +x_207 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_207, 0, x_205); +lean_ctor_set(x_207, 1, x_206); +return x_207; +} +} +} +else +{ +uint8_t x_208; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_208 = !lean_is_exclusive(x_114); +if (x_208 == 0) +{ return x_114; } else { -uint8_t x_115; -lean_dec(x_108); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_115 = !lean_is_exclusive(x_109); -if (x_115 == 0) -{ -return x_109; -} -else -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; -x_116 = lean_ctor_get(x_109, 0); -x_117 = lean_ctor_get(x_109, 1); -lean_inc(x_117); -lean_inc(x_116); -lean_dec(x_109); -x_118 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_118, 0, x_116); -lean_ctor_set(x_118, 1, x_117); -return x_118; -} -} -} -else -{ -lean_object* x_119; lean_object* x_120; -x_119 = lean_array_fget(x_5, x_104); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_119); -x_120 = l_Lean_Meta_Grind_internalize(x_119, x_2, x_106, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_84); -if (lean_obj_tag(x_120) == 0) -{ -lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; -x_121 = lean_ctor_get(x_120, 1); -lean_inc(x_121); -lean_dec(x_120); -lean_inc(x_1); -x_122 = l_Lean_Meta_Grind_registerParent(x_1, x_119, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_121); -x_123 = lean_ctor_get(x_122, 0); -lean_inc(x_123); -x_124 = lean_ctor_get(x_122, 1); -lean_inc(x_124); -lean_dec(x_122); -x_125 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_123, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_124); -lean_dec(x_123); -return x_125; -} -else -{ -uint8_t x_126; -lean_dec(x_119); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_126 = !lean_is_exclusive(x_120); -if (x_126 == 0) -{ -return x_120; -} -else -{ -lean_object* x_127; lean_object* x_128; lean_object* x_129; -x_127 = lean_ctor_get(x_120, 0); -x_128 = lean_ctor_get(x_120, 1); -lean_inc(x_128); -lean_inc(x_127); -lean_dec(x_120); -x_129 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_129, 0, x_127); -lean_ctor_set(x_129, 1, x_128); -return x_129; -} -} -} -} -} -block_96: -{ -lean_object* x_87; lean_object* x_88; -lean_dec(x_86); -lean_inc(x_1); -x_87 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_87, 0, x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_88 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_87, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_84); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; lean_object* x_91; -x_89 = lean_ctor_get(x_88, 0); -lean_inc(x_89); -x_90 = lean_ctor_get(x_88, 1); -lean_inc(x_90); -lean_dec(x_88); -x_91 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_85, x_89, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_90); -lean_dec(x_89); -lean_dec(x_5); -return x_91; -} -else -{ -uint8_t x_92; -lean_dec(x_85); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_92 = !lean_is_exclusive(x_88); -if (x_92 == 0) -{ -return x_88; -} -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_93 = lean_ctor_get(x_88, 0); -x_94 = lean_ctor_get(x_88, 1); -lean_inc(x_94); -lean_inc(x_93); -lean_dec(x_88); -x_95 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_94); -return x_95; -} -} -} -} -else -{ -uint8_t x_130; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_130 = !lean_is_exclusive(x_83); -if (x_130 == 0) -{ -return x_83; -} -else -{ -lean_object* x_131; lean_object* x_132; lean_object* x_133; -x_131 = lean_ctor_get(x_83, 0); -x_132 = lean_ctor_get(x_83, 1); -lean_inc(x_132); -lean_inc(x_131); -lean_dec(x_83); -x_133 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_133, 0, x_131); -lean_ctor_set(x_133, 1, x_132); -return x_133; -} -} -} -else -{ -uint8_t x_134; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_134 = !lean_is_exclusive(x_81); -if (x_134 == 0) -{ -return x_81; -} -else -{ -lean_object* x_135; lean_object* x_136; lean_object* x_137; -x_135 = lean_ctor_get(x_81, 0); -x_136 = lean_ctor_get(x_81, 1); -lean_inc(x_136); -lean_inc(x_135); -lean_dec(x_81); -x_137 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_137, 0, x_135); -lean_ctor_set(x_137, 1, x_136); -return x_137; -} -} -} -else -{ -uint8_t x_138; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_138 = !lean_is_exclusive(x_79); -if (x_138 == 0) -{ -return x_79; -} -else -{ -lean_object* x_139; lean_object* x_140; lean_object* x_141; -x_139 = lean_ctor_get(x_79, 0); -x_140 = lean_ctor_get(x_79, 1); -lean_inc(x_140); -lean_inc(x_139); -lean_dec(x_79); -x_141 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_141, 0, x_139); -lean_ctor_set(x_141, 1, x_140); -return x_141; +lean_object* x_209; lean_object* x_210; lean_object* x_211; +x_209 = lean_ctor_get(x_114, 0); +x_210 = lean_ctor_get(x_114, 1); +lean_inc(x_210); +lean_inc(x_209); +lean_dec(x_114); +x_211 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_211, 0, x_209); +lean_ctor_set(x_211, 1, x_210); +return x_211; } } } case 2: { -lean_object* x_142; +lean_object* x_212; lean_dec(x_6); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_142 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_142) == 0) -{ -lean_object* x_143; lean_object* x_144; -x_143 = lean_ctor_get(x_142, 1); -lean_inc(x_143); -lean_dec(x_142); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_1); -x_144 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_143); -if (lean_obj_tag(x_144) == 0) -{ -lean_object* x_145; lean_object* x_146; -x_145 = lean_ctor_get(x_144, 1); -lean_inc(x_145); -lean_dec(x_144); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_146 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_145); -if (lean_obj_tag(x_146) == 0) -{ -lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_160; uint8_t x_161; -x_147 = lean_ctor_get(x_146, 1); -lean_inc(x_147); -lean_dec(x_146); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_148 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_148, 0, x_1); -lean_closure_set(x_148, 1, x_2); -lean_closure_set(x_148, 2, x_3); -x_160 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_161 = l_Lean_Expr_isConstOf(x_4, x_160); -if (x_161 == 0) -{ -lean_object* x_162; -lean_dec(x_3); -x_162 = lean_box(0); -x_149 = x_162; -goto block_159; -} -else -{ -lean_object* x_163; lean_object* x_164; uint8_t x_165; -x_163 = lean_array_get_size(x_5); -x_164 = lean_unsigned_to_nat(2u); -x_165 = lean_nat_dec_eq(x_163, x_164); -if (x_165 == 0) -{ -lean_object* x_166; -lean_dec(x_163); -lean_dec(x_3); -x_166 = lean_box(0); -x_149 = x_166; -goto block_159; -} -else -{ -lean_object* x_167; uint8_t x_168; lean_object* x_169; -lean_dec(x_148); -lean_dec(x_4); -x_167 = lean_unsigned_to_nat(0u); -x_168 = lean_nat_dec_lt(x_167, x_163); -lean_dec(x_163); -lean_inc(x_1); -x_169 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_169, 0, x_1); -if (x_168 == 0) -{ -lean_object* x_170; lean_object* x_171; lean_object* x_172; -lean_dec(x_5); -x_170 = l_Lean_instInhabitedExpr; -x_171 = l_outOfBounds___rarg(x_170); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_171); -x_172 = l_Lean_Meta_Grind_internalize(x_171, x_2, x_169, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_147); -if (lean_obj_tag(x_172) == 0) -{ -lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; -x_173 = lean_ctor_get(x_172, 1); -lean_inc(x_173); -lean_dec(x_172); -lean_inc(x_1); -x_174 = l_Lean_Meta_Grind_registerParent(x_1, x_171, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_173); -x_175 = lean_ctor_get(x_174, 0); -lean_inc(x_175); -x_176 = lean_ctor_get(x_174, 1); -lean_inc(x_176); -lean_dec(x_174); -x_177 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_175, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_176); -lean_dec(x_175); -return x_177; -} -else -{ -uint8_t x_178; -lean_dec(x_171); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_178 = !lean_is_exclusive(x_172); -if (x_178 == 0) -{ -return x_172; -} -else -{ -lean_object* x_179; lean_object* x_180; lean_object* x_181; -x_179 = lean_ctor_get(x_172, 0); -x_180 = lean_ctor_get(x_172, 1); -lean_inc(x_180); -lean_inc(x_179); -lean_dec(x_172); -x_181 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_181, 0, x_179); -lean_ctor_set(x_181, 1, x_180); -return x_181; -} -} -} -else -{ -lean_object* x_182; lean_object* x_183; -x_182 = lean_array_fget(x_5, x_167); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_182); -x_183 = l_Lean_Meta_Grind_internalize(x_182, x_2, x_169, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_147); -if (lean_obj_tag(x_183) == 0) -{ -lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; -x_184 = lean_ctor_get(x_183, 1); -lean_inc(x_184); -lean_dec(x_183); -lean_inc(x_1); -x_185 = l_Lean_Meta_Grind_registerParent(x_1, x_182, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_184); -x_186 = lean_ctor_get(x_185, 0); -lean_inc(x_186); -x_187 = lean_ctor_get(x_185, 1); -lean_inc(x_187); -lean_dec(x_185); -x_188 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_186, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_187); -lean_dec(x_186); -return x_188; -} -else -{ -uint8_t x_189; -lean_dec(x_182); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_189 = !lean_is_exclusive(x_183); -if (x_189 == 0) -{ -return x_183; -} -else -{ -lean_object* x_190; lean_object* x_191; lean_object* x_192; -x_190 = lean_ctor_get(x_183, 0); -x_191 = lean_ctor_get(x_183, 1); -lean_inc(x_191); -lean_inc(x_190); -lean_dec(x_183); -x_192 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_192, 0, x_190); -lean_ctor_set(x_192, 1, x_191); -return x_192; -} -} -} -} -} -block_159: -{ -lean_object* x_150; lean_object* x_151; -lean_dec(x_149); -lean_inc(x_1); -x_150 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_150, 0, x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_151 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_150, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_147); -if (lean_obj_tag(x_151) == 0) -{ -lean_object* x_152; lean_object* x_153; lean_object* x_154; -x_152 = lean_ctor_get(x_151, 0); -lean_inc(x_152); -x_153 = lean_ctor_get(x_151, 1); -lean_inc(x_153); -lean_dec(x_151); -x_154 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_148, x_152, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_153); -lean_dec(x_152); -lean_dec(x_5); -return x_154; -} -else -{ -uint8_t x_155; -lean_dec(x_148); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_155 = !lean_is_exclusive(x_151); -if (x_155 == 0) -{ -return x_151; -} -else -{ -lean_object* x_156; lean_object* x_157; lean_object* x_158; -x_156 = lean_ctor_get(x_151, 0); -x_157 = lean_ctor_get(x_151, 1); -lean_inc(x_157); -lean_inc(x_156); -lean_dec(x_151); -x_158 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_158, 0, x_156); -lean_ctor_set(x_158, 1, x_157); -return x_158; -} -} -} -} -else -{ -uint8_t x_193; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_193 = !lean_is_exclusive(x_146); -if (x_193 == 0) -{ -return x_146; -} -else -{ -lean_object* x_194; lean_object* x_195; lean_object* x_196; -x_194 = lean_ctor_get(x_146, 0); -x_195 = lean_ctor_get(x_146, 1); -lean_inc(x_195); -lean_inc(x_194); -lean_dec(x_146); -x_196 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_196, 0, x_194); -lean_ctor_set(x_196, 1, x_195); -return x_196; -} -} -} -else -{ -uint8_t x_197; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_197 = !lean_is_exclusive(x_144); -if (x_197 == 0) -{ -return x_144; -} -else -{ -lean_object* x_198; lean_object* x_199; lean_object* x_200; -x_198 = lean_ctor_get(x_144, 0); -x_199 = lean_ctor_get(x_144, 1); -lean_inc(x_199); -lean_inc(x_198); -lean_dec(x_144); -x_200 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_200, 0, x_198); -lean_ctor_set(x_200, 1, x_199); -return x_200; -} -} -} -else -{ -uint8_t x_201; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_201 = !lean_is_exclusive(x_142); -if (x_201 == 0) -{ -return x_142; -} -else -{ -lean_object* x_202; lean_object* x_203; lean_object* x_204; -x_202 = lean_ctor_get(x_142, 0); -x_203 = lean_ctor_get(x_142, 1); -lean_inc(x_203); -lean_inc(x_202); -lean_dec(x_142); -x_204 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_204, 0, x_202); -lean_ctor_set(x_204, 1, x_203); -return x_204; -} -} -} -case 3: -{ -lean_object* x_205; -lean_dec(x_6); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_1); -x_205 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_205) == 0) -{ -lean_object* x_206; lean_object* x_207; -x_206 = lean_ctor_get(x_205, 1); -lean_inc(x_206); -lean_dec(x_205); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_1); -x_207 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_206); -if (lean_obj_tag(x_207) == 0) -{ -lean_object* x_208; lean_object* x_209; -x_208 = lean_ctor_get(x_207, 1); -lean_inc(x_208); -lean_dec(x_207); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_209 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_208); -if (lean_obj_tag(x_209) == 0) -{ -lean_object* x_210; lean_object* x_211; lean_object* x_212; lean_object* x_223; uint8_t x_224; -x_210 = lean_ctor_get(x_209, 1); -lean_inc(x_210); -lean_dec(x_209); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_211 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_211, 0, x_1); -lean_closure_set(x_211, 1, x_2); -lean_closure_set(x_211, 2, x_3); -x_223 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_224 = l_Lean_Expr_isConstOf(x_4, x_223); -if (x_224 == 0) -{ -lean_object* x_225; -lean_dec(x_3); -x_225 = lean_box(0); -x_212 = x_225; -goto block_222; -} -else -{ -lean_object* x_226; lean_object* x_227; uint8_t x_228; -x_226 = lean_array_get_size(x_5); -x_227 = lean_unsigned_to_nat(2u); -x_228 = lean_nat_dec_eq(x_226, x_227); -if (x_228 == 0) -{ -lean_object* x_229; -lean_dec(x_226); -lean_dec(x_3); -x_229 = lean_box(0); -x_212 = x_229; -goto block_222; -} -else -{ -lean_object* x_230; uint8_t x_231; lean_object* x_232; -lean_dec(x_211); -lean_dec(x_4); -x_230 = lean_unsigned_to_nat(0u); -x_231 = lean_nat_dec_lt(x_230, x_226); -lean_dec(x_226); -lean_inc(x_1); -x_232 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_232, 0, x_1); -if (x_231 == 0) -{ -lean_object* x_233; lean_object* x_234; lean_object* x_235; -lean_dec(x_5); -x_233 = l_Lean_instInhabitedExpr; -x_234 = l_outOfBounds___rarg(x_233); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_234); -x_235 = l_Lean_Meta_Grind_internalize(x_234, x_2, x_232, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_210); -if (lean_obj_tag(x_235) == 0) -{ -lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; lean_object* x_240; -x_236 = lean_ctor_get(x_235, 1); -lean_inc(x_236); -lean_dec(x_235); -lean_inc(x_1); -x_237 = l_Lean_Meta_Grind_registerParent(x_1, x_234, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_236); -x_238 = lean_ctor_get(x_237, 0); -lean_inc(x_238); -x_239 = lean_ctor_get(x_237, 1); -lean_inc(x_239); -lean_dec(x_237); -x_240 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_238, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_239); -lean_dec(x_238); -return x_240; -} -else -{ -uint8_t x_241; -lean_dec(x_234); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_241 = !lean_is_exclusive(x_235); -if (x_241 == 0) -{ -return x_235; -} -else -{ -lean_object* x_242; lean_object* x_243; lean_object* x_244; -x_242 = lean_ctor_get(x_235, 0); -x_243 = lean_ctor_get(x_235, 1); -lean_inc(x_243); -lean_inc(x_242); -lean_dec(x_235); -x_244 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_244, 0, x_242); -lean_ctor_set(x_244, 1, x_243); -return x_244; -} -} -} -else -{ -lean_object* x_245; lean_object* x_246; -x_245 = lean_array_fget(x_5, x_230); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_245); -x_246 = l_Lean_Meta_Grind_internalize(x_245, x_2, x_232, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_210); -if (lean_obj_tag(x_246) == 0) -{ -lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; -x_247 = lean_ctor_get(x_246, 1); -lean_inc(x_247); -lean_dec(x_246); -lean_inc(x_1); -x_248 = l_Lean_Meta_Grind_registerParent(x_1, x_245, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_247); -x_249 = lean_ctor_get(x_248, 0); -lean_inc(x_249); -x_250 = lean_ctor_get(x_248, 1); -lean_inc(x_250); -lean_dec(x_248); -x_251 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_249, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_250); -lean_dec(x_249); -return x_251; -} -else -{ -uint8_t x_252; -lean_dec(x_245); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_252 = !lean_is_exclusive(x_246); -if (x_252 == 0) -{ -return x_246; -} -else -{ -lean_object* x_253; lean_object* x_254; lean_object* x_255; -x_253 = lean_ctor_get(x_246, 0); -x_254 = lean_ctor_get(x_246, 1); -lean_inc(x_254); -lean_inc(x_253); -lean_dec(x_246); -x_255 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_255, 0, x_253); -lean_ctor_set(x_255, 1, x_254); -return x_255; -} -} -} -} -} -block_222: +x_212 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_212) == 0) { lean_object* x_213; lean_object* x_214; +x_213 = lean_ctor_get(x_212, 1); +lean_inc(x_213); lean_dec(x_212); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); lean_inc(x_1); -x_213 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_213, 0, x_1); +x_214 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_213); +if (lean_obj_tag(x_214) == 0) +{ +lean_object* x_215; lean_object* x_216; +x_215 = lean_ctor_get(x_214, 1); +lean_inc(x_215); +lean_dec(x_214); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8221,24 +8346,92 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_214 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_213, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_210); -if (lean_obj_tag(x_214) == 0) +x_216 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_215); +if (lean_obj_tag(x_216) == 0) { -lean_object* x_215; lean_object* x_216; lean_object* x_217; -x_215 = lean_ctor_get(x_214, 0); -lean_inc(x_215); -x_216 = lean_ctor_get(x_214, 1); -lean_inc(x_216); -lean_dec(x_214); -x_217 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_211, x_215, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_216); -lean_dec(x_215); -lean_dec(x_5); -return x_217; +lean_object* x_217; lean_object* x_218; lean_object* x_219; lean_object* x_230; lean_object* x_265; uint8_t x_266; +x_217 = lean_ctor_get(x_216, 1); +lean_inc(x_217); +lean_dec(x_216); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_218 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_218, 0, x_1); +lean_closure_set(x_218, 1, x_2); +lean_closure_set(x_218, 2, x_3); +x_265 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_266 = l_Lean_Expr_isConstOf(x_4, x_265); +if (x_266 == 0) +{ +lean_object* x_267; +x_267 = lean_box(0); +x_230 = x_267; +goto block_264; } else { -uint8_t x_218; -lean_dec(x_211); +lean_object* x_268; lean_object* x_269; uint8_t x_270; +x_268 = lean_array_get_size(x_5); +x_269 = lean_unsigned_to_nat(2u); +x_270 = lean_nat_dec_eq(x_268, x_269); +if (x_270 == 0) +{ +lean_object* x_271; +lean_dec(x_268); +x_271 = lean_box(0); +x_230 = x_271; +goto block_264; +} +else +{ +lean_object* x_272; uint8_t x_273; lean_object* x_274; +lean_dec(x_218); +lean_dec(x_4); +x_272 = lean_unsigned_to_nat(0u); +x_273 = lean_nat_dec_lt(x_272, x_268); +lean_dec(x_268); +lean_inc(x_1); +x_274 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_274, 0, x_1); +if (x_273 == 0) +{ +lean_object* x_275; lean_object* x_276; lean_object* x_277; +lean_dec(x_5); +x_275 = l_Lean_instInhabitedExpr; +x_276 = l_outOfBounds___rarg(x_275); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_276); +x_277 = l_Lean_Meta_Grind_internalize(x_276, x_2, x_274, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_217); +if (lean_obj_tag(x_277) == 0) +{ +lean_object* x_278; lean_object* x_279; lean_object* x_280; lean_object* x_281; lean_object* x_282; +x_278 = lean_ctor_get(x_277, 1); +lean_inc(x_278); +lean_dec(x_277); +lean_inc(x_1); +x_279 = l_Lean_Meta_Grind_registerParent(x_1, x_276, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_278); +x_280 = lean_ctor_get(x_279, 0); +lean_inc(x_280); +x_281 = lean_ctor_get(x_279, 1); +lean_inc(x_281); +lean_dec(x_279); +x_282 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_280, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_281); +lean_dec(x_280); +return x_282; +} +else +{ +uint8_t x_283; +lean_dec(x_276); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8247,70 +8440,312 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_218 = !lean_is_exclusive(x_214); -if (x_218 == 0) -{ -return x_214; -} -else -{ -lean_object* x_219; lean_object* x_220; lean_object* x_221; -x_219 = lean_ctor_get(x_214, 0); -x_220 = lean_ctor_get(x_214, 1); -lean_inc(x_220); -lean_inc(x_219); -lean_dec(x_214); -x_221 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_221, 0, x_219); -lean_ctor_set(x_221, 1, x_220); -return x_221; -} -} -} -} -else -{ -uint8_t x_256; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_256 = !lean_is_exclusive(x_209); -if (x_256 == 0) +x_283 = !lean_is_exclusive(x_277); +if (x_283 == 0) { -return x_209; +return x_277; } else { -lean_object* x_257; lean_object* x_258; lean_object* x_259; -x_257 = lean_ctor_get(x_209, 0); -x_258 = lean_ctor_get(x_209, 1); -lean_inc(x_258); +lean_object* x_284; lean_object* x_285; lean_object* x_286; +x_284 = lean_ctor_get(x_277, 0); +x_285 = lean_ctor_get(x_277, 1); +lean_inc(x_285); +lean_inc(x_284); +lean_dec(x_277); +x_286 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_286, 0, x_284); +lean_ctor_set(x_286, 1, x_285); +return x_286; +} +} +} +else +{ +lean_object* x_287; lean_object* x_288; +x_287 = lean_array_fget(x_5, x_272); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_287); +x_288 = l_Lean_Meta_Grind_internalize(x_287, x_2, x_274, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_217); +if (lean_obj_tag(x_288) == 0) +{ +lean_object* x_289; lean_object* x_290; lean_object* x_291; lean_object* x_292; lean_object* x_293; +x_289 = lean_ctor_get(x_288, 1); +lean_inc(x_289); +lean_dec(x_288); +lean_inc(x_1); +x_290 = l_Lean_Meta_Grind_registerParent(x_1, x_287, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_289); +x_291 = lean_ctor_get(x_290, 0); +lean_inc(x_291); +x_292 = lean_ctor_get(x_290, 1); +lean_inc(x_292); +lean_dec(x_290); +x_293 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_291, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_292); +lean_dec(x_291); +return x_293; +} +else +{ +uint8_t x_294; +lean_dec(x_287); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_294 = !lean_is_exclusive(x_288); +if (x_294 == 0) +{ +return x_288; +} +else +{ +lean_object* x_295; lean_object* x_296; lean_object* x_297; +x_295 = lean_ctor_get(x_288, 0); +x_296 = lean_ctor_get(x_288, 1); +lean_inc(x_296); +lean_inc(x_295); +lean_dec(x_288); +x_297 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_297, 0, x_295); +lean_ctor_set(x_297, 1, x_296); +return x_297; +} +} +} +} +} +block_229: +{ +lean_object* x_220; lean_object* x_221; +lean_dec(x_219); +lean_inc(x_1); +x_220 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_220, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_221 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_220, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_217); +if (lean_obj_tag(x_221) == 0) +{ +lean_object* x_222; lean_object* x_223; lean_object* x_224; +x_222 = lean_ctor_get(x_221, 0); +lean_inc(x_222); +x_223 = lean_ctor_get(x_221, 1); +lean_inc(x_223); +lean_dec(x_221); +x_224 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_218, x_222, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_223); +lean_dec(x_222); +lean_dec(x_5); +return x_224; +} +else +{ +uint8_t x_225; +lean_dec(x_218); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_225 = !lean_is_exclusive(x_221); +if (x_225 == 0) +{ +return x_221; +} +else +{ +lean_object* x_226; lean_object* x_227; lean_object* x_228; +x_226 = lean_ctor_get(x_221, 0); +x_227 = lean_ctor_get(x_221, 1); +lean_inc(x_227); +lean_inc(x_226); +lean_dec(x_221); +x_228 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_228, 0, x_226); +lean_ctor_set(x_228, 1, x_227); +return x_228; +} +} +} +block_264: +{ +lean_object* x_231; uint8_t x_232; +lean_dec(x_230); +x_231 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_232 = l_Lean_Expr_isConstOf(x_4, x_231); +if (x_232 == 0) +{ +lean_object* x_233; +lean_dec(x_3); +x_233 = lean_box(0); +x_219 = x_233; +goto block_229; +} +else +{ +lean_object* x_234; lean_object* x_235; uint8_t x_236; +x_234 = lean_array_get_size(x_5); +x_235 = lean_unsigned_to_nat(5u); +x_236 = lean_nat_dec_eq(x_234, x_235); +if (x_236 == 0) +{ +lean_object* x_237; +lean_dec(x_234); +lean_dec(x_3); +x_237 = lean_box(0); +x_219 = x_237; +goto block_229; +} +else +{ +lean_object* x_238; uint8_t x_239; lean_object* x_240; +lean_dec(x_218); +lean_dec(x_4); +x_238 = lean_unsigned_to_nat(1u); +x_239 = lean_nat_dec_lt(x_238, x_234); +lean_dec(x_234); +lean_inc(x_1); +x_240 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_240, 0, x_1); +if (x_239 == 0) +{ +lean_object* x_241; lean_object* x_242; lean_object* x_243; +lean_dec(x_5); +x_241 = l_Lean_instInhabitedExpr; +x_242 = l_outOfBounds___rarg(x_241); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_242); +x_243 = l_Lean_Meta_Grind_internalize(x_242, x_2, x_240, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_217); +if (lean_obj_tag(x_243) == 0) +{ +lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; +x_244 = lean_ctor_get(x_243, 1); +lean_inc(x_244); +lean_dec(x_243); +lean_inc(x_1); +x_245 = l_Lean_Meta_Grind_registerParent(x_1, x_242, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_244); +x_246 = lean_ctor_get(x_245, 0); +lean_inc(x_246); +x_247 = lean_ctor_get(x_245, 1); +lean_inc(x_247); +lean_dec(x_245); +x_248 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_246, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_247); +lean_dec(x_246); +return x_248; +} +else +{ +uint8_t x_249; +lean_dec(x_242); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_249 = !lean_is_exclusive(x_243); +if (x_249 == 0) +{ +return x_243; +} +else +{ +lean_object* x_250; lean_object* x_251; lean_object* x_252; +x_250 = lean_ctor_get(x_243, 0); +x_251 = lean_ctor_get(x_243, 1); +lean_inc(x_251); +lean_inc(x_250); +lean_dec(x_243); +x_252 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_252, 0, x_250); +lean_ctor_set(x_252, 1, x_251); +return x_252; +} +} +} +else +{ +lean_object* x_253; lean_object* x_254; +x_253 = lean_array_fget(x_5, x_238); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_253); +x_254 = l_Lean_Meta_Grind_internalize(x_253, x_2, x_240, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_217); +if (lean_obj_tag(x_254) == 0) +{ +lean_object* x_255; lean_object* x_256; lean_object* x_257; lean_object* x_258; lean_object* x_259; +x_255 = lean_ctor_get(x_254, 1); +lean_inc(x_255); +lean_dec(x_254); +lean_inc(x_1); +x_256 = l_Lean_Meta_Grind_registerParent(x_1, x_253, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_255); +x_257 = lean_ctor_get(x_256, 0); lean_inc(x_257); -lean_dec(x_209); -x_259 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_259, 0, x_257); -lean_ctor_set(x_259, 1, x_258); +x_258 = lean_ctor_get(x_256, 1); +lean_inc(x_258); +lean_dec(x_256); +x_259 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_257, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_258); +lean_dec(x_257); return x_259; } -} -} else { uint8_t x_260; +lean_dec(x_253); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8319,24 +8754,22 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_260 = !lean_is_exclusive(x_207); +x_260 = !lean_is_exclusive(x_254); if (x_260 == 0) { -return x_207; +return x_254; } else { lean_object* x_261; lean_object* x_262; lean_object* x_263; -x_261 = lean_ctor_get(x_207, 0); -x_262 = lean_ctor_get(x_207, 1); +x_261 = lean_ctor_get(x_254, 0); +x_262 = lean_ctor_get(x_254, 1); lean_inc(x_262); lean_inc(x_261); -lean_dec(x_207); +lean_dec(x_254); x_263 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_263, 0, x_261); lean_ctor_set(x_263, 1, x_262); @@ -8344,9 +8777,13 @@ return x_263; } } } +} +} +} +} else { -uint8_t x_264; +uint8_t x_298; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8360,44 +8797,114 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_264 = !lean_is_exclusive(x_205); -if (x_264 == 0) +x_298 = !lean_is_exclusive(x_216); +if (x_298 == 0) { -return x_205; +return x_216; } else { -lean_object* x_265; lean_object* x_266; lean_object* x_267; -x_265 = lean_ctor_get(x_205, 0); -x_266 = lean_ctor_get(x_205, 1); -lean_inc(x_266); -lean_inc(x_265); -lean_dec(x_205); -x_267 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_267, 0, x_265); -lean_ctor_set(x_267, 1, x_266); -return x_267; +lean_object* x_299; lean_object* x_300; lean_object* x_301; +x_299 = lean_ctor_get(x_216, 0); +x_300 = lean_ctor_get(x_216, 1); +lean_inc(x_300); +lean_inc(x_299); +lean_dec(x_216); +x_301 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_301, 0, x_299); +lean_ctor_set(x_301, 1, x_300); +return x_301; } } } -case 4: +else { -lean_object* x_268; lean_object* x_269; +uint8_t x_302; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_302 = !lean_is_exclusive(x_214); +if (x_302 == 0) +{ +return x_214; +} +else +{ +lean_object* x_303; lean_object* x_304; lean_object* x_305; +x_303 = lean_ctor_get(x_214, 0); +x_304 = lean_ctor_get(x_214, 1); +lean_inc(x_304); +lean_inc(x_303); +lean_dec(x_214); +x_305 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_305, 0, x_303); +lean_ctor_set(x_305, 1, x_304); +return x_305; +} +} +} +else +{ +uint8_t x_306; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_306 = !lean_is_exclusive(x_212); +if (x_306 == 0) +{ +return x_212; +} +else +{ +lean_object* x_307; lean_object* x_308; lean_object* x_309; +x_307 = lean_ctor_get(x_212, 0); +x_308 = lean_ctor_get(x_212, 1); +lean_inc(x_308); +lean_inc(x_307); +lean_dec(x_212); +x_309 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_309, 0, x_307); +lean_ctor_set(x_309, 1, x_308); +return x_309; +} +} +} +case 3: +{ +lean_object* x_310; lean_dec(x_6); -x_268 = lean_ctor_get(x_4, 0); -lean_inc(x_268); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_269 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_269) == 0) +x_310 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_310) == 0) { -lean_object* x_270; lean_object* x_271; -x_270 = lean_ctor_get(x_269, 1); -lean_inc(x_270); -lean_dec(x_269); +lean_object* x_311; lean_object* x_312; +x_311 = lean_ctor_get(x_310, 1); +lean_inc(x_311); +lean_dec(x_310); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8407,13 +8914,13 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_271 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_270); -if (lean_obj_tag(x_271) == 0) +x_312 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_311); +if (lean_obj_tag(x_312) == 0) { -lean_object* x_272; lean_object* x_273; -x_272 = lean_ctor_get(x_271, 1); -lean_inc(x_272); -lean_dec(x_271); +lean_object* x_313; lean_object* x_314; +x_313 = lean_ctor_get(x_312, 1); +lean_inc(x_313); +lean_dec(x_312); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8424,63 +8931,60 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_273 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_272); -if (lean_obj_tag(x_273) == 0) +x_314 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_313); +if (lean_obj_tag(x_314) == 0) { -lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_286; uint8_t x_287; -x_274 = lean_ctor_get(x_273, 1); -lean_inc(x_274); -lean_dec(x_273); +lean_object* x_315; lean_object* x_316; lean_object* x_317; lean_object* x_328; lean_object* x_363; uint8_t x_364; +x_315 = lean_ctor_get(x_314, 1); +lean_inc(x_315); +lean_dec(x_314); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_275 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_275, 0, x_1); -lean_closure_set(x_275, 1, x_2); -lean_closure_set(x_275, 2, x_3); -x_286 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_287 = l_Lean_Expr_isConstOf(x_4, x_286); -if (x_287 == 0) +x_316 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_316, 0, x_1); +lean_closure_set(x_316, 1, x_2); +lean_closure_set(x_316, 2, x_3); +x_363 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_364 = l_Lean_Expr_isConstOf(x_4, x_363); +if (x_364 == 0) { -lean_object* x_288; -lean_dec(x_3); -x_288 = lean_box(0); -x_276 = x_288; -goto block_285; +lean_object* x_365; +x_365 = lean_box(0); +x_328 = x_365; +goto block_362; } else { -lean_object* x_289; lean_object* x_290; uint8_t x_291; -x_289 = lean_array_get_size(x_5); -x_290 = lean_unsigned_to_nat(2u); -x_291 = lean_nat_dec_eq(x_289, x_290); -if (x_291 == 0) +lean_object* x_366; lean_object* x_367; uint8_t x_368; +x_366 = lean_array_get_size(x_5); +x_367 = lean_unsigned_to_nat(2u); +x_368 = lean_nat_dec_eq(x_366, x_367); +if (x_368 == 0) { -lean_object* x_292; -lean_dec(x_289); -lean_dec(x_3); -x_292 = lean_box(0); -x_276 = x_292; -goto block_285; +lean_object* x_369; +lean_dec(x_366); +x_369 = lean_box(0); +x_328 = x_369; +goto block_362; } else { -lean_object* x_293; uint8_t x_294; lean_object* x_295; -lean_dec(x_275); -lean_dec(x_268); +lean_object* x_370; uint8_t x_371; lean_object* x_372; +lean_dec(x_316); lean_dec(x_4); -x_293 = lean_unsigned_to_nat(0u); -x_294 = lean_nat_dec_lt(x_293, x_289); -lean_dec(x_289); +x_370 = lean_unsigned_to_nat(0u); +x_371 = lean_nat_dec_lt(x_370, x_366); +lean_dec(x_366); lean_inc(x_1); -x_295 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_295, 0, x_1); -if (x_294 == 0) +x_372 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_372, 0, x_1); +if (x_371 == 0) { -lean_object* x_296; lean_object* x_297; lean_object* x_298; +lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_dec(x_5); -x_296 = l_Lean_instInhabitedExpr; -x_297 = l_outOfBounds___rarg(x_296); +x_373 = l_Lean_instInhabitedExpr; +x_374 = l_outOfBounds___rarg(x_373); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8490,29 +8994,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_297); -x_298 = l_Lean_Meta_Grind_internalize(x_297, x_2, x_295, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_274); -if (lean_obj_tag(x_298) == 0) +lean_inc(x_374); +x_375 = l_Lean_Meta_Grind_internalize(x_374, x_2, x_372, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_315); +if (lean_obj_tag(x_375) == 0) { -lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; -x_299 = lean_ctor_get(x_298, 1); -lean_inc(x_299); -lean_dec(x_298); +lean_object* x_376; lean_object* x_377; lean_object* x_378; lean_object* x_379; lean_object* x_380; +x_376 = lean_ctor_get(x_375, 1); +lean_inc(x_376); +lean_dec(x_375); lean_inc(x_1); -x_300 = l_Lean_Meta_Grind_registerParent(x_1, x_297, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_299); -x_301 = lean_ctor_get(x_300, 0); -lean_inc(x_301); -x_302 = lean_ctor_get(x_300, 1); -lean_inc(x_302); -lean_dec(x_300); -x_303 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_301, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_302); -lean_dec(x_301); -return x_303; +x_377 = l_Lean_Meta_Grind_registerParent(x_1, x_374, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_376); +x_378 = lean_ctor_get(x_377, 0); +lean_inc(x_378); +x_379 = lean_ctor_get(x_377, 1); +lean_inc(x_379); +lean_dec(x_377); +x_380 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_378, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_379); +lean_dec(x_378); +return x_380; } else { -uint8_t x_304; -lean_dec(x_297); +uint8_t x_381; +lean_dec(x_374); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8524,30 +9028,30 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_304 = !lean_is_exclusive(x_298); -if (x_304 == 0) +x_381 = !lean_is_exclusive(x_375); +if (x_381 == 0) { -return x_298; +return x_375; } else { -lean_object* x_305; lean_object* x_306; lean_object* x_307; -x_305 = lean_ctor_get(x_298, 0); -x_306 = lean_ctor_get(x_298, 1); -lean_inc(x_306); -lean_inc(x_305); -lean_dec(x_298); -x_307 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_307, 0, x_305); -lean_ctor_set(x_307, 1, x_306); -return x_307; +lean_object* x_382; lean_object* x_383; lean_object* x_384; +x_382 = lean_ctor_get(x_375, 0); +x_383 = lean_ctor_get(x_375, 1); +lean_inc(x_383); +lean_inc(x_382); +lean_dec(x_375); +x_384 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_384, 0, x_382); +lean_ctor_set(x_384, 1, x_383); +return x_384; } } } else { -lean_object* x_308; lean_object* x_309; -x_308 = lean_array_fget(x_5, x_293); +lean_object* x_385; lean_object* x_386; +x_385 = lean_array_fget(x_5, x_370); lean_dec(x_5); lean_inc(x_14); lean_inc(x_13); @@ -8558,29 +9062,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_308); -x_309 = l_Lean_Meta_Grind_internalize(x_308, x_2, x_295, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_274); -if (lean_obj_tag(x_309) == 0) +lean_inc(x_385); +x_386 = l_Lean_Meta_Grind_internalize(x_385, x_2, x_372, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_315); +if (lean_obj_tag(x_386) == 0) { -lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; -x_310 = lean_ctor_get(x_309, 1); -lean_inc(x_310); -lean_dec(x_309); +lean_object* x_387; lean_object* x_388; lean_object* x_389; lean_object* x_390; lean_object* x_391; +x_387 = lean_ctor_get(x_386, 1); +lean_inc(x_387); +lean_dec(x_386); lean_inc(x_1); -x_311 = l_Lean_Meta_Grind_registerParent(x_1, x_308, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_310); -x_312 = lean_ctor_get(x_311, 0); -lean_inc(x_312); -x_313 = lean_ctor_get(x_311, 1); -lean_inc(x_313); -lean_dec(x_311); -x_314 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_312, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_313); -lean_dec(x_312); -return x_314; +x_388 = l_Lean_Meta_Grind_registerParent(x_1, x_385, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_387); +x_389 = lean_ctor_get(x_388, 0); +lean_inc(x_389); +x_390 = lean_ctor_get(x_388, 1); +lean_inc(x_390); +lean_dec(x_388); +x_391 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_389, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_390); +lean_dec(x_389); +return x_391; } else { -uint8_t x_315; -lean_dec(x_308); +uint8_t x_392; +lean_dec(x_385); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8592,32 +9096,35 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_315 = !lean_is_exclusive(x_309); -if (x_315 == 0) +x_392 = !lean_is_exclusive(x_386); +if (x_392 == 0) { -return x_309; +return x_386; } else { -lean_object* x_316; lean_object* x_317; lean_object* x_318; -x_316 = lean_ctor_get(x_309, 0); -x_317 = lean_ctor_get(x_309, 1); -lean_inc(x_317); -lean_inc(x_316); -lean_dec(x_309); -x_318 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_318, 0, x_316); -lean_ctor_set(x_318, 1, x_317); -return x_318; +lean_object* x_393; lean_object* x_394; lean_object* x_395; +x_393 = lean_ctor_get(x_386, 0); +x_394 = lean_ctor_get(x_386, 1); +lean_inc(x_394); +lean_inc(x_393); +lean_dec(x_386); +x_395 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_395, 0, x_393); +lean_ctor_set(x_395, 1, x_394); +return x_395; } } } } } -block_285: +block_327: { -lean_object* x_277; -lean_dec(x_276); +lean_object* x_318; lean_object* x_319; +lean_dec(x_317); +lean_inc(x_1); +x_318 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_318, 0, x_1); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8627,99 +9134,25 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -x_277 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns(x_268, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_274); -lean_dec(x_268); -if (lean_obj_tag(x_277) == 0) -{ -lean_object* x_278; lean_object* x_279; lean_object* x_280; -x_278 = lean_ctor_get(x_277, 0); -lean_inc(x_278); -x_279 = lean_ctor_get(x_277, 1); -lean_inc(x_279); -lean_dec(x_277); -x_280 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_275, x_278, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_279); -lean_dec(x_278); -lean_dec(x_5); -return x_280; -} -else -{ -uint8_t x_281; -lean_dec(x_275); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_281 = !lean_is_exclusive(x_277); -if (x_281 == 0) -{ -return x_277; -} -else -{ -lean_object* x_282; lean_object* x_283; lean_object* x_284; -x_282 = lean_ctor_get(x_277, 0); -x_283 = lean_ctor_get(x_277, 1); -lean_inc(x_283); -lean_inc(x_282); -lean_dec(x_277); -x_284 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_284, 0, x_282); -lean_ctor_set(x_284, 1, x_283); -return x_284; -} -} -} -} -else -{ -uint8_t x_319; -lean_dec(x_268); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_319 = !lean_is_exclusive(x_273); -if (x_319 == 0) -{ -return x_273; -} -else +lean_inc(x_4); +x_319 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_318, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_315); +if (lean_obj_tag(x_319) == 0) { lean_object* x_320; lean_object* x_321; lean_object* x_322; -x_320 = lean_ctor_get(x_273, 0); -x_321 = lean_ctor_get(x_273, 1); -lean_inc(x_321); +x_320 = lean_ctor_get(x_319, 0); lean_inc(x_320); -lean_dec(x_273); -x_322 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_322, 0, x_320); -lean_ctor_set(x_322, 1, x_321); +x_321 = lean_ctor_get(x_319, 1); +lean_inc(x_321); +lean_dec(x_319); +x_322 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_316, x_320, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_321); +lean_dec(x_320); +lean_dec(x_5); return x_322; } -} -} else { uint8_t x_323; -lean_dec(x_268); +lean_dec(x_316); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -8730,22 +9163,21 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_323 = !lean_is_exclusive(x_271); +x_323 = !lean_is_exclusive(x_319); if (x_323 == 0) { -return x_271; +return x_319; } else { lean_object* x_324; lean_object* x_325; lean_object* x_326; -x_324 = lean_ctor_get(x_271, 0); -x_325 = lean_ctor_get(x_271, 1); +x_324 = lean_ctor_get(x_319, 0); +x_325 = lean_ctor_get(x_319, 1); lean_inc(x_325); lean_inc(x_324); -lean_dec(x_271); +lean_dec(x_319); x_326 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_326, 0, x_324); lean_ctor_set(x_326, 1, x_325); @@ -8753,92 +9185,52 @@ return x_326; } } } -else +block_362: { -uint8_t x_327; -lean_dec(x_268); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); +lean_object* x_329; uint8_t x_330; +lean_dec(x_328); +x_329 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_330 = l_Lean_Expr_isConstOf(x_4, x_329); +if (x_330 == 0) +{ +lean_object* x_331; lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_327 = !lean_is_exclusive(x_269); -if (x_327 == 0) -{ -return x_269; +x_331 = lean_box(0); +x_317 = x_331; +goto block_327; } else { -lean_object* x_328; lean_object* x_329; lean_object* x_330; -x_328 = lean_ctor_get(x_269, 0); -x_329 = lean_ctor_get(x_269, 1); -lean_inc(x_329); -lean_inc(x_328); -lean_dec(x_269); -x_330 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_330, 0, x_328); -lean_ctor_set(x_330, 1, x_329); -return x_330; -} -} -} -case 5: +lean_object* x_332; lean_object* x_333; uint8_t x_334; +x_332 = lean_array_get_size(x_5); +x_333 = lean_unsigned_to_nat(5u); +x_334 = lean_nat_dec_eq(x_332, x_333); +if (x_334 == 0) { -lean_object* x_331; lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; -x_331 = lean_ctor_get(x_4, 0); -lean_inc(x_331); -x_332 = lean_ctor_get(x_4, 1); -lean_inc(x_332); +lean_object* x_335; +lean_dec(x_332); +lean_dec(x_3); +x_335 = lean_box(0); +x_317 = x_335; +goto block_327; +} +else +{ +lean_object* x_336; uint8_t x_337; lean_object* x_338; +lean_dec(x_316); lean_dec(x_4); -x_333 = lean_array_set(x_5, x_6, x_332); -x_334 = lean_unsigned_to_nat(1u); -x_335 = lean_nat_sub(x_6, x_334); -lean_dec(x_6); -x_4 = x_331; -x_5 = x_333; -x_6 = x_335; -goto _start; -} -case 6: -{ -lean_object* x_337; -lean_dec(x_6); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); +x_336 = lean_unsigned_to_nat(1u); +x_337 = lean_nat_dec_lt(x_336, x_332); +lean_dec(x_332); lean_inc(x_1); -x_337 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_337) == 0) +x_338 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_338, 0, x_1); +if (x_337 == 0) { -lean_object* x_338; lean_object* x_339; -x_338 = lean_ctor_get(x_337, 1); -lean_inc(x_338); -lean_dec(x_337); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_1); -x_339 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_338); -if (lean_obj_tag(x_339) == 0) -{ -lean_object* x_340; lean_object* x_341; -x_340 = lean_ctor_get(x_339, 1); -lean_inc(x_340); -lean_dec(x_339); +lean_object* x_339; lean_object* x_340; lean_object* x_341; +lean_dec(x_5); +x_339 = l_Lean_instInhabitedExpr; +x_340 = l_outOfBounds___rarg(x_339); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -8848,267 +9240,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_4); -x_341 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_340); +lean_inc(x_340); +x_341 = l_Lean_Meta_Grind_internalize(x_340, x_2, x_338, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_315); if (lean_obj_tag(x_341) == 0) { -lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_355; uint8_t x_356; +lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; x_342 = lean_ctor_get(x_341, 1); lean_inc(x_342); lean_dec(x_341); -lean_inc(x_3); -lean_inc(x_2); lean_inc(x_1); -x_343 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_343, 0, x_1); -lean_closure_set(x_343, 1, x_2); -lean_closure_set(x_343, 2, x_3); -x_355 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_356 = l_Lean_Expr_isConstOf(x_4, x_355); -if (x_356 == 0) -{ -lean_object* x_357; -lean_dec(x_3); -x_357 = lean_box(0); -x_344 = x_357; -goto block_354; -} -else -{ -lean_object* x_358; lean_object* x_359; uint8_t x_360; -x_358 = lean_array_get_size(x_5); -x_359 = lean_unsigned_to_nat(2u); -x_360 = lean_nat_dec_eq(x_358, x_359); -if (x_360 == 0) -{ -lean_object* x_361; -lean_dec(x_358); -lean_dec(x_3); -x_361 = lean_box(0); -x_344 = x_361; -goto block_354; -} -else -{ -lean_object* x_362; uint8_t x_363; lean_object* x_364; +x_343 = l_Lean_Meta_Grind_registerParent(x_1, x_340, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_342); +x_344 = lean_ctor_get(x_343, 0); +lean_inc(x_344); +x_345 = lean_ctor_get(x_343, 1); +lean_inc(x_345); lean_dec(x_343); -lean_dec(x_4); -x_362 = lean_unsigned_to_nat(0u); -x_363 = lean_nat_dec_lt(x_362, x_358); -lean_dec(x_358); -lean_inc(x_1); -x_364 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_364, 0, x_1); -if (x_363 == 0) -{ -lean_object* x_365; lean_object* x_366; lean_object* x_367; -lean_dec(x_5); -x_365 = l_Lean_instInhabitedExpr; -x_366 = l_outOfBounds___rarg(x_365); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_366); -x_367 = l_Lean_Meta_Grind_internalize(x_366, x_2, x_364, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_342); -if (lean_obj_tag(x_367) == 0) -{ -lean_object* x_368; lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; -x_368 = lean_ctor_get(x_367, 1); -lean_inc(x_368); -lean_dec(x_367); -lean_inc(x_1); -x_369 = l_Lean_Meta_Grind_registerParent(x_1, x_366, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_368); -x_370 = lean_ctor_get(x_369, 0); -lean_inc(x_370); -x_371 = lean_ctor_get(x_369, 1); -lean_inc(x_371); -lean_dec(x_369); -x_372 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_370, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_371); -lean_dec(x_370); -return x_372; -} -else -{ -uint8_t x_373; -lean_dec(x_366); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_373 = !lean_is_exclusive(x_367); -if (x_373 == 0) -{ -return x_367; -} -else -{ -lean_object* x_374; lean_object* x_375; lean_object* x_376; -x_374 = lean_ctor_get(x_367, 0); -x_375 = lean_ctor_get(x_367, 1); -lean_inc(x_375); -lean_inc(x_374); -lean_dec(x_367); -x_376 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_376, 0, x_374); -lean_ctor_set(x_376, 1, x_375); -return x_376; -} -} -} -else -{ -lean_object* x_377; lean_object* x_378; -x_377 = lean_array_fget(x_5, x_362); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_377); -x_378 = l_Lean_Meta_Grind_internalize(x_377, x_2, x_364, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_342); -if (lean_obj_tag(x_378) == 0) -{ -lean_object* x_379; lean_object* x_380; lean_object* x_381; lean_object* x_382; lean_object* x_383; -x_379 = lean_ctor_get(x_378, 1); -lean_inc(x_379); -lean_dec(x_378); -lean_inc(x_1); -x_380 = l_Lean_Meta_Grind_registerParent(x_1, x_377, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_379); -x_381 = lean_ctor_get(x_380, 0); -lean_inc(x_381); -x_382 = lean_ctor_get(x_380, 1); -lean_inc(x_382); -lean_dec(x_380); -x_383 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_381, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_382); -lean_dec(x_381); -return x_383; -} -else -{ -uint8_t x_384; -lean_dec(x_377); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_384 = !lean_is_exclusive(x_378); -if (x_384 == 0) -{ -return x_378; -} -else -{ -lean_object* x_385; lean_object* x_386; lean_object* x_387; -x_385 = lean_ctor_get(x_378, 0); -x_386 = lean_ctor_get(x_378, 1); -lean_inc(x_386); -lean_inc(x_385); -lean_dec(x_378); -x_387 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_387, 0, x_385); -lean_ctor_set(x_387, 1, x_386); -return x_387; -} -} -} -} -} -block_354: -{ -lean_object* x_345; lean_object* x_346; +x_346 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_344, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_345); lean_dec(x_344); -lean_inc(x_1); -x_345 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_345, 0, x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_346 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_345, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_342); -if (lean_obj_tag(x_346) == 0) -{ -lean_object* x_347; lean_object* x_348; lean_object* x_349; -x_347 = lean_ctor_get(x_346, 0); -lean_inc(x_347); -x_348 = lean_ctor_get(x_346, 1); -lean_inc(x_348); -lean_dec(x_346); -x_349 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_343, x_347, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_348); -lean_dec(x_347); -lean_dec(x_5); -return x_349; -} -else -{ -uint8_t x_350; -lean_dec(x_343); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_350 = !lean_is_exclusive(x_346); -if (x_350 == 0) -{ return x_346; } else { -lean_object* x_351; lean_object* x_352; lean_object* x_353; -x_351 = lean_ctor_get(x_346, 0); -x_352 = lean_ctor_get(x_346, 1); -lean_inc(x_352); -lean_inc(x_351); -lean_dec(x_346); -x_353 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_353, 0, x_351); -lean_ctor_set(x_353, 1, x_352); -return x_353; -} -} -} -} -else -{ -uint8_t x_388; +uint8_t x_347; +lean_dec(x_340); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -9117,34 +9271,66 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_388 = !lean_is_exclusive(x_341); -if (x_388 == 0) +x_347 = !lean_is_exclusive(x_341); +if (x_347 == 0) { return x_341; } else { -lean_object* x_389; lean_object* x_390; lean_object* x_391; -x_389 = lean_ctor_get(x_341, 0); -x_390 = lean_ctor_get(x_341, 1); -lean_inc(x_390); -lean_inc(x_389); +lean_object* x_348; lean_object* x_349; lean_object* x_350; +x_348 = lean_ctor_get(x_341, 0); +x_349 = lean_ctor_get(x_341, 1); +lean_inc(x_349); +lean_inc(x_348); lean_dec(x_341); -x_391 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_391, 0, x_389); -lean_ctor_set(x_391, 1, x_390); -return x_391; +x_350 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_350, 0, x_348); +lean_ctor_set(x_350, 1, x_349); +return x_350; } } } else { -uint8_t x_392; +lean_object* x_351; lean_object* x_352; +x_351 = lean_array_fget(x_5, x_336); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_351); +x_352 = l_Lean_Meta_Grind_internalize(x_351, x_2, x_338, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_315); +if (lean_obj_tag(x_352) == 0) +{ +lean_object* x_353; lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; +x_353 = lean_ctor_get(x_352, 1); +lean_inc(x_353); +lean_dec(x_352); +lean_inc(x_1); +x_354 = l_Lean_Meta_Grind_registerParent(x_1, x_351, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_353); +x_355 = lean_ctor_get(x_354, 0); +lean_inc(x_355); +x_356 = lean_ctor_get(x_354, 1); +lean_inc(x_356); +lean_dec(x_354); +x_357 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_355, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_356); +lean_dec(x_355); +return x_357; +} +else +{ +uint8_t x_358; +lean_dec(x_351); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -9153,28 +9339,30 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_392 = !lean_is_exclusive(x_339); -if (x_392 == 0) +x_358 = !lean_is_exclusive(x_352); +if (x_358 == 0) { -return x_339; +return x_352; } else { -lean_object* x_393; lean_object* x_394; lean_object* x_395; -x_393 = lean_ctor_get(x_339, 0); -x_394 = lean_ctor_get(x_339, 1); -lean_inc(x_394); -lean_inc(x_393); -lean_dec(x_339); -x_395 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_395, 0, x_393); -lean_ctor_set(x_395, 1, x_394); -return x_395; +lean_object* x_359; lean_object* x_360; lean_object* x_361; +x_359 = lean_ctor_get(x_352, 0); +x_360 = lean_ctor_get(x_352, 1); +lean_inc(x_360); +lean_inc(x_359); +lean_dec(x_352); +x_361 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_361, 0, x_359); +lean_ctor_set(x_361, 1, x_360); +return x_361; +} +} +} +} } } } @@ -9194,19 +9382,19 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_396 = !lean_is_exclusive(x_337); +x_396 = !lean_is_exclusive(x_314); if (x_396 == 0) { -return x_337; +return x_314; } else { lean_object* x_397; lean_object* x_398; lean_object* x_399; -x_397 = lean_ctor_get(x_337, 0); -x_398 = lean_ctor_get(x_337, 1); +x_397 = lean_ctor_get(x_314, 0); +x_398 = lean_ctor_get(x_314, 1); lean_inc(x_398); lean_inc(x_397); -lean_dec(x_337); +lean_dec(x_314); x_399 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_399, 0, x_397); lean_ctor_set(x_399, 1, x_398); @@ -9214,22 +9402,96 @@ return x_399; } } } -case 7: +else { -lean_object* x_400; +uint8_t x_400; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_400 = !lean_is_exclusive(x_312); +if (x_400 == 0) +{ +return x_312; +} +else +{ +lean_object* x_401; lean_object* x_402; lean_object* x_403; +x_401 = lean_ctor_get(x_312, 0); +x_402 = lean_ctor_get(x_312, 1); +lean_inc(x_402); +lean_inc(x_401); +lean_dec(x_312); +x_403 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_403, 0, x_401); +lean_ctor_set(x_403, 1, x_402); +return x_403; +} +} +} +else +{ +uint8_t x_404; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_404 = !lean_is_exclusive(x_310); +if (x_404 == 0) +{ +return x_310; +} +else +{ +lean_object* x_405; lean_object* x_406; lean_object* x_407; +x_405 = lean_ctor_get(x_310, 0); +x_406 = lean_ctor_get(x_310, 1); +lean_inc(x_406); +lean_inc(x_405); +lean_dec(x_310); +x_407 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_407, 0, x_405); +lean_ctor_set(x_407, 1, x_406); +return x_407; +} +} +} +case 4: +{ +lean_object* x_408; lean_object* x_409; lean_dec(x_6); +x_408 = lean_ctor_get(x_4, 0); +lean_inc(x_408); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_400 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_400) == 0) +x_409 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_409) == 0) { -lean_object* x_401; lean_object* x_402; -x_401 = lean_ctor_get(x_400, 1); -lean_inc(x_401); -lean_dec(x_400); +lean_object* x_410; lean_object* x_411; +x_410 = lean_ctor_get(x_409, 1); +lean_inc(x_410); +lean_dec(x_409); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9239,13 +9501,13 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_402 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_401); -if (lean_obj_tag(x_402) == 0) +x_411 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_410); +if (lean_obj_tag(x_411) == 0) { -lean_object* x_403; lean_object* x_404; -x_403 = lean_ctor_get(x_402, 1); -lean_inc(x_403); -lean_dec(x_402); +lean_object* x_412; lean_object* x_413; +x_412 = lean_ctor_get(x_411, 1); +lean_inc(x_412); +lean_dec(x_411); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9256,62 +9518,61 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_404 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_403); -if (lean_obj_tag(x_404) == 0) +x_413 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_412); +if (lean_obj_tag(x_413) == 0) { -lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_object* x_418; uint8_t x_419; -x_405 = lean_ctor_get(x_404, 1); -lean_inc(x_405); -lean_dec(x_404); +lean_object* x_414; lean_object* x_415; lean_object* x_416; lean_object* x_426; lean_object* x_461; uint8_t x_462; +x_414 = lean_ctor_get(x_413, 1); +lean_inc(x_414); +lean_dec(x_413); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_406 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_406, 0, x_1); -lean_closure_set(x_406, 1, x_2); -lean_closure_set(x_406, 2, x_3); -x_418 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_419 = l_Lean_Expr_isConstOf(x_4, x_418); -if (x_419 == 0) +x_415 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_415, 0, x_1); +lean_closure_set(x_415, 1, x_2); +lean_closure_set(x_415, 2, x_3); +x_461 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_462 = l_Lean_Expr_isConstOf(x_4, x_461); +if (x_462 == 0) { -lean_object* x_420; -lean_dec(x_3); -x_420 = lean_box(0); -x_407 = x_420; -goto block_417; +lean_object* x_463; +x_463 = lean_box(0); +x_426 = x_463; +goto block_460; } else { -lean_object* x_421; lean_object* x_422; uint8_t x_423; -x_421 = lean_array_get_size(x_5); -x_422 = lean_unsigned_to_nat(2u); -x_423 = lean_nat_dec_eq(x_421, x_422); -if (x_423 == 0) +lean_object* x_464; lean_object* x_465; uint8_t x_466; +x_464 = lean_array_get_size(x_5); +x_465 = lean_unsigned_to_nat(2u); +x_466 = lean_nat_dec_eq(x_464, x_465); +if (x_466 == 0) { -lean_object* x_424; -lean_dec(x_421); -lean_dec(x_3); -x_424 = lean_box(0); -x_407 = x_424; -goto block_417; +lean_object* x_467; +lean_dec(x_464); +x_467 = lean_box(0); +x_426 = x_467; +goto block_460; } else { -lean_object* x_425; uint8_t x_426; lean_object* x_427; -lean_dec(x_406); +lean_object* x_468; uint8_t x_469; lean_object* x_470; +lean_dec(x_415); +lean_dec(x_408); lean_dec(x_4); -x_425 = lean_unsigned_to_nat(0u); -x_426 = lean_nat_dec_lt(x_425, x_421); -lean_dec(x_421); +x_468 = lean_unsigned_to_nat(0u); +x_469 = lean_nat_dec_lt(x_468, x_464); +lean_dec(x_464); lean_inc(x_1); -x_427 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_427, 0, x_1); -if (x_426 == 0) +x_470 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_470, 0, x_1); +if (x_469 == 0) { -lean_object* x_428; lean_object* x_429; lean_object* x_430; +lean_object* x_471; lean_object* x_472; lean_object* x_473; lean_dec(x_5); -x_428 = l_Lean_instInhabitedExpr; -x_429 = l_outOfBounds___rarg(x_428); +x_471 = l_Lean_instInhabitedExpr; +x_472 = l_outOfBounds___rarg(x_471); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9321,29 +9582,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_429); -x_430 = l_Lean_Meta_Grind_internalize(x_429, x_2, x_427, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_405); -if (lean_obj_tag(x_430) == 0) +lean_inc(x_472); +x_473 = l_Lean_Meta_Grind_internalize(x_472, x_2, x_470, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_414); +if (lean_obj_tag(x_473) == 0) { -lean_object* x_431; lean_object* x_432; lean_object* x_433; lean_object* x_434; lean_object* x_435; -x_431 = lean_ctor_get(x_430, 1); -lean_inc(x_431); -lean_dec(x_430); +lean_object* x_474; lean_object* x_475; lean_object* x_476; lean_object* x_477; lean_object* x_478; +x_474 = lean_ctor_get(x_473, 1); +lean_inc(x_474); +lean_dec(x_473); lean_inc(x_1); -x_432 = l_Lean_Meta_Grind_registerParent(x_1, x_429, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_431); -x_433 = lean_ctor_get(x_432, 0); -lean_inc(x_433); -x_434 = lean_ctor_get(x_432, 1); -lean_inc(x_434); -lean_dec(x_432); -x_435 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_433, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_434); -lean_dec(x_433); -return x_435; +x_475 = l_Lean_Meta_Grind_registerParent(x_1, x_472, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_474); +x_476 = lean_ctor_get(x_475, 0); +lean_inc(x_476); +x_477 = lean_ctor_get(x_475, 1); +lean_inc(x_477); +lean_dec(x_475); +x_478 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_476, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_477); +lean_dec(x_476); +return x_478; } else { -uint8_t x_436; -lean_dec(x_429); +uint8_t x_479; +lean_dec(x_472); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -9355,31 +9616,207 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_436 = !lean_is_exclusive(x_430); -if (x_436 == 0) +x_479 = !lean_is_exclusive(x_473); +if (x_479 == 0) { -return x_430; +return x_473; } else { +lean_object* x_480; lean_object* x_481; lean_object* x_482; +x_480 = lean_ctor_get(x_473, 0); +x_481 = lean_ctor_get(x_473, 1); +lean_inc(x_481); +lean_inc(x_480); +lean_dec(x_473); +x_482 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_482, 0, x_480); +lean_ctor_set(x_482, 1, x_481); +return x_482; +} +} +} +else +{ +lean_object* x_483; lean_object* x_484; +x_483 = lean_array_fget(x_5, x_468); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_483); +x_484 = l_Lean_Meta_Grind_internalize(x_483, x_2, x_470, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_414); +if (lean_obj_tag(x_484) == 0) +{ +lean_object* x_485; lean_object* x_486; lean_object* x_487; lean_object* x_488; lean_object* x_489; +x_485 = lean_ctor_get(x_484, 1); +lean_inc(x_485); +lean_dec(x_484); +lean_inc(x_1); +x_486 = l_Lean_Meta_Grind_registerParent(x_1, x_483, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_485); +x_487 = lean_ctor_get(x_486, 0); +lean_inc(x_487); +x_488 = lean_ctor_get(x_486, 1); +lean_inc(x_488); +lean_dec(x_486); +x_489 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_487, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_488); +lean_dec(x_487); +return x_489; +} +else +{ +uint8_t x_490; +lean_dec(x_483); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_490 = !lean_is_exclusive(x_484); +if (x_490 == 0) +{ +return x_484; +} +else +{ +lean_object* x_491; lean_object* x_492; lean_object* x_493; +x_491 = lean_ctor_get(x_484, 0); +x_492 = lean_ctor_get(x_484, 1); +lean_inc(x_492); +lean_inc(x_491); +lean_dec(x_484); +x_493 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_493, 0, x_491); +lean_ctor_set(x_493, 1, x_492); +return x_493; +} +} +} +} +} +block_425: +{ +lean_object* x_417; +lean_dec(x_416); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +x_417 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_activateTheoremPatterns(x_408, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_414); +lean_dec(x_408); +if (lean_obj_tag(x_417) == 0) +{ +lean_object* x_418; lean_object* x_419; lean_object* x_420; +x_418 = lean_ctor_get(x_417, 0); +lean_inc(x_418); +x_419 = lean_ctor_get(x_417, 1); +lean_inc(x_419); +lean_dec(x_417); +x_420 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_415, x_418, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_419); +lean_dec(x_418); +lean_dec(x_5); +return x_420; +} +else +{ +uint8_t x_421; +lean_dec(x_415); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_421 = !lean_is_exclusive(x_417); +if (x_421 == 0) +{ +return x_417; +} +else +{ +lean_object* x_422; lean_object* x_423; lean_object* x_424; +x_422 = lean_ctor_get(x_417, 0); +x_423 = lean_ctor_get(x_417, 1); +lean_inc(x_423); +lean_inc(x_422); +lean_dec(x_417); +x_424 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_424, 0, x_422); +lean_ctor_set(x_424, 1, x_423); +return x_424; +} +} +} +block_460: +{ +lean_object* x_427; uint8_t x_428; +lean_dec(x_426); +x_427 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_428 = l_Lean_Expr_isConstOf(x_4, x_427); +if (x_428 == 0) +{ +lean_object* x_429; +lean_dec(x_3); +x_429 = lean_box(0); +x_416 = x_429; +goto block_425; +} +else +{ +lean_object* x_430; lean_object* x_431; uint8_t x_432; +x_430 = lean_array_get_size(x_5); +x_431 = lean_unsigned_to_nat(5u); +x_432 = lean_nat_dec_eq(x_430, x_431); +if (x_432 == 0) +{ +lean_object* x_433; +lean_dec(x_430); +lean_dec(x_3); +x_433 = lean_box(0); +x_416 = x_433; +goto block_425; +} +else +{ +lean_object* x_434; uint8_t x_435; lean_object* x_436; +lean_dec(x_415); +lean_dec(x_408); +lean_dec(x_4); +x_434 = lean_unsigned_to_nat(1u); +x_435 = lean_nat_dec_lt(x_434, x_430); +lean_dec(x_430); +lean_inc(x_1); +x_436 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_436, 0, x_1); +if (x_435 == 0) +{ lean_object* x_437; lean_object* x_438; lean_object* x_439; -x_437 = lean_ctor_get(x_430, 0); -x_438 = lean_ctor_get(x_430, 1); -lean_inc(x_438); -lean_inc(x_437); -lean_dec(x_430); -x_439 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_439, 0, x_437); -lean_ctor_set(x_439, 1, x_438); -return x_439; -} -} -} -else -{ -lean_object* x_440; lean_object* x_441; -x_440 = lean_array_fget(x_5, x_425); lean_dec(x_5); +x_437 = l_Lean_instInhabitedExpr; +x_438 = l_outOfBounds___rarg(x_437); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9389,29 +9826,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_440); -x_441 = l_Lean_Meta_Grind_internalize(x_440, x_2, x_427, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_405); -if (lean_obj_tag(x_441) == 0) +lean_inc(x_438); +x_439 = l_Lean_Meta_Grind_internalize(x_438, x_2, x_436, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_414); +if (lean_obj_tag(x_439) == 0) { -lean_object* x_442; lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; -x_442 = lean_ctor_get(x_441, 1); -lean_inc(x_442); -lean_dec(x_441); +lean_object* x_440; lean_object* x_441; lean_object* x_442; lean_object* x_443; lean_object* x_444; +x_440 = lean_ctor_get(x_439, 1); +lean_inc(x_440); +lean_dec(x_439); lean_inc(x_1); -x_443 = l_Lean_Meta_Grind_registerParent(x_1, x_440, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_442); -x_444 = lean_ctor_get(x_443, 0); -lean_inc(x_444); -x_445 = lean_ctor_get(x_443, 1); -lean_inc(x_445); -lean_dec(x_443); -x_446 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_444, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_445); -lean_dec(x_444); -return x_446; +x_441 = l_Lean_Meta_Grind_registerParent(x_1, x_438, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_440); +x_442 = lean_ctor_get(x_441, 0); +lean_inc(x_442); +x_443 = lean_ctor_get(x_441, 1); +lean_inc(x_443); +lean_dec(x_441); +x_444 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_442, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_443); +lean_dec(x_442); +return x_444; } else { -uint8_t x_447; -lean_dec(x_440); +uint8_t x_445; +lean_dec(x_438); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -9423,35 +9860,31 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_447 = !lean_is_exclusive(x_441); -if (x_447 == 0) +x_445 = !lean_is_exclusive(x_439); +if (x_445 == 0) { -return x_441; +return x_439; } else { -lean_object* x_448; lean_object* x_449; lean_object* x_450; -x_448 = lean_ctor_get(x_441, 0); -x_449 = lean_ctor_get(x_441, 1); -lean_inc(x_449); -lean_inc(x_448); -lean_dec(x_441); -x_450 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_450, 0, x_448); -lean_ctor_set(x_450, 1, x_449); -return x_450; +lean_object* x_446; lean_object* x_447; lean_object* x_448; +x_446 = lean_ctor_get(x_439, 0); +x_447 = lean_ctor_get(x_439, 1); +lean_inc(x_447); +lean_inc(x_446); +lean_dec(x_439); +x_448 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_448, 0, x_446); +lean_ctor_set(x_448, 1, x_447); +return x_448; } } } -} -} -block_417: +else { -lean_object* x_408; lean_object* x_409; -lean_dec(x_407); -lean_inc(x_1); -x_408 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_408, 0, x_1); +lean_object* x_449; lean_object* x_450; +x_449 = lean_array_fget(x_5, x_434); +lean_dec(x_5); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -9461,25 +9894,68 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_4); -x_409 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_408, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_405); -if (lean_obj_tag(x_409) == 0) +lean_inc(x_449); +x_450 = l_Lean_Meta_Grind_internalize(x_449, x_2, x_436, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_414); +if (lean_obj_tag(x_450) == 0) { -lean_object* x_410; lean_object* x_411; lean_object* x_412; -x_410 = lean_ctor_get(x_409, 0); -lean_inc(x_410); -x_411 = lean_ctor_get(x_409, 1); -lean_inc(x_411); -lean_dec(x_409); -x_412 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_406, x_410, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_411); -lean_dec(x_410); -lean_dec(x_5); -return x_412; +lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; lean_object* x_455; +x_451 = lean_ctor_get(x_450, 1); +lean_inc(x_451); +lean_dec(x_450); +lean_inc(x_1); +x_452 = l_Lean_Meta_Grind_registerParent(x_1, x_449, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_451); +x_453 = lean_ctor_get(x_452, 0); +lean_inc(x_453); +x_454 = lean_ctor_get(x_452, 1); +lean_inc(x_454); +lean_dec(x_452); +x_455 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_453, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_454); +lean_dec(x_453); +return x_455; } else { -uint8_t x_413; -lean_dec(x_406); +uint8_t x_456; +lean_dec(x_449); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_456 = !lean_is_exclusive(x_450); +if (x_456 == 0) +{ +return x_450; +} +else +{ +lean_object* x_457; lean_object* x_458; lean_object* x_459; +x_457 = lean_ctor_get(x_450, 0); +x_458 = lean_ctor_get(x_450, 1); +lean_inc(x_458); +lean_inc(x_457); +lean_dec(x_450); +x_459 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_459, 0, x_457); +lean_ctor_set(x_459, 1, x_458); +return x_459; +} +} +} +} +} +} +} +else +{ +uint8_t x_494; +lean_dec(x_408); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -9490,560 +9966,136 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_413 = !lean_is_exclusive(x_409); -if (x_413 == 0) +x_494 = !lean_is_exclusive(x_413); +if (x_494 == 0) +{ +return x_413; +} +else +{ +lean_object* x_495; lean_object* x_496; lean_object* x_497; +x_495 = lean_ctor_get(x_413, 0); +x_496 = lean_ctor_get(x_413, 1); +lean_inc(x_496); +lean_inc(x_495); +lean_dec(x_413); +x_497 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_497, 0, x_495); +lean_ctor_set(x_497, 1, x_496); +return x_497; +} +} +} +else +{ +uint8_t x_498; +lean_dec(x_408); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_498 = !lean_is_exclusive(x_411); +if (x_498 == 0) +{ +return x_411; +} +else +{ +lean_object* x_499; lean_object* x_500; lean_object* x_501; +x_499 = lean_ctor_get(x_411, 0); +x_500 = lean_ctor_get(x_411, 1); +lean_inc(x_500); +lean_inc(x_499); +lean_dec(x_411); +x_501 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_501, 0, x_499); +lean_ctor_set(x_501, 1, x_500); +return x_501; +} +} +} +else +{ +uint8_t x_502; +lean_dec(x_408); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_502 = !lean_is_exclusive(x_409); +if (x_502 == 0) { return x_409; } else { -lean_object* x_414; lean_object* x_415; lean_object* x_416; -x_414 = lean_ctor_get(x_409, 0); -x_415 = lean_ctor_get(x_409, 1); -lean_inc(x_415); -lean_inc(x_414); -lean_dec(x_409); -x_416 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_416, 0, x_414); -lean_ctor_set(x_416, 1, x_415); -return x_416; -} -} -} -} -else -{ -uint8_t x_451; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_451 = !lean_is_exclusive(x_404); -if (x_451 == 0) -{ -return x_404; -} -else -{ -lean_object* x_452; lean_object* x_453; lean_object* x_454; -x_452 = lean_ctor_get(x_404, 0); -x_453 = lean_ctor_get(x_404, 1); -lean_inc(x_453); -lean_inc(x_452); -lean_dec(x_404); -x_454 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_454, 0, x_452); -lean_ctor_set(x_454, 1, x_453); -return x_454; -} -} -} -else -{ -uint8_t x_455; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_455 = !lean_is_exclusive(x_402); -if (x_455 == 0) -{ -return x_402; -} -else -{ -lean_object* x_456; lean_object* x_457; lean_object* x_458; -x_456 = lean_ctor_get(x_402, 0); -x_457 = lean_ctor_get(x_402, 1); -lean_inc(x_457); -lean_inc(x_456); -lean_dec(x_402); -x_458 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_458, 0, x_456); -lean_ctor_set(x_458, 1, x_457); -return x_458; -} -} -} -else -{ -uint8_t x_459; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_459 = !lean_is_exclusive(x_400); -if (x_459 == 0) -{ -return x_400; -} -else -{ -lean_object* x_460; lean_object* x_461; lean_object* x_462; -x_460 = lean_ctor_get(x_400, 0); -x_461 = lean_ctor_get(x_400, 1); -lean_inc(x_461); -lean_inc(x_460); -lean_dec(x_400); -x_462 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_462, 0, x_460); -lean_ctor_set(x_462, 1, x_461); -return x_462; -} -} -} -case 8: -{ -lean_object* x_463; -lean_dec(x_6); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_1); -x_463 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_463) == 0) -{ -lean_object* x_464; lean_object* x_465; -x_464 = lean_ctor_get(x_463, 1); -lean_inc(x_464); -lean_dec(x_463); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_1); -x_465 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_464); -if (lean_obj_tag(x_465) == 0) -{ -lean_object* x_466; lean_object* x_467; -x_466 = lean_ctor_get(x_465, 1); -lean_inc(x_466); -lean_dec(x_465); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_467 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_466); -if (lean_obj_tag(x_467) == 0) -{ -lean_object* x_468; lean_object* x_469; lean_object* x_470; lean_object* x_481; uint8_t x_482; -x_468 = lean_ctor_get(x_467, 1); -lean_inc(x_468); -lean_dec(x_467); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_469 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_469, 0, x_1); -lean_closure_set(x_469, 1, x_2); -lean_closure_set(x_469, 2, x_3); -x_481 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_482 = l_Lean_Expr_isConstOf(x_4, x_481); -if (x_482 == 0) -{ -lean_object* x_483; -lean_dec(x_3); -x_483 = lean_box(0); -x_470 = x_483; -goto block_480; -} -else -{ -lean_object* x_484; lean_object* x_485; uint8_t x_486; -x_484 = lean_array_get_size(x_5); -x_485 = lean_unsigned_to_nat(2u); -x_486 = lean_nat_dec_eq(x_484, x_485); -if (x_486 == 0) -{ -lean_object* x_487; -lean_dec(x_484); -lean_dec(x_3); -x_487 = lean_box(0); -x_470 = x_487; -goto block_480; -} -else -{ -lean_object* x_488; uint8_t x_489; lean_object* x_490; -lean_dec(x_469); -lean_dec(x_4); -x_488 = lean_unsigned_to_nat(0u); -x_489 = lean_nat_dec_lt(x_488, x_484); -lean_dec(x_484); -lean_inc(x_1); -x_490 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_490, 0, x_1); -if (x_489 == 0) -{ -lean_object* x_491; lean_object* x_492; lean_object* x_493; -lean_dec(x_5); -x_491 = l_Lean_instInhabitedExpr; -x_492 = l_outOfBounds___rarg(x_491); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_492); -x_493 = l_Lean_Meta_Grind_internalize(x_492, x_2, x_490, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_468); -if (lean_obj_tag(x_493) == 0) -{ -lean_object* x_494; lean_object* x_495; lean_object* x_496; lean_object* x_497; lean_object* x_498; -x_494 = lean_ctor_get(x_493, 1); -lean_inc(x_494); -lean_dec(x_493); -lean_inc(x_1); -x_495 = l_Lean_Meta_Grind_registerParent(x_1, x_492, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_494); -x_496 = lean_ctor_get(x_495, 0); -lean_inc(x_496); -x_497 = lean_ctor_get(x_495, 1); -lean_inc(x_497); -lean_dec(x_495); -x_498 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_496, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_497); -lean_dec(x_496); -return x_498; -} -else -{ -uint8_t x_499; -lean_dec(x_492); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_499 = !lean_is_exclusive(x_493); -if (x_499 == 0) -{ -return x_493; -} -else -{ -lean_object* x_500; lean_object* x_501; lean_object* x_502; -x_500 = lean_ctor_get(x_493, 0); -x_501 = lean_ctor_get(x_493, 1); -lean_inc(x_501); -lean_inc(x_500); -lean_dec(x_493); -x_502 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_502, 0, x_500); -lean_ctor_set(x_502, 1, x_501); -return x_502; -} -} -} -else -{ -lean_object* x_503; lean_object* x_504; -x_503 = lean_array_fget(x_5, x_488); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); +lean_object* x_503; lean_object* x_504; lean_object* x_505; +x_503 = lean_ctor_get(x_409, 0); +x_504 = lean_ctor_get(x_409, 1); +lean_inc(x_504); lean_inc(x_503); -x_504 = l_Lean_Meta_Grind_internalize(x_503, x_2, x_490, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_468); -if (lean_obj_tag(x_504) == 0) +lean_dec(x_409); +x_505 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_505, 0, x_503); +lean_ctor_set(x_505, 1, x_504); +return x_505; +} +} +} +case 5: { -lean_object* x_505; lean_object* x_506; lean_object* x_507; lean_object* x_508; lean_object* x_509; -x_505 = lean_ctor_get(x_504, 1); -lean_inc(x_505); -lean_dec(x_504); -lean_inc(x_1); -x_506 = l_Lean_Meta_Grind_registerParent(x_1, x_503, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_505); -x_507 = lean_ctor_get(x_506, 0); +lean_object* x_506; lean_object* x_507; lean_object* x_508; lean_object* x_509; lean_object* x_510; +x_506 = lean_ctor_get(x_4, 0); +lean_inc(x_506); +x_507 = lean_ctor_get(x_4, 1); lean_inc(x_507); -x_508 = lean_ctor_get(x_506, 1); -lean_inc(x_508); -lean_dec(x_506); -x_509 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_507, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_508); -lean_dec(x_507); -return x_509; -} -else -{ -uint8_t x_510; -lean_dec(x_503); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_510 = !lean_is_exclusive(x_504); -if (x_510 == 0) -{ -return x_504; -} -else -{ -lean_object* x_511; lean_object* x_512; lean_object* x_513; -x_511 = lean_ctor_get(x_504, 0); -x_512 = lean_ctor_get(x_504, 1); -lean_inc(x_512); -lean_inc(x_511); -lean_dec(x_504); -x_513 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_513, 0, x_511); -lean_ctor_set(x_513, 1, x_512); -return x_513; -} -} -} -} -} -block_480: -{ -lean_object* x_471; lean_object* x_472; -lean_dec(x_470); -lean_inc(x_1); -x_471 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_471, 0, x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_472 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_471, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_468); -if (lean_obj_tag(x_472) == 0) -{ -lean_object* x_473; lean_object* x_474; lean_object* x_475; -x_473 = lean_ctor_get(x_472, 0); -lean_inc(x_473); -x_474 = lean_ctor_get(x_472, 1); -lean_inc(x_474); -lean_dec(x_472); -x_475 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_469, x_473, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_474); -lean_dec(x_473); -lean_dec(x_5); -return x_475; -} -else -{ -uint8_t x_476; -lean_dec(x_469); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_476 = !lean_is_exclusive(x_472); -if (x_476 == 0) +x_508 = lean_array_set(x_5, x_6, x_507); +x_509 = lean_unsigned_to_nat(1u); +x_510 = lean_nat_sub(x_6, x_509); +lean_dec(x_6); +x_4 = x_506; +x_5 = x_508; +x_6 = x_510; +goto _start; +} +case 6: { -return x_472; -} -else -{ -lean_object* x_477; lean_object* x_478; lean_object* x_479; -x_477 = lean_ctor_get(x_472, 0); -x_478 = lean_ctor_get(x_472, 1); -lean_inc(x_478); -lean_inc(x_477); -lean_dec(x_472); -x_479 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_479, 0, x_477); -lean_ctor_set(x_479, 1, x_478); -return x_479; -} -} -} -} -else -{ -uint8_t x_514; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_514 = !lean_is_exclusive(x_467); -if (x_514 == 0) -{ -return x_467; -} -else -{ -lean_object* x_515; lean_object* x_516; lean_object* x_517; -x_515 = lean_ctor_get(x_467, 0); -x_516 = lean_ctor_get(x_467, 1); -lean_inc(x_516); -lean_inc(x_515); -lean_dec(x_467); -x_517 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_517, 0, x_515); -lean_ctor_set(x_517, 1, x_516); -return x_517; -} -} -} -else -{ -uint8_t x_518; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_518 = !lean_is_exclusive(x_465); -if (x_518 == 0) -{ -return x_465; -} -else -{ -lean_object* x_519; lean_object* x_520; lean_object* x_521; -x_519 = lean_ctor_get(x_465, 0); -x_520 = lean_ctor_get(x_465, 1); -lean_inc(x_520); -lean_inc(x_519); -lean_dec(x_465); -x_521 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_521, 0, x_519); -lean_ctor_set(x_521, 1, x_520); -return x_521; -} -} -} -else -{ -uint8_t x_522; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_522 = !lean_is_exclusive(x_463); -if (x_522 == 0) -{ -return x_463; -} -else -{ -lean_object* x_523; lean_object* x_524; lean_object* x_525; -x_523 = lean_ctor_get(x_463, 0); -x_524 = lean_ctor_get(x_463, 1); -lean_inc(x_524); -lean_inc(x_523); -lean_dec(x_463); -x_525 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_525, 0, x_523); -lean_ctor_set(x_525, 1, x_524); -return x_525; -} -} -} -case 9: -{ -lean_object* x_526; +lean_object* x_512; lean_dec(x_6); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_526 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_526) == 0) +x_512 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_512) == 0) { -lean_object* x_527; lean_object* x_528; -x_527 = lean_ctor_get(x_526, 1); -lean_inc(x_527); -lean_dec(x_526); +lean_object* x_513; lean_object* x_514; +x_513 = lean_ctor_get(x_512, 1); +lean_inc(x_513); +lean_dec(x_512); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10053,13 +10105,13 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_528 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_527); -if (lean_obj_tag(x_528) == 0) +x_514 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_513); +if (lean_obj_tag(x_514) == 0) { -lean_object* x_529; lean_object* x_530; -x_529 = lean_ctor_get(x_528, 1); -lean_inc(x_529); -lean_dec(x_528); +lean_object* x_515; lean_object* x_516; +x_515 = lean_ctor_get(x_514, 1); +lean_inc(x_515); +lean_dec(x_514); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10070,202 +10122,60 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_530 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_529); -if (lean_obj_tag(x_530) == 0) +x_516 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_515); +if (lean_obj_tag(x_516) == 0) { -lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_544; uint8_t x_545; -x_531 = lean_ctor_get(x_530, 1); -lean_inc(x_531); -lean_dec(x_530); +lean_object* x_517; lean_object* x_518; lean_object* x_519; lean_object* x_530; lean_object* x_565; uint8_t x_566; +x_517 = lean_ctor_get(x_516, 1); +lean_inc(x_517); +lean_dec(x_516); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_532 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_532, 0, x_1); -lean_closure_set(x_532, 1, x_2); -lean_closure_set(x_532, 2, x_3); -x_544 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_545 = l_Lean_Expr_isConstOf(x_4, x_544); -if (x_545 == 0) +x_518 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_518, 0, x_1); +lean_closure_set(x_518, 1, x_2); +lean_closure_set(x_518, 2, x_3); +x_565 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_566 = l_Lean_Expr_isConstOf(x_4, x_565); +if (x_566 == 0) { -lean_object* x_546; -lean_dec(x_3); -x_546 = lean_box(0); -x_533 = x_546; -goto block_543; +lean_object* x_567; +x_567 = lean_box(0); +x_530 = x_567; +goto block_564; } else { -lean_object* x_547; lean_object* x_548; uint8_t x_549; -x_547 = lean_array_get_size(x_5); -x_548 = lean_unsigned_to_nat(2u); -x_549 = lean_nat_dec_eq(x_547, x_548); -if (x_549 == 0) +lean_object* x_568; lean_object* x_569; uint8_t x_570; +x_568 = lean_array_get_size(x_5); +x_569 = lean_unsigned_to_nat(2u); +x_570 = lean_nat_dec_eq(x_568, x_569); +if (x_570 == 0) { -lean_object* x_550; -lean_dec(x_547); -lean_dec(x_3); -x_550 = lean_box(0); -x_533 = x_550; -goto block_543; +lean_object* x_571; +lean_dec(x_568); +x_571 = lean_box(0); +x_530 = x_571; +goto block_564; } else { -lean_object* x_551; uint8_t x_552; lean_object* x_553; -lean_dec(x_532); +lean_object* x_572; uint8_t x_573; lean_object* x_574; +lean_dec(x_518); lean_dec(x_4); -x_551 = lean_unsigned_to_nat(0u); -x_552 = lean_nat_dec_lt(x_551, x_547); -lean_dec(x_547); +x_572 = lean_unsigned_to_nat(0u); +x_573 = lean_nat_dec_lt(x_572, x_568); +lean_dec(x_568); lean_inc(x_1); -x_553 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_553, 0, x_1); -if (x_552 == 0) -{ -lean_object* x_554; lean_object* x_555; lean_object* x_556; -lean_dec(x_5); -x_554 = l_Lean_instInhabitedExpr; -x_555 = l_outOfBounds___rarg(x_554); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_555); -x_556 = l_Lean_Meta_Grind_internalize(x_555, x_2, x_553, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_531); -if (lean_obj_tag(x_556) == 0) -{ -lean_object* x_557; lean_object* x_558; lean_object* x_559; lean_object* x_560; lean_object* x_561; -x_557 = lean_ctor_get(x_556, 1); -lean_inc(x_557); -lean_dec(x_556); -lean_inc(x_1); -x_558 = l_Lean_Meta_Grind_registerParent(x_1, x_555, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_557); -x_559 = lean_ctor_get(x_558, 0); -lean_inc(x_559); -x_560 = lean_ctor_get(x_558, 1); -lean_inc(x_560); -lean_dec(x_558); -x_561 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_559, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_560); -lean_dec(x_559); -return x_561; -} -else -{ -uint8_t x_562; -lean_dec(x_555); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_562 = !lean_is_exclusive(x_556); -if (x_562 == 0) -{ -return x_556; -} -else -{ -lean_object* x_563; lean_object* x_564; lean_object* x_565; -x_563 = lean_ctor_get(x_556, 0); -x_564 = lean_ctor_get(x_556, 1); -lean_inc(x_564); -lean_inc(x_563); -lean_dec(x_556); -x_565 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_565, 0, x_563); -lean_ctor_set(x_565, 1, x_564); -return x_565; -} -} -} -else -{ -lean_object* x_566; lean_object* x_567; -x_566 = lean_array_fget(x_5, x_551); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_566); -x_567 = l_Lean_Meta_Grind_internalize(x_566, x_2, x_553, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_531); -if (lean_obj_tag(x_567) == 0) -{ -lean_object* x_568; lean_object* x_569; lean_object* x_570; lean_object* x_571; lean_object* x_572; -x_568 = lean_ctor_get(x_567, 1); -lean_inc(x_568); -lean_dec(x_567); -lean_inc(x_1); -x_569 = l_Lean_Meta_Grind_registerParent(x_1, x_566, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_568); -x_570 = lean_ctor_get(x_569, 0); -lean_inc(x_570); -x_571 = lean_ctor_get(x_569, 1); -lean_inc(x_571); -lean_dec(x_569); -x_572 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_570, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_571); -lean_dec(x_570); -return x_572; -} -else -{ -uint8_t x_573; -lean_dec(x_566); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_573 = !lean_is_exclusive(x_567); +x_574 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_574, 0, x_1); if (x_573 == 0) { -return x_567; -} -else -{ -lean_object* x_574; lean_object* x_575; lean_object* x_576; -x_574 = lean_ctor_get(x_567, 0); -x_575 = lean_ctor_get(x_567, 1); -lean_inc(x_575); -lean_inc(x_574); -lean_dec(x_567); -x_576 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_576, 0, x_574); -lean_ctor_set(x_576, 1, x_575); -return x_576; -} -} -} -} -} -block_543: -{ -lean_object* x_534; lean_object* x_535; -lean_dec(x_533); -lean_inc(x_1); -x_534 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_534, 0, x_1); +lean_object* x_575; lean_object* x_576; lean_object* x_577; +lean_dec(x_5); +x_575 = l_Lean_instInhabitedExpr; +x_576 = l_outOfBounds___rarg(x_575); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10275,97 +10185,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_4); -x_535 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_534, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_531); -if (lean_obj_tag(x_535) == 0) +lean_inc(x_576); +x_577 = l_Lean_Meta_Grind_internalize(x_576, x_2, x_574, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_517); +if (lean_obj_tag(x_577) == 0) { -lean_object* x_536; lean_object* x_537; lean_object* x_538; -x_536 = lean_ctor_get(x_535, 0); -lean_inc(x_536); -x_537 = lean_ctor_get(x_535, 1); -lean_inc(x_537); -lean_dec(x_535); -x_538 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_532, x_536, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_537); -lean_dec(x_536); -lean_dec(x_5); -return x_538; -} -else -{ -uint8_t x_539; -lean_dec(x_532); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_2); -lean_dec(x_1); -x_539 = !lean_is_exclusive(x_535); -if (x_539 == 0) -{ -return x_535; -} -else -{ -lean_object* x_540; lean_object* x_541; lean_object* x_542; -x_540 = lean_ctor_get(x_535, 0); -x_541 = lean_ctor_get(x_535, 1); -lean_inc(x_541); -lean_inc(x_540); -lean_dec(x_535); -x_542 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_542, 0, x_540); -lean_ctor_set(x_542, 1, x_541); -return x_542; -} -} -} -} -else -{ -uint8_t x_577; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_577 = !lean_is_exclusive(x_530); -if (x_577 == 0) -{ -return x_530; -} -else -{ -lean_object* x_578; lean_object* x_579; lean_object* x_580; -x_578 = lean_ctor_get(x_530, 0); -x_579 = lean_ctor_get(x_530, 1); -lean_inc(x_579); +lean_object* x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; lean_object* x_582; +x_578 = lean_ctor_get(x_577, 1); lean_inc(x_578); -lean_dec(x_530); -x_580 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_580, 0, x_578); -lean_ctor_set(x_580, 1, x_579); -return x_580; -} -} +lean_dec(x_577); +lean_inc(x_1); +x_579 = l_Lean_Meta_Grind_registerParent(x_1, x_576, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_578); +x_580 = lean_ctor_get(x_579, 0); +lean_inc(x_580); +x_581 = lean_ctor_get(x_579, 1); +lean_inc(x_581); +lean_dec(x_579); +x_582 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_580, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_581); +lean_dec(x_580); +return x_582; } else { -uint8_t x_581; +uint8_t x_583; +lean_dec(x_576); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10374,99 +10216,106 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_581 = !lean_is_exclusive(x_528); -if (x_581 == 0) +x_583 = !lean_is_exclusive(x_577); +if (x_583 == 0) { -return x_528; +return x_577; } else { -lean_object* x_582; lean_object* x_583; lean_object* x_584; -x_582 = lean_ctor_get(x_528, 0); -x_583 = lean_ctor_get(x_528, 1); -lean_inc(x_583); -lean_inc(x_582); -lean_dec(x_528); -x_584 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_584, 0, x_582); -lean_ctor_set(x_584, 1, x_583); -return x_584; +lean_object* x_584; lean_object* x_585; lean_object* x_586; +x_584 = lean_ctor_get(x_577, 0); +x_585 = lean_ctor_get(x_577, 1); +lean_inc(x_585); +lean_inc(x_584); +lean_dec(x_577); +x_586 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_586, 0, x_584); +lean_ctor_set(x_586, 1, x_585); +return x_586; } } } else { -uint8_t x_585; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); +lean_object* x_587; lean_object* x_588; +x_587 = lean_array_fget(x_5, x_572); lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_585 = !lean_is_exclusive(x_526); -if (x_585 == 0) -{ -return x_526; -} -else -{ -lean_object* x_586; lean_object* x_587; lean_object* x_588; -x_586 = lean_ctor_get(x_526, 0); -x_587 = lean_ctor_get(x_526, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); lean_inc(x_587); -lean_inc(x_586); -lean_dec(x_526); -x_588 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_588, 0, x_586); -lean_ctor_set(x_588, 1, x_587); +x_588 = l_Lean_Meta_Grind_internalize(x_587, x_2, x_574, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_517); +if (lean_obj_tag(x_588) == 0) +{ +lean_object* x_589; lean_object* x_590; lean_object* x_591; lean_object* x_592; lean_object* x_593; +x_589 = lean_ctor_get(x_588, 1); +lean_inc(x_589); +lean_dec(x_588); +lean_inc(x_1); +x_590 = l_Lean_Meta_Grind_registerParent(x_1, x_587, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_589); +x_591 = lean_ctor_get(x_590, 0); +lean_inc(x_591); +x_592 = lean_ctor_get(x_590, 1); +lean_inc(x_592); +lean_dec(x_590); +x_593 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_591, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_592); +lean_dec(x_591); +return x_593; +} +else +{ +uint8_t x_594; +lean_dec(x_587); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_594 = !lean_is_exclusive(x_588); +if (x_594 == 0) +{ return x_588; } +else +{ +lean_object* x_595; lean_object* x_596; lean_object* x_597; +x_595 = lean_ctor_get(x_588, 0); +x_596 = lean_ctor_get(x_588, 1); +lean_inc(x_596); +lean_inc(x_595); +lean_dec(x_588); +x_597 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_597, 0, x_595); +lean_ctor_set(x_597, 1, x_596); +return x_597; } } -case 10: +} +} +} +block_529: { -lean_object* x_589; -lean_dec(x_6); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); +lean_object* x_520; lean_object* x_521; +lean_dec(x_519); lean_inc(x_1); -x_589 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_589) == 0) -{ -lean_object* x_590; lean_object* x_591; -x_590 = lean_ctor_get(x_589, 1); -lean_inc(x_590); -lean_dec(x_589); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_1); -x_591 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_590); -if (lean_obj_tag(x_591) == 0) -{ -lean_object* x_592; lean_object* x_593; -x_592 = lean_ctor_get(x_591, 1); -lean_inc(x_592); -lean_dec(x_591); +x_520 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_520, 0, x_1); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10477,62 +10326,102 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_593 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_592); -if (lean_obj_tag(x_593) == 0) +x_521 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_520, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_517); +if (lean_obj_tag(x_521) == 0) { -lean_object* x_594; lean_object* x_595; lean_object* x_596; lean_object* x_607; uint8_t x_608; -x_594 = lean_ctor_get(x_593, 1); -lean_inc(x_594); -lean_dec(x_593); -lean_inc(x_3); -lean_inc(x_2); -lean_inc(x_1); -x_595 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_595, 0, x_1); -lean_closure_set(x_595, 1, x_2); -lean_closure_set(x_595, 2, x_3); -x_607 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_608 = l_Lean_Expr_isConstOf(x_4, x_607); -if (x_608 == 0) -{ -lean_object* x_609; -lean_dec(x_3); -x_609 = lean_box(0); -x_596 = x_609; -goto block_606; +lean_object* x_522; lean_object* x_523; lean_object* x_524; +x_522 = lean_ctor_get(x_521, 0); +lean_inc(x_522); +x_523 = lean_ctor_get(x_521, 1); +lean_inc(x_523); +lean_dec(x_521); +x_524 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_518, x_522, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_523); +lean_dec(x_522); +lean_dec(x_5); +return x_524; } else { -lean_object* x_610; lean_object* x_611; uint8_t x_612; -x_610 = lean_array_get_size(x_5); -x_611 = lean_unsigned_to_nat(2u); -x_612 = lean_nat_dec_eq(x_610, x_611); -if (x_612 == 0) -{ -lean_object* x_613; -lean_dec(x_610); -lean_dec(x_3); -x_613 = lean_box(0); -x_596 = x_613; -goto block_606; -} -else -{ -lean_object* x_614; uint8_t x_615; lean_object* x_616; -lean_dec(x_595); +uint8_t x_525; +lean_dec(x_518); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); lean_dec(x_4); -x_614 = lean_unsigned_to_nat(0u); -x_615 = lean_nat_dec_lt(x_614, x_610); -lean_dec(x_610); -lean_inc(x_1); -x_616 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_616, 0, x_1); -if (x_615 == 0) +lean_dec(x_2); +lean_dec(x_1); +x_525 = !lean_is_exclusive(x_521); +if (x_525 == 0) { -lean_object* x_617; lean_object* x_618; lean_object* x_619; +return x_521; +} +else +{ +lean_object* x_526; lean_object* x_527; lean_object* x_528; +x_526 = lean_ctor_get(x_521, 0); +x_527 = lean_ctor_get(x_521, 1); +lean_inc(x_527); +lean_inc(x_526); +lean_dec(x_521); +x_528 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_528, 0, x_526); +lean_ctor_set(x_528, 1, x_527); +return x_528; +} +} +} +block_564: +{ +lean_object* x_531; uint8_t x_532; +lean_dec(x_530); +x_531 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_532 = l_Lean_Expr_isConstOf(x_4, x_531); +if (x_532 == 0) +{ +lean_object* x_533; +lean_dec(x_3); +x_533 = lean_box(0); +x_519 = x_533; +goto block_529; +} +else +{ +lean_object* x_534; lean_object* x_535; uint8_t x_536; +x_534 = lean_array_get_size(x_5); +x_535 = lean_unsigned_to_nat(5u); +x_536 = lean_nat_dec_eq(x_534, x_535); +if (x_536 == 0) +{ +lean_object* x_537; +lean_dec(x_534); +lean_dec(x_3); +x_537 = lean_box(0); +x_519 = x_537; +goto block_529; +} +else +{ +lean_object* x_538; uint8_t x_539; lean_object* x_540; +lean_dec(x_518); +lean_dec(x_4); +x_538 = lean_unsigned_to_nat(1u); +x_539 = lean_nat_dec_lt(x_538, x_534); +lean_dec(x_534); +lean_inc(x_1); +x_540 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_540, 0, x_1); +if (x_539 == 0) +{ +lean_object* x_541; lean_object* x_542; lean_object* x_543; lean_dec(x_5); -x_617 = l_Lean_instInhabitedExpr; -x_618 = l_outOfBounds___rarg(x_617); +x_541 = l_Lean_instInhabitedExpr; +x_542 = l_outOfBounds___rarg(x_541); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10542,29 +10431,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_618); -x_619 = l_Lean_Meta_Grind_internalize(x_618, x_2, x_616, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_594); -if (lean_obj_tag(x_619) == 0) +lean_inc(x_542); +x_543 = l_Lean_Meta_Grind_internalize(x_542, x_2, x_540, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_517); +if (lean_obj_tag(x_543) == 0) { -lean_object* x_620; lean_object* x_621; lean_object* x_622; lean_object* x_623; lean_object* x_624; -x_620 = lean_ctor_get(x_619, 1); -lean_inc(x_620); -lean_dec(x_619); +lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; lean_object* x_548; +x_544 = lean_ctor_get(x_543, 1); +lean_inc(x_544); +lean_dec(x_543); lean_inc(x_1); -x_621 = l_Lean_Meta_Grind_registerParent(x_1, x_618, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_620); -x_622 = lean_ctor_get(x_621, 0); -lean_inc(x_622); -x_623 = lean_ctor_get(x_621, 1); -lean_inc(x_623); -lean_dec(x_621); -x_624 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_622, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_623); -lean_dec(x_622); -return x_624; +x_545 = l_Lean_Meta_Grind_registerParent(x_1, x_542, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_544); +x_546 = lean_ctor_get(x_545, 0); +lean_inc(x_546); +x_547 = lean_ctor_get(x_545, 1); +lean_inc(x_547); +lean_dec(x_545); +x_548 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_546, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_547); +lean_dec(x_546); +return x_548; } else { -uint8_t x_625; -lean_dec(x_618); +uint8_t x_549; +lean_dec(x_542); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10576,30 +10465,30 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_625 = !lean_is_exclusive(x_619); -if (x_625 == 0) +x_549 = !lean_is_exclusive(x_543); +if (x_549 == 0) { -return x_619; +return x_543; } else { -lean_object* x_626; lean_object* x_627; lean_object* x_628; -x_626 = lean_ctor_get(x_619, 0); -x_627 = lean_ctor_get(x_619, 1); -lean_inc(x_627); -lean_inc(x_626); -lean_dec(x_619); -x_628 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_628, 0, x_626); -lean_ctor_set(x_628, 1, x_627); -return x_628; +lean_object* x_550; lean_object* x_551; lean_object* x_552; +x_550 = lean_ctor_get(x_543, 0); +x_551 = lean_ctor_get(x_543, 1); +lean_inc(x_551); +lean_inc(x_550); +lean_dec(x_543); +x_552 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_552, 0, x_550); +lean_ctor_set(x_552, 1, x_551); +return x_552; } } } else { -lean_object* x_629; lean_object* x_630; -x_629 = lean_array_fget(x_5, x_614); +lean_object* x_553; lean_object* x_554; +x_553 = lean_array_fget(x_5, x_538); lean_dec(x_5); lean_inc(x_14); lean_inc(x_13); @@ -10610,29 +10499,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_629); -x_630 = l_Lean_Meta_Grind_internalize(x_629, x_2, x_616, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_594); -if (lean_obj_tag(x_630) == 0) +lean_inc(x_553); +x_554 = l_Lean_Meta_Grind_internalize(x_553, x_2, x_540, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_517); +if (lean_obj_tag(x_554) == 0) { -lean_object* x_631; lean_object* x_632; lean_object* x_633; lean_object* x_634; lean_object* x_635; -x_631 = lean_ctor_get(x_630, 1); -lean_inc(x_631); -lean_dec(x_630); +lean_object* x_555; lean_object* x_556; lean_object* x_557; lean_object* x_558; lean_object* x_559; +x_555 = lean_ctor_get(x_554, 1); +lean_inc(x_555); +lean_dec(x_554); lean_inc(x_1); -x_632 = l_Lean_Meta_Grind_registerParent(x_1, x_629, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_631); -x_633 = lean_ctor_get(x_632, 0); -lean_inc(x_633); -x_634 = lean_ctor_get(x_632, 1); -lean_inc(x_634); -lean_dec(x_632); -x_635 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_633, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_634); -lean_dec(x_633); -return x_635; +x_556 = l_Lean_Meta_Grind_registerParent(x_1, x_553, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_555); +x_557 = lean_ctor_get(x_556, 0); +lean_inc(x_557); +x_558 = lean_ctor_get(x_556, 1); +lean_inc(x_558); +lean_dec(x_556); +x_559 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_557, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_558); +lean_dec(x_557); +return x_559; } else { -uint8_t x_636; -lean_dec(x_629); +uint8_t x_560; +lean_dec(x_553); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10644,63 +10533,69 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_636 = !lean_is_exclusive(x_630); -if (x_636 == 0) +x_560 = !lean_is_exclusive(x_554); +if (x_560 == 0) { -return x_630; +return x_554; } else { -lean_object* x_637; lean_object* x_638; lean_object* x_639; -x_637 = lean_ctor_get(x_630, 0); -x_638 = lean_ctor_get(x_630, 1); -lean_inc(x_638); -lean_inc(x_637); -lean_dec(x_630); -x_639 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_639, 0, x_637); -lean_ctor_set(x_639, 1, x_638); -return x_639; +lean_object* x_561; lean_object* x_562; lean_object* x_563; +x_561 = lean_ctor_get(x_554, 0); +x_562 = lean_ctor_get(x_554, 1); +lean_inc(x_562); +lean_inc(x_561); +lean_dec(x_554); +x_563 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_563, 0, x_561); +lean_ctor_set(x_563, 1, x_562); +return x_563; } } } } } -block_606: +} +} +else { -lean_object* x_597; lean_object* x_598; -lean_dec(x_596); -lean_inc(x_1); -x_597 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_597, 0, x_1); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_4); -x_598 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_597, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_594); -if (lean_obj_tag(x_598) == 0) +uint8_t x_598; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_598 = !lean_is_exclusive(x_516); +if (x_598 == 0) +{ +return x_516; +} +else { lean_object* x_599; lean_object* x_600; lean_object* x_601; -x_599 = lean_ctor_get(x_598, 0); -lean_inc(x_599); -x_600 = lean_ctor_get(x_598, 1); +x_599 = lean_ctor_get(x_516, 0); +x_600 = lean_ctor_get(x_516, 1); lean_inc(x_600); -lean_dec(x_598); -x_601 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_595, x_599, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_600); -lean_dec(x_599); -lean_dec(x_5); +lean_inc(x_599); +lean_dec(x_516); +x_601 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_601, 0, x_599); +lean_ctor_set(x_601, 1, x_600); return x_601; } +} +} else { uint8_t x_602; -lean_dec(x_595); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10711,21 +10606,22 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_602 = !lean_is_exclusive(x_598); +x_602 = !lean_is_exclusive(x_514); if (x_602 == 0) { -return x_598; +return x_514; } else { lean_object* x_603; lean_object* x_604; lean_object* x_605; -x_603 = lean_ctor_get(x_598, 0); -x_604 = lean_ctor_get(x_598, 1); +x_603 = lean_ctor_get(x_514, 0); +x_604 = lean_ctor_get(x_514, 1); lean_inc(x_604); lean_inc(x_603); -lean_dec(x_598); +lean_dec(x_514); x_605 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_605, 0, x_603); lean_ctor_set(x_605, 1, x_604); @@ -10733,10 +10629,9 @@ return x_605; } } } -} else { -uint8_t x_640; +uint8_t x_606; lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10750,114 +10645,42 @@ lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_640 = !lean_is_exclusive(x_593); -if (x_640 == 0) +x_606 = !lean_is_exclusive(x_512); +if (x_606 == 0) { -return x_593; +return x_512; } else { -lean_object* x_641; lean_object* x_642; lean_object* x_643; -x_641 = lean_ctor_get(x_593, 0); -x_642 = lean_ctor_get(x_593, 1); -lean_inc(x_642); -lean_inc(x_641); -lean_dec(x_593); -x_643 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_643, 0, x_641); -lean_ctor_set(x_643, 1, x_642); -return x_643; +lean_object* x_607; lean_object* x_608; lean_object* x_609; +x_607 = lean_ctor_get(x_512, 0); +x_608 = lean_ctor_get(x_512, 1); +lean_inc(x_608); +lean_inc(x_607); +lean_dec(x_512); +x_609 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_609, 0, x_607); +lean_ctor_set(x_609, 1, x_608); +return x_609; } } } -else +case 7: { -uint8_t x_644; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_644 = !lean_is_exclusive(x_591); -if (x_644 == 0) -{ -return x_591; -} -else -{ -lean_object* x_645; lean_object* x_646; lean_object* x_647; -x_645 = lean_ctor_get(x_591, 0); -x_646 = lean_ctor_get(x_591, 1); -lean_inc(x_646); -lean_inc(x_645); -lean_dec(x_591); -x_647 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_647, 0, x_645); -lean_ctor_set(x_647, 1, x_646); -return x_647; -} -} -} -else -{ -uint8_t x_648; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_648 = !lean_is_exclusive(x_589); -if (x_648 == 0) -{ -return x_589; -} -else -{ -lean_object* x_649; lean_object* x_650; lean_object* x_651; -x_649 = lean_ctor_get(x_589, 0); -x_650 = lean_ctor_get(x_589, 1); -lean_inc(x_650); -lean_inc(x_649); -lean_dec(x_589); -x_651 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_651, 0, x_649); -lean_ctor_set(x_651, 1, x_650); -return x_651; -} -} -} -default: -{ -lean_object* x_652; +lean_object* x_610; lean_dec(x_6); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_inc(x_1); -x_652 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); -if (lean_obj_tag(x_652) == 0) +x_610 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_610) == 0) { -lean_object* x_653; lean_object* x_654; -x_653 = lean_ctor_get(x_652, 1); -lean_inc(x_653); -lean_dec(x_652); +lean_object* x_611; lean_object* x_612; +x_611 = lean_ctor_get(x_610, 1); +lean_inc(x_611); +lean_dec(x_610); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10867,13 +10690,13 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_1); -x_654 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_653); -if (lean_obj_tag(x_654) == 0) +x_612 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_611); +if (lean_obj_tag(x_612) == 0) { -lean_object* x_655; lean_object* x_656; -x_655 = lean_ctor_get(x_654, 1); -lean_inc(x_655); -lean_dec(x_654); +lean_object* x_613; lean_object* x_614; +x_613 = lean_ctor_get(x_612, 1); +lean_inc(x_613); +lean_dec(x_612); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10884,62 +10707,60 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_656 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_655); -if (lean_obj_tag(x_656) == 0) +x_614 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_613); +if (lean_obj_tag(x_614) == 0) { -lean_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_670; uint8_t x_671; -x_657 = lean_ctor_get(x_656, 1); -lean_inc(x_657); -lean_dec(x_656); +lean_object* x_615; lean_object* x_616; lean_object* x_617; lean_object* x_628; lean_object* x_663; uint8_t x_664; +x_615 = lean_ctor_get(x_614, 1); +lean_inc(x_615); +lean_dec(x_614); lean_inc(x_3); lean_inc(x_2); lean_inc(x_1); -x_658 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); -lean_closure_set(x_658, 0, x_1); -lean_closure_set(x_658, 1, x_2); -lean_closure_set(x_658, 2, x_3); -x_670 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; -x_671 = l_Lean_Expr_isConstOf(x_4, x_670); +x_616 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_616, 0, x_1); +lean_closure_set(x_616, 1, x_2); +lean_closure_set(x_616, 2, x_3); +x_663 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_664 = l_Lean_Expr_isConstOf(x_4, x_663); +if (x_664 == 0) +{ +lean_object* x_665; +x_665 = lean_box(0); +x_628 = x_665; +goto block_662; +} +else +{ +lean_object* x_666; lean_object* x_667; uint8_t x_668; +x_666 = lean_array_get_size(x_5); +x_667 = lean_unsigned_to_nat(2u); +x_668 = lean_nat_dec_eq(x_666, x_667); +if (x_668 == 0) +{ +lean_object* x_669; +lean_dec(x_666); +x_669 = lean_box(0); +x_628 = x_669; +goto block_662; +} +else +{ +lean_object* x_670; uint8_t x_671; lean_object* x_672; +lean_dec(x_616); +lean_dec(x_4); +x_670 = lean_unsigned_to_nat(0u); +x_671 = lean_nat_dec_lt(x_670, x_666); +lean_dec(x_666); +lean_inc(x_1); +x_672 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_672, 0, x_1); if (x_671 == 0) { -lean_object* x_672; -lean_dec(x_3); -x_672 = lean_box(0); -x_659 = x_672; -goto block_669; -} -else -{ -lean_object* x_673; lean_object* x_674; uint8_t x_675; -x_673 = lean_array_get_size(x_5); -x_674 = lean_unsigned_to_nat(2u); -x_675 = lean_nat_dec_eq(x_673, x_674); -if (x_675 == 0) -{ -lean_object* x_676; -lean_dec(x_673); -lean_dec(x_3); -x_676 = lean_box(0); -x_659 = x_676; -goto block_669; -} -else -{ -lean_object* x_677; uint8_t x_678; lean_object* x_679; -lean_dec(x_658); -lean_dec(x_4); -x_677 = lean_unsigned_to_nat(0u); -x_678 = lean_nat_dec_lt(x_677, x_673); -lean_dec(x_673); -lean_inc(x_1); -x_679 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_679, 0, x_1); -if (x_678 == 0) -{ -lean_object* x_680; lean_object* x_681; lean_object* x_682; +lean_object* x_673; lean_object* x_674; lean_object* x_675; lean_dec(x_5); -x_680 = l_Lean_instInhabitedExpr; -x_681 = l_outOfBounds___rarg(x_680); +x_673 = l_Lean_instInhabitedExpr; +x_674 = l_outOfBounds___rarg(x_673); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -10949,29 +10770,29 @@ lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); -lean_inc(x_681); -x_682 = l_Lean_Meta_Grind_internalize(x_681, x_2, x_679, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_657); -if (lean_obj_tag(x_682) == 0) +lean_inc(x_674); +x_675 = l_Lean_Meta_Grind_internalize(x_674, x_2, x_672, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_615); +if (lean_obj_tag(x_675) == 0) { -lean_object* x_683; lean_object* x_684; lean_object* x_685; lean_object* x_686; lean_object* x_687; -x_683 = lean_ctor_get(x_682, 1); -lean_inc(x_683); -lean_dec(x_682); +lean_object* x_676; lean_object* x_677; lean_object* x_678; lean_object* x_679; lean_object* x_680; +x_676 = lean_ctor_get(x_675, 1); +lean_inc(x_676); +lean_dec(x_675); lean_inc(x_1); -x_684 = l_Lean_Meta_Grind_registerParent(x_1, x_681, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_683); -x_685 = lean_ctor_get(x_684, 0); -lean_inc(x_685); -x_686 = lean_ctor_get(x_684, 1); -lean_inc(x_686); -lean_dec(x_684); -x_687 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_685, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_686); -lean_dec(x_685); -return x_687; +x_677 = l_Lean_Meta_Grind_registerParent(x_1, x_674, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_676); +x_678 = lean_ctor_get(x_677, 0); +lean_inc(x_678); +x_679 = lean_ctor_get(x_677, 1); +lean_inc(x_679); +lean_dec(x_677); +x_680 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_678, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_679); +lean_dec(x_678); +return x_680; } else { -uint8_t x_688; -lean_dec(x_681); +uint8_t x_681; +lean_dec(x_674); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -10983,63 +10804,63 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_688 = !lean_is_exclusive(x_682); -if (x_688 == 0) +x_681 = !lean_is_exclusive(x_675); +if (x_681 == 0) { -return x_682; +return x_675; } else { -lean_object* x_689; lean_object* x_690; lean_object* x_691; -x_689 = lean_ctor_get(x_682, 0); -x_690 = lean_ctor_get(x_682, 1); -lean_inc(x_690); +lean_object* x_682; lean_object* x_683; lean_object* x_684; +x_682 = lean_ctor_get(x_675, 0); +x_683 = lean_ctor_get(x_675, 1); +lean_inc(x_683); +lean_inc(x_682); +lean_dec(x_675); +x_684 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_684, 0, x_682); +lean_ctor_set(x_684, 1, x_683); +return x_684; +} +} +} +else +{ +lean_object* x_685; lean_object* x_686; +x_685 = lean_array_fget(x_5, x_670); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_685); +x_686 = l_Lean_Meta_Grind_internalize(x_685, x_2, x_672, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_615); +if (lean_obj_tag(x_686) == 0) +{ +lean_object* x_687; lean_object* x_688; lean_object* x_689; lean_object* x_690; lean_object* x_691; +x_687 = lean_ctor_get(x_686, 1); +lean_inc(x_687); +lean_dec(x_686); +lean_inc(x_1); +x_688 = l_Lean_Meta_Grind_registerParent(x_1, x_685, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_687); +x_689 = lean_ctor_get(x_688, 0); lean_inc(x_689); -lean_dec(x_682); -x_691 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_691, 0, x_689); -lean_ctor_set(x_691, 1, x_690); +x_690 = lean_ctor_get(x_688, 1); +lean_inc(x_690); +lean_dec(x_688); +x_691 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_689, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_690); +lean_dec(x_689); return x_691; } -} -} else { -lean_object* x_692; lean_object* x_693; -x_692 = lean_array_fget(x_5, x_677); -lean_dec(x_5); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_2); -lean_inc(x_692); -x_693 = l_Lean_Meta_Grind_internalize(x_692, x_2, x_679, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_657); -if (lean_obj_tag(x_693) == 0) -{ -lean_object* x_694; lean_object* x_695; lean_object* x_696; lean_object* x_697; lean_object* x_698; -x_694 = lean_ctor_get(x_693, 1); -lean_inc(x_694); -lean_dec(x_693); -lean_inc(x_1); -x_695 = l_Lean_Meta_Grind_registerParent(x_1, x_692, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_694); -x_696 = lean_ctor_get(x_695, 0); -lean_inc(x_696); -x_697 = lean_ctor_get(x_695, 1); -lean_inc(x_697); -lean_dec(x_695); -x_698 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_696, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_697); -lean_dec(x_696); -return x_698; -} -else -{ -uint8_t x_699; -lean_dec(x_692); +uint8_t x_692; +lean_dec(x_685); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -11051,35 +10872,35 @@ lean_dec(x_7); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_699 = !lean_is_exclusive(x_693); -if (x_699 == 0) +x_692 = !lean_is_exclusive(x_686); +if (x_692 == 0) { -return x_693; +return x_686; } else { -lean_object* x_700; lean_object* x_701; lean_object* x_702; -x_700 = lean_ctor_get(x_693, 0); -x_701 = lean_ctor_get(x_693, 1); -lean_inc(x_701); -lean_inc(x_700); -lean_dec(x_693); -x_702 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_702, 0, x_700); -lean_ctor_set(x_702, 1, x_701); -return x_702; +lean_object* x_693; lean_object* x_694; lean_object* x_695; +x_693 = lean_ctor_get(x_686, 0); +x_694 = lean_ctor_get(x_686, 1); +lean_inc(x_694); +lean_inc(x_693); +lean_dec(x_686); +x_695 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_695, 0, x_693); +lean_ctor_set(x_695, 1, x_694); +return x_695; } } } } } -block_669: +block_627: { -lean_object* x_660; lean_object* x_661; -lean_dec(x_659); +lean_object* x_618; lean_object* x_619; +lean_dec(x_617); lean_inc(x_1); -x_660 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_660, 0, x_1); +x_618 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_618, 0, x_1); lean_inc(x_14); lean_inc(x_13); lean_inc(x_12); @@ -11090,24 +10911,24 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_2); lean_inc(x_4); -x_661 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_660, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_657); -if (lean_obj_tag(x_661) == 0) +x_619 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_618, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_615); +if (lean_obj_tag(x_619) == 0) { -lean_object* x_662; lean_object* x_663; lean_object* x_664; -x_662 = lean_ctor_get(x_661, 0); -lean_inc(x_662); -x_663 = lean_ctor_get(x_661, 1); -lean_inc(x_663); -lean_dec(x_661); -x_664 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_658, x_662, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_663); -lean_dec(x_662); +lean_object* x_620; lean_object* x_621; lean_object* x_622; +x_620 = lean_ctor_get(x_619, 0); +lean_inc(x_620); +x_621 = lean_ctor_get(x_619, 1); +lean_inc(x_621); +lean_dec(x_619); +x_622 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_616, x_620, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_621); +lean_dec(x_620); lean_dec(x_5); -return x_664; +return x_622; } else { -uint8_t x_665; -lean_dec(x_658); +uint8_t x_623; +lean_dec(x_616); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -11120,30 +10941,104 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); lean_dec(x_1); -x_665 = !lean_is_exclusive(x_661); -if (x_665 == 0) +x_623 = !lean_is_exclusive(x_619); +if (x_623 == 0) { -return x_661; +return x_619; } else { -lean_object* x_666; lean_object* x_667; lean_object* x_668; -x_666 = lean_ctor_get(x_661, 0); -x_667 = lean_ctor_get(x_661, 1); -lean_inc(x_667); -lean_inc(x_666); -lean_dec(x_661); -x_668 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_668, 0, x_666); -lean_ctor_set(x_668, 1, x_667); -return x_668; +lean_object* x_624; lean_object* x_625; lean_object* x_626; +x_624 = lean_ctor_get(x_619, 0); +x_625 = lean_ctor_get(x_619, 1); +lean_inc(x_625); +lean_inc(x_624); +lean_dec(x_619); +x_626 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_626, 0, x_624); +lean_ctor_set(x_626, 1, x_625); +return x_626; } } } +block_662: +{ +lean_object* x_629; uint8_t x_630; +lean_dec(x_628); +x_629 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_630 = l_Lean_Expr_isConstOf(x_4, x_629); +if (x_630 == 0) +{ +lean_object* x_631; +lean_dec(x_3); +x_631 = lean_box(0); +x_617 = x_631; +goto block_627; } else { -uint8_t x_703; +lean_object* x_632; lean_object* x_633; uint8_t x_634; +x_632 = lean_array_get_size(x_5); +x_633 = lean_unsigned_to_nat(5u); +x_634 = lean_nat_dec_eq(x_632, x_633); +if (x_634 == 0) +{ +lean_object* x_635; +lean_dec(x_632); +lean_dec(x_3); +x_635 = lean_box(0); +x_617 = x_635; +goto block_627; +} +else +{ +lean_object* x_636; uint8_t x_637; lean_object* x_638; +lean_dec(x_616); +lean_dec(x_4); +x_636 = lean_unsigned_to_nat(1u); +x_637 = lean_nat_dec_lt(x_636, x_632); +lean_dec(x_632); +lean_inc(x_1); +x_638 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_638, 0, x_1); +if (x_637 == 0) +{ +lean_object* x_639; lean_object* x_640; lean_object* x_641; +lean_dec(x_5); +x_639 = l_Lean_instInhabitedExpr; +x_640 = l_outOfBounds___rarg(x_639); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_640); +x_641 = l_Lean_Meta_Grind_internalize(x_640, x_2, x_638, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_615); +if (lean_obj_tag(x_641) == 0) +{ +lean_object* x_642; lean_object* x_643; lean_object* x_644; lean_object* x_645; lean_object* x_646; +x_642 = lean_ctor_get(x_641, 1); +lean_inc(x_642); +lean_dec(x_641); +lean_inc(x_1); +x_643 = l_Lean_Meta_Grind_registerParent(x_1, x_640, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_642); +x_644 = lean_ctor_get(x_643, 0); +lean_inc(x_644); +x_645 = lean_ctor_get(x_643, 1); +lean_inc(x_645); +lean_dec(x_643); +x_646 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_644, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_645); +lean_dec(x_644); +return x_646; +} +else +{ +uint8_t x_647; +lean_dec(x_640); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -11152,70 +11047,66 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_703 = !lean_is_exclusive(x_656); -if (x_703 == 0) +x_647 = !lean_is_exclusive(x_641); +if (x_647 == 0) { -return x_656; +return x_641; } else { -lean_object* x_704; lean_object* x_705; lean_object* x_706; -x_704 = lean_ctor_get(x_656, 0); -x_705 = lean_ctor_get(x_656, 1); -lean_inc(x_705); -lean_inc(x_704); -lean_dec(x_656); -x_706 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_706, 0, x_704); -lean_ctor_set(x_706, 1, x_705); -return x_706; +lean_object* x_648; lean_object* x_649; lean_object* x_650; +x_648 = lean_ctor_get(x_641, 0); +x_649 = lean_ctor_get(x_641, 1); +lean_inc(x_649); +lean_inc(x_648); +lean_dec(x_641); +x_650 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_650, 0, x_648); +lean_ctor_set(x_650, 1, x_649); +return x_650; } } } else { -uint8_t x_707; -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); +lean_object* x_651; lean_object* x_652; +x_651 = lean_array_fget(x_5, x_636); lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -x_707 = !lean_is_exclusive(x_654); -if (x_707 == 0) +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_651); +x_652 = l_Lean_Meta_Grind_internalize(x_651, x_2, x_638, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_615); +if (lean_obj_tag(x_652) == 0) { -return x_654; -} -else -{ -lean_object* x_708; lean_object* x_709; lean_object* x_710; -x_708 = lean_ctor_get(x_654, 0); -x_709 = lean_ctor_get(x_654, 1); -lean_inc(x_709); -lean_inc(x_708); +lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; lean_object* x_657; +x_653 = lean_ctor_get(x_652, 1); +lean_inc(x_653); +lean_dec(x_652); +lean_inc(x_1); +x_654 = l_Lean_Meta_Grind_registerParent(x_1, x_651, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_653); +x_655 = lean_ctor_get(x_654, 0); +lean_inc(x_655); +x_656 = lean_ctor_get(x_654, 1); +lean_inc(x_656); lean_dec(x_654); -x_710 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_710, 0, x_708); -lean_ctor_set(x_710, 1, x_709); -return x_710; -} -} +x_657 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_655, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_656); +lean_dec(x_655); +return x_657; } else { -uint8_t x_711; +uint8_t x_658; +lean_dec(x_651); lean_dec(x_14); lean_dec(x_13); lean_dec(x_12); @@ -11224,28 +11115,2478 @@ lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); -lean_dec(x_5); -lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_711 = !lean_is_exclusive(x_652); -if (x_711 == 0) +x_658 = !lean_is_exclusive(x_652); +if (x_658 == 0) { return x_652; } else { -lean_object* x_712; lean_object* x_713; lean_object* x_714; -x_712 = lean_ctor_get(x_652, 0); -x_713 = lean_ctor_get(x_652, 1); -lean_inc(x_713); -lean_inc(x_712); +lean_object* x_659; lean_object* x_660; lean_object* x_661; +x_659 = lean_ctor_get(x_652, 0); +x_660 = lean_ctor_get(x_652, 1); +lean_inc(x_660); +lean_inc(x_659); lean_dec(x_652); -x_714 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_714, 0, x_712); -lean_ctor_set(x_714, 1, x_713); -return x_714; +x_661 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_661, 0, x_659); +lean_ctor_set(x_661, 1, x_660); +return x_661; +} +} +} +} +} +} +} +else +{ +uint8_t x_696; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_696 = !lean_is_exclusive(x_614); +if (x_696 == 0) +{ +return x_614; +} +else +{ +lean_object* x_697; lean_object* x_698; lean_object* x_699; +x_697 = lean_ctor_get(x_614, 0); +x_698 = lean_ctor_get(x_614, 1); +lean_inc(x_698); +lean_inc(x_697); +lean_dec(x_614); +x_699 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_699, 0, x_697); +lean_ctor_set(x_699, 1, x_698); +return x_699; +} +} +} +else +{ +uint8_t x_700; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_700 = !lean_is_exclusive(x_612); +if (x_700 == 0) +{ +return x_612; +} +else +{ +lean_object* x_701; lean_object* x_702; lean_object* x_703; +x_701 = lean_ctor_get(x_612, 0); +x_702 = lean_ctor_get(x_612, 1); +lean_inc(x_702); +lean_inc(x_701); +lean_dec(x_612); +x_703 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_703, 0, x_701); +lean_ctor_set(x_703, 1, x_702); +return x_703; +} +} +} +else +{ +uint8_t x_704; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_704 = !lean_is_exclusive(x_610); +if (x_704 == 0) +{ +return x_610; +} +else +{ +lean_object* x_705; lean_object* x_706; lean_object* x_707; +x_705 = lean_ctor_get(x_610, 0); +x_706 = lean_ctor_get(x_610, 1); +lean_inc(x_706); +lean_inc(x_705); +lean_dec(x_610); +x_707 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_707, 0, x_705); +lean_ctor_set(x_707, 1, x_706); +return x_707; +} +} +} +case 8: +{ +lean_object* x_708; +lean_dec(x_6); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_1); +x_708 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_708) == 0) +{ +lean_object* x_709; lean_object* x_710; +x_709 = lean_ctor_get(x_708, 1); +lean_inc(x_709); +lean_dec(x_708); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_710 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_709); +if (lean_obj_tag(x_710) == 0) +{ +lean_object* x_711; lean_object* x_712; +x_711 = lean_ctor_get(x_710, 1); +lean_inc(x_711); +lean_dec(x_710); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_712 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_711); +if (lean_obj_tag(x_712) == 0) +{ +lean_object* x_713; lean_object* x_714; lean_object* x_715; lean_object* x_726; lean_object* x_761; uint8_t x_762; +x_713 = lean_ctor_get(x_712, 1); +lean_inc(x_713); +lean_dec(x_712); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_714 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_714, 0, x_1); +lean_closure_set(x_714, 1, x_2); +lean_closure_set(x_714, 2, x_3); +x_761 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_762 = l_Lean_Expr_isConstOf(x_4, x_761); +if (x_762 == 0) +{ +lean_object* x_763; +x_763 = lean_box(0); +x_726 = x_763; +goto block_760; +} +else +{ +lean_object* x_764; lean_object* x_765; uint8_t x_766; +x_764 = lean_array_get_size(x_5); +x_765 = lean_unsigned_to_nat(2u); +x_766 = lean_nat_dec_eq(x_764, x_765); +if (x_766 == 0) +{ +lean_object* x_767; +lean_dec(x_764); +x_767 = lean_box(0); +x_726 = x_767; +goto block_760; +} +else +{ +lean_object* x_768; uint8_t x_769; lean_object* x_770; +lean_dec(x_714); +lean_dec(x_4); +x_768 = lean_unsigned_to_nat(0u); +x_769 = lean_nat_dec_lt(x_768, x_764); +lean_dec(x_764); +lean_inc(x_1); +x_770 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_770, 0, x_1); +if (x_769 == 0) +{ +lean_object* x_771; lean_object* x_772; lean_object* x_773; +lean_dec(x_5); +x_771 = l_Lean_instInhabitedExpr; +x_772 = l_outOfBounds___rarg(x_771); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_772); +x_773 = l_Lean_Meta_Grind_internalize(x_772, x_2, x_770, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_713); +if (lean_obj_tag(x_773) == 0) +{ +lean_object* x_774; lean_object* x_775; lean_object* x_776; lean_object* x_777; lean_object* x_778; +x_774 = lean_ctor_get(x_773, 1); +lean_inc(x_774); +lean_dec(x_773); +lean_inc(x_1); +x_775 = l_Lean_Meta_Grind_registerParent(x_1, x_772, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_774); +x_776 = lean_ctor_get(x_775, 0); +lean_inc(x_776); +x_777 = lean_ctor_get(x_775, 1); +lean_inc(x_777); +lean_dec(x_775); +x_778 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_776, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_777); +lean_dec(x_776); +return x_778; +} +else +{ +uint8_t x_779; +lean_dec(x_772); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_779 = !lean_is_exclusive(x_773); +if (x_779 == 0) +{ +return x_773; +} +else +{ +lean_object* x_780; lean_object* x_781; lean_object* x_782; +x_780 = lean_ctor_get(x_773, 0); +x_781 = lean_ctor_get(x_773, 1); +lean_inc(x_781); +lean_inc(x_780); +lean_dec(x_773); +x_782 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_782, 0, x_780); +lean_ctor_set(x_782, 1, x_781); +return x_782; +} +} +} +else +{ +lean_object* x_783; lean_object* x_784; +x_783 = lean_array_fget(x_5, x_768); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_783); +x_784 = l_Lean_Meta_Grind_internalize(x_783, x_2, x_770, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_713); +if (lean_obj_tag(x_784) == 0) +{ +lean_object* x_785; lean_object* x_786; lean_object* x_787; lean_object* x_788; lean_object* x_789; +x_785 = lean_ctor_get(x_784, 1); +lean_inc(x_785); +lean_dec(x_784); +lean_inc(x_1); +x_786 = l_Lean_Meta_Grind_registerParent(x_1, x_783, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_785); +x_787 = lean_ctor_get(x_786, 0); +lean_inc(x_787); +x_788 = lean_ctor_get(x_786, 1); +lean_inc(x_788); +lean_dec(x_786); +x_789 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_787, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_788); +lean_dec(x_787); +return x_789; +} +else +{ +uint8_t x_790; +lean_dec(x_783); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_790 = !lean_is_exclusive(x_784); +if (x_790 == 0) +{ +return x_784; +} +else +{ +lean_object* x_791; lean_object* x_792; lean_object* x_793; +x_791 = lean_ctor_get(x_784, 0); +x_792 = lean_ctor_get(x_784, 1); +lean_inc(x_792); +lean_inc(x_791); +lean_dec(x_784); +x_793 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_793, 0, x_791); +lean_ctor_set(x_793, 1, x_792); +return x_793; +} +} +} +} +} +block_725: +{ +lean_object* x_716; lean_object* x_717; +lean_dec(x_715); +lean_inc(x_1); +x_716 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_716, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_717 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_716, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_713); +if (lean_obj_tag(x_717) == 0) +{ +lean_object* x_718; lean_object* x_719; lean_object* x_720; +x_718 = lean_ctor_get(x_717, 0); +lean_inc(x_718); +x_719 = lean_ctor_get(x_717, 1); +lean_inc(x_719); +lean_dec(x_717); +x_720 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_714, x_718, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_719); +lean_dec(x_718); +lean_dec(x_5); +return x_720; +} +else +{ +uint8_t x_721; +lean_dec(x_714); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_721 = !lean_is_exclusive(x_717); +if (x_721 == 0) +{ +return x_717; +} +else +{ +lean_object* x_722; lean_object* x_723; lean_object* x_724; +x_722 = lean_ctor_get(x_717, 0); +x_723 = lean_ctor_get(x_717, 1); +lean_inc(x_723); +lean_inc(x_722); +lean_dec(x_717); +x_724 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_724, 0, x_722); +lean_ctor_set(x_724, 1, x_723); +return x_724; +} +} +} +block_760: +{ +lean_object* x_727; uint8_t x_728; +lean_dec(x_726); +x_727 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_728 = l_Lean_Expr_isConstOf(x_4, x_727); +if (x_728 == 0) +{ +lean_object* x_729; +lean_dec(x_3); +x_729 = lean_box(0); +x_715 = x_729; +goto block_725; +} +else +{ +lean_object* x_730; lean_object* x_731; uint8_t x_732; +x_730 = lean_array_get_size(x_5); +x_731 = lean_unsigned_to_nat(5u); +x_732 = lean_nat_dec_eq(x_730, x_731); +if (x_732 == 0) +{ +lean_object* x_733; +lean_dec(x_730); +lean_dec(x_3); +x_733 = lean_box(0); +x_715 = x_733; +goto block_725; +} +else +{ +lean_object* x_734; uint8_t x_735; lean_object* x_736; +lean_dec(x_714); +lean_dec(x_4); +x_734 = lean_unsigned_to_nat(1u); +x_735 = lean_nat_dec_lt(x_734, x_730); +lean_dec(x_730); +lean_inc(x_1); +x_736 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_736, 0, x_1); +if (x_735 == 0) +{ +lean_object* x_737; lean_object* x_738; lean_object* x_739; +lean_dec(x_5); +x_737 = l_Lean_instInhabitedExpr; +x_738 = l_outOfBounds___rarg(x_737); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_738); +x_739 = l_Lean_Meta_Grind_internalize(x_738, x_2, x_736, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_713); +if (lean_obj_tag(x_739) == 0) +{ +lean_object* x_740; lean_object* x_741; lean_object* x_742; lean_object* x_743; lean_object* x_744; +x_740 = lean_ctor_get(x_739, 1); +lean_inc(x_740); +lean_dec(x_739); +lean_inc(x_1); +x_741 = l_Lean_Meta_Grind_registerParent(x_1, x_738, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_740); +x_742 = lean_ctor_get(x_741, 0); +lean_inc(x_742); +x_743 = lean_ctor_get(x_741, 1); +lean_inc(x_743); +lean_dec(x_741); +x_744 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_742, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_743); +lean_dec(x_742); +return x_744; +} +else +{ +uint8_t x_745; +lean_dec(x_738); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_745 = !lean_is_exclusive(x_739); +if (x_745 == 0) +{ +return x_739; +} +else +{ +lean_object* x_746; lean_object* x_747; lean_object* x_748; +x_746 = lean_ctor_get(x_739, 0); +x_747 = lean_ctor_get(x_739, 1); +lean_inc(x_747); +lean_inc(x_746); +lean_dec(x_739); +x_748 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_748, 0, x_746); +lean_ctor_set(x_748, 1, x_747); +return x_748; +} +} +} +else +{ +lean_object* x_749; lean_object* x_750; +x_749 = lean_array_fget(x_5, x_734); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_749); +x_750 = l_Lean_Meta_Grind_internalize(x_749, x_2, x_736, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_713); +if (lean_obj_tag(x_750) == 0) +{ +lean_object* x_751; lean_object* x_752; lean_object* x_753; lean_object* x_754; lean_object* x_755; +x_751 = lean_ctor_get(x_750, 1); +lean_inc(x_751); +lean_dec(x_750); +lean_inc(x_1); +x_752 = l_Lean_Meta_Grind_registerParent(x_1, x_749, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_751); +x_753 = lean_ctor_get(x_752, 0); +lean_inc(x_753); +x_754 = lean_ctor_get(x_752, 1); +lean_inc(x_754); +lean_dec(x_752); +x_755 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_753, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_754); +lean_dec(x_753); +return x_755; +} +else +{ +uint8_t x_756; +lean_dec(x_749); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_756 = !lean_is_exclusive(x_750); +if (x_756 == 0) +{ +return x_750; +} +else +{ +lean_object* x_757; lean_object* x_758; lean_object* x_759; +x_757 = lean_ctor_get(x_750, 0); +x_758 = lean_ctor_get(x_750, 1); +lean_inc(x_758); +lean_inc(x_757); +lean_dec(x_750); +x_759 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_759, 0, x_757); +lean_ctor_set(x_759, 1, x_758); +return x_759; +} +} +} +} +} +} +} +else +{ +uint8_t x_794; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_794 = !lean_is_exclusive(x_712); +if (x_794 == 0) +{ +return x_712; +} +else +{ +lean_object* x_795; lean_object* x_796; lean_object* x_797; +x_795 = lean_ctor_get(x_712, 0); +x_796 = lean_ctor_get(x_712, 1); +lean_inc(x_796); +lean_inc(x_795); +lean_dec(x_712); +x_797 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_797, 0, x_795); +lean_ctor_set(x_797, 1, x_796); +return x_797; +} +} +} +else +{ +uint8_t x_798; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_798 = !lean_is_exclusive(x_710); +if (x_798 == 0) +{ +return x_710; +} +else +{ +lean_object* x_799; lean_object* x_800; lean_object* x_801; +x_799 = lean_ctor_get(x_710, 0); +x_800 = lean_ctor_get(x_710, 1); +lean_inc(x_800); +lean_inc(x_799); +lean_dec(x_710); +x_801 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_801, 0, x_799); +lean_ctor_set(x_801, 1, x_800); +return x_801; +} +} +} +else +{ +uint8_t x_802; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_802 = !lean_is_exclusive(x_708); +if (x_802 == 0) +{ +return x_708; +} +else +{ +lean_object* x_803; lean_object* x_804; lean_object* x_805; +x_803 = lean_ctor_get(x_708, 0); +x_804 = lean_ctor_get(x_708, 1); +lean_inc(x_804); +lean_inc(x_803); +lean_dec(x_708); +x_805 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_805, 0, x_803); +lean_ctor_set(x_805, 1, x_804); +return x_805; +} +} +} +case 9: +{ +lean_object* x_806; +lean_dec(x_6); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_1); +x_806 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_806) == 0) +{ +lean_object* x_807; lean_object* x_808; +x_807 = lean_ctor_get(x_806, 1); +lean_inc(x_807); +lean_dec(x_806); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_808 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_807); +if (lean_obj_tag(x_808) == 0) +{ +lean_object* x_809; lean_object* x_810; +x_809 = lean_ctor_get(x_808, 1); +lean_inc(x_809); +lean_dec(x_808); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_810 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_809); +if (lean_obj_tag(x_810) == 0) +{ +lean_object* x_811; lean_object* x_812; lean_object* x_813; lean_object* x_824; lean_object* x_859; uint8_t x_860; +x_811 = lean_ctor_get(x_810, 1); +lean_inc(x_811); +lean_dec(x_810); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_812 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_812, 0, x_1); +lean_closure_set(x_812, 1, x_2); +lean_closure_set(x_812, 2, x_3); +x_859 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_860 = l_Lean_Expr_isConstOf(x_4, x_859); +if (x_860 == 0) +{ +lean_object* x_861; +x_861 = lean_box(0); +x_824 = x_861; +goto block_858; +} +else +{ +lean_object* x_862; lean_object* x_863; uint8_t x_864; +x_862 = lean_array_get_size(x_5); +x_863 = lean_unsigned_to_nat(2u); +x_864 = lean_nat_dec_eq(x_862, x_863); +if (x_864 == 0) +{ +lean_object* x_865; +lean_dec(x_862); +x_865 = lean_box(0); +x_824 = x_865; +goto block_858; +} +else +{ +lean_object* x_866; uint8_t x_867; lean_object* x_868; +lean_dec(x_812); +lean_dec(x_4); +x_866 = lean_unsigned_to_nat(0u); +x_867 = lean_nat_dec_lt(x_866, x_862); +lean_dec(x_862); +lean_inc(x_1); +x_868 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_868, 0, x_1); +if (x_867 == 0) +{ +lean_object* x_869; lean_object* x_870; lean_object* x_871; +lean_dec(x_5); +x_869 = l_Lean_instInhabitedExpr; +x_870 = l_outOfBounds___rarg(x_869); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_870); +x_871 = l_Lean_Meta_Grind_internalize(x_870, x_2, x_868, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_811); +if (lean_obj_tag(x_871) == 0) +{ +lean_object* x_872; lean_object* x_873; lean_object* x_874; lean_object* x_875; lean_object* x_876; +x_872 = lean_ctor_get(x_871, 1); +lean_inc(x_872); +lean_dec(x_871); +lean_inc(x_1); +x_873 = l_Lean_Meta_Grind_registerParent(x_1, x_870, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_872); +x_874 = lean_ctor_get(x_873, 0); +lean_inc(x_874); +x_875 = lean_ctor_get(x_873, 1); +lean_inc(x_875); +lean_dec(x_873); +x_876 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_874, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_875); +lean_dec(x_874); +return x_876; +} +else +{ +uint8_t x_877; +lean_dec(x_870); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_877 = !lean_is_exclusive(x_871); +if (x_877 == 0) +{ +return x_871; +} +else +{ +lean_object* x_878; lean_object* x_879; lean_object* x_880; +x_878 = lean_ctor_get(x_871, 0); +x_879 = lean_ctor_get(x_871, 1); +lean_inc(x_879); +lean_inc(x_878); +lean_dec(x_871); +x_880 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_880, 0, x_878); +lean_ctor_set(x_880, 1, x_879); +return x_880; +} +} +} +else +{ +lean_object* x_881; lean_object* x_882; +x_881 = lean_array_fget(x_5, x_866); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_881); +x_882 = l_Lean_Meta_Grind_internalize(x_881, x_2, x_868, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_811); +if (lean_obj_tag(x_882) == 0) +{ +lean_object* x_883; lean_object* x_884; lean_object* x_885; lean_object* x_886; lean_object* x_887; +x_883 = lean_ctor_get(x_882, 1); +lean_inc(x_883); +lean_dec(x_882); +lean_inc(x_1); +x_884 = l_Lean_Meta_Grind_registerParent(x_1, x_881, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_883); +x_885 = lean_ctor_get(x_884, 0); +lean_inc(x_885); +x_886 = lean_ctor_get(x_884, 1); +lean_inc(x_886); +lean_dec(x_884); +x_887 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_885, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_886); +lean_dec(x_885); +return x_887; +} +else +{ +uint8_t x_888; +lean_dec(x_881); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_888 = !lean_is_exclusive(x_882); +if (x_888 == 0) +{ +return x_882; +} +else +{ +lean_object* x_889; lean_object* x_890; lean_object* x_891; +x_889 = lean_ctor_get(x_882, 0); +x_890 = lean_ctor_get(x_882, 1); +lean_inc(x_890); +lean_inc(x_889); +lean_dec(x_882); +x_891 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_891, 0, x_889); +lean_ctor_set(x_891, 1, x_890); +return x_891; +} +} +} +} +} +block_823: +{ +lean_object* x_814; lean_object* x_815; +lean_dec(x_813); +lean_inc(x_1); +x_814 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_814, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_815 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_814, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_811); +if (lean_obj_tag(x_815) == 0) +{ +lean_object* x_816; lean_object* x_817; lean_object* x_818; +x_816 = lean_ctor_get(x_815, 0); +lean_inc(x_816); +x_817 = lean_ctor_get(x_815, 1); +lean_inc(x_817); +lean_dec(x_815); +x_818 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_812, x_816, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_817); +lean_dec(x_816); +lean_dec(x_5); +return x_818; +} +else +{ +uint8_t x_819; +lean_dec(x_812); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_819 = !lean_is_exclusive(x_815); +if (x_819 == 0) +{ +return x_815; +} +else +{ +lean_object* x_820; lean_object* x_821; lean_object* x_822; +x_820 = lean_ctor_get(x_815, 0); +x_821 = lean_ctor_get(x_815, 1); +lean_inc(x_821); +lean_inc(x_820); +lean_dec(x_815); +x_822 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_822, 0, x_820); +lean_ctor_set(x_822, 1, x_821); +return x_822; +} +} +} +block_858: +{ +lean_object* x_825; uint8_t x_826; +lean_dec(x_824); +x_825 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_826 = l_Lean_Expr_isConstOf(x_4, x_825); +if (x_826 == 0) +{ +lean_object* x_827; +lean_dec(x_3); +x_827 = lean_box(0); +x_813 = x_827; +goto block_823; +} +else +{ +lean_object* x_828; lean_object* x_829; uint8_t x_830; +x_828 = lean_array_get_size(x_5); +x_829 = lean_unsigned_to_nat(5u); +x_830 = lean_nat_dec_eq(x_828, x_829); +if (x_830 == 0) +{ +lean_object* x_831; +lean_dec(x_828); +lean_dec(x_3); +x_831 = lean_box(0); +x_813 = x_831; +goto block_823; +} +else +{ +lean_object* x_832; uint8_t x_833; lean_object* x_834; +lean_dec(x_812); +lean_dec(x_4); +x_832 = lean_unsigned_to_nat(1u); +x_833 = lean_nat_dec_lt(x_832, x_828); +lean_dec(x_828); +lean_inc(x_1); +x_834 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_834, 0, x_1); +if (x_833 == 0) +{ +lean_object* x_835; lean_object* x_836; lean_object* x_837; +lean_dec(x_5); +x_835 = l_Lean_instInhabitedExpr; +x_836 = l_outOfBounds___rarg(x_835); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_836); +x_837 = l_Lean_Meta_Grind_internalize(x_836, x_2, x_834, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_811); +if (lean_obj_tag(x_837) == 0) +{ +lean_object* x_838; lean_object* x_839; lean_object* x_840; lean_object* x_841; lean_object* x_842; +x_838 = lean_ctor_get(x_837, 1); +lean_inc(x_838); +lean_dec(x_837); +lean_inc(x_1); +x_839 = l_Lean_Meta_Grind_registerParent(x_1, x_836, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_838); +x_840 = lean_ctor_get(x_839, 0); +lean_inc(x_840); +x_841 = lean_ctor_get(x_839, 1); +lean_inc(x_841); +lean_dec(x_839); +x_842 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_840, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_841); +lean_dec(x_840); +return x_842; +} +else +{ +uint8_t x_843; +lean_dec(x_836); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_843 = !lean_is_exclusive(x_837); +if (x_843 == 0) +{ +return x_837; +} +else +{ +lean_object* x_844; lean_object* x_845; lean_object* x_846; +x_844 = lean_ctor_get(x_837, 0); +x_845 = lean_ctor_get(x_837, 1); +lean_inc(x_845); +lean_inc(x_844); +lean_dec(x_837); +x_846 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_846, 0, x_844); +lean_ctor_set(x_846, 1, x_845); +return x_846; +} +} +} +else +{ +lean_object* x_847; lean_object* x_848; +x_847 = lean_array_fget(x_5, x_832); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_847); +x_848 = l_Lean_Meta_Grind_internalize(x_847, x_2, x_834, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_811); +if (lean_obj_tag(x_848) == 0) +{ +lean_object* x_849; lean_object* x_850; lean_object* x_851; lean_object* x_852; lean_object* x_853; +x_849 = lean_ctor_get(x_848, 1); +lean_inc(x_849); +lean_dec(x_848); +lean_inc(x_1); +x_850 = l_Lean_Meta_Grind_registerParent(x_1, x_847, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_849); +x_851 = lean_ctor_get(x_850, 0); +lean_inc(x_851); +x_852 = lean_ctor_get(x_850, 1); +lean_inc(x_852); +lean_dec(x_850); +x_853 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_851, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_852); +lean_dec(x_851); +return x_853; +} +else +{ +uint8_t x_854; +lean_dec(x_847); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_854 = !lean_is_exclusive(x_848); +if (x_854 == 0) +{ +return x_848; +} +else +{ +lean_object* x_855; lean_object* x_856; lean_object* x_857; +x_855 = lean_ctor_get(x_848, 0); +x_856 = lean_ctor_get(x_848, 1); +lean_inc(x_856); +lean_inc(x_855); +lean_dec(x_848); +x_857 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_857, 0, x_855); +lean_ctor_set(x_857, 1, x_856); +return x_857; +} +} +} +} +} +} +} +else +{ +uint8_t x_892; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_892 = !lean_is_exclusive(x_810); +if (x_892 == 0) +{ +return x_810; +} +else +{ +lean_object* x_893; lean_object* x_894; lean_object* x_895; +x_893 = lean_ctor_get(x_810, 0); +x_894 = lean_ctor_get(x_810, 1); +lean_inc(x_894); +lean_inc(x_893); +lean_dec(x_810); +x_895 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_895, 0, x_893); +lean_ctor_set(x_895, 1, x_894); +return x_895; +} +} +} +else +{ +uint8_t x_896; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_896 = !lean_is_exclusive(x_808); +if (x_896 == 0) +{ +return x_808; +} +else +{ +lean_object* x_897; lean_object* x_898; lean_object* x_899; +x_897 = lean_ctor_get(x_808, 0); +x_898 = lean_ctor_get(x_808, 1); +lean_inc(x_898); +lean_inc(x_897); +lean_dec(x_808); +x_899 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_899, 0, x_897); +lean_ctor_set(x_899, 1, x_898); +return x_899; +} +} +} +else +{ +uint8_t x_900; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_900 = !lean_is_exclusive(x_806); +if (x_900 == 0) +{ +return x_806; +} +else +{ +lean_object* x_901; lean_object* x_902; lean_object* x_903; +x_901 = lean_ctor_get(x_806, 0); +x_902 = lean_ctor_get(x_806, 1); +lean_inc(x_902); +lean_inc(x_901); +lean_dec(x_806); +x_903 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_903, 0, x_901); +lean_ctor_set(x_903, 1, x_902); +return x_903; +} +} +} +case 10: +{ +lean_object* x_904; +lean_dec(x_6); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_1); +x_904 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_904) == 0) +{ +lean_object* x_905; lean_object* x_906; +x_905 = lean_ctor_get(x_904, 1); +lean_inc(x_905); +lean_dec(x_904); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_906 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_905); +if (lean_obj_tag(x_906) == 0) +{ +lean_object* x_907; lean_object* x_908; +x_907 = lean_ctor_get(x_906, 1); +lean_inc(x_907); +lean_dec(x_906); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_908 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_907); +if (lean_obj_tag(x_908) == 0) +{ +lean_object* x_909; lean_object* x_910; lean_object* x_911; lean_object* x_922; lean_object* x_957; uint8_t x_958; +x_909 = lean_ctor_get(x_908, 1); +lean_inc(x_909); +lean_dec(x_908); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_910 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_910, 0, x_1); +lean_closure_set(x_910, 1, x_2); +lean_closure_set(x_910, 2, x_3); +x_957 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_958 = l_Lean_Expr_isConstOf(x_4, x_957); +if (x_958 == 0) +{ +lean_object* x_959; +x_959 = lean_box(0); +x_922 = x_959; +goto block_956; +} +else +{ +lean_object* x_960; lean_object* x_961; uint8_t x_962; +x_960 = lean_array_get_size(x_5); +x_961 = lean_unsigned_to_nat(2u); +x_962 = lean_nat_dec_eq(x_960, x_961); +if (x_962 == 0) +{ +lean_object* x_963; +lean_dec(x_960); +x_963 = lean_box(0); +x_922 = x_963; +goto block_956; +} +else +{ +lean_object* x_964; uint8_t x_965; lean_object* x_966; +lean_dec(x_910); +lean_dec(x_4); +x_964 = lean_unsigned_to_nat(0u); +x_965 = lean_nat_dec_lt(x_964, x_960); +lean_dec(x_960); +lean_inc(x_1); +x_966 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_966, 0, x_1); +if (x_965 == 0) +{ +lean_object* x_967; lean_object* x_968; lean_object* x_969; +lean_dec(x_5); +x_967 = l_Lean_instInhabitedExpr; +x_968 = l_outOfBounds___rarg(x_967); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_968); +x_969 = l_Lean_Meta_Grind_internalize(x_968, x_2, x_966, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_909); +if (lean_obj_tag(x_969) == 0) +{ +lean_object* x_970; lean_object* x_971; lean_object* x_972; lean_object* x_973; lean_object* x_974; +x_970 = lean_ctor_get(x_969, 1); +lean_inc(x_970); +lean_dec(x_969); +lean_inc(x_1); +x_971 = l_Lean_Meta_Grind_registerParent(x_1, x_968, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_970); +x_972 = lean_ctor_get(x_971, 0); +lean_inc(x_972); +x_973 = lean_ctor_get(x_971, 1); +lean_inc(x_973); +lean_dec(x_971); +x_974 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_972, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_973); +lean_dec(x_972); +return x_974; +} +else +{ +uint8_t x_975; +lean_dec(x_968); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_975 = !lean_is_exclusive(x_969); +if (x_975 == 0) +{ +return x_969; +} +else +{ +lean_object* x_976; lean_object* x_977; lean_object* x_978; +x_976 = lean_ctor_get(x_969, 0); +x_977 = lean_ctor_get(x_969, 1); +lean_inc(x_977); +lean_inc(x_976); +lean_dec(x_969); +x_978 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_978, 0, x_976); +lean_ctor_set(x_978, 1, x_977); +return x_978; +} +} +} +else +{ +lean_object* x_979; lean_object* x_980; +x_979 = lean_array_fget(x_5, x_964); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_979); +x_980 = l_Lean_Meta_Grind_internalize(x_979, x_2, x_966, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_909); +if (lean_obj_tag(x_980) == 0) +{ +lean_object* x_981; lean_object* x_982; lean_object* x_983; lean_object* x_984; lean_object* x_985; +x_981 = lean_ctor_get(x_980, 1); +lean_inc(x_981); +lean_dec(x_980); +lean_inc(x_1); +x_982 = l_Lean_Meta_Grind_registerParent(x_1, x_979, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_981); +x_983 = lean_ctor_get(x_982, 0); +lean_inc(x_983); +x_984 = lean_ctor_get(x_982, 1); +lean_inc(x_984); +lean_dec(x_982); +x_985 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_983, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_984); +lean_dec(x_983); +return x_985; +} +else +{ +uint8_t x_986; +lean_dec(x_979); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_986 = !lean_is_exclusive(x_980); +if (x_986 == 0) +{ +return x_980; +} +else +{ +lean_object* x_987; lean_object* x_988; lean_object* x_989; +x_987 = lean_ctor_get(x_980, 0); +x_988 = lean_ctor_get(x_980, 1); +lean_inc(x_988); +lean_inc(x_987); +lean_dec(x_980); +x_989 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_989, 0, x_987); +lean_ctor_set(x_989, 1, x_988); +return x_989; +} +} +} +} +} +block_921: +{ +lean_object* x_912; lean_object* x_913; +lean_dec(x_911); +lean_inc(x_1); +x_912 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_912, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_913 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_912, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_909); +if (lean_obj_tag(x_913) == 0) +{ +lean_object* x_914; lean_object* x_915; lean_object* x_916; +x_914 = lean_ctor_get(x_913, 0); +lean_inc(x_914); +x_915 = lean_ctor_get(x_913, 1); +lean_inc(x_915); +lean_dec(x_913); +x_916 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_910, x_914, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_915); +lean_dec(x_914); +lean_dec(x_5); +return x_916; +} +else +{ +uint8_t x_917; +lean_dec(x_910); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_917 = !lean_is_exclusive(x_913); +if (x_917 == 0) +{ +return x_913; +} +else +{ +lean_object* x_918; lean_object* x_919; lean_object* x_920; +x_918 = lean_ctor_get(x_913, 0); +x_919 = lean_ctor_get(x_913, 1); +lean_inc(x_919); +lean_inc(x_918); +lean_dec(x_913); +x_920 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_920, 0, x_918); +lean_ctor_set(x_920, 1, x_919); +return x_920; +} +} +} +block_956: +{ +lean_object* x_923; uint8_t x_924; +lean_dec(x_922); +x_923 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_924 = l_Lean_Expr_isConstOf(x_4, x_923); +if (x_924 == 0) +{ +lean_object* x_925; +lean_dec(x_3); +x_925 = lean_box(0); +x_911 = x_925; +goto block_921; +} +else +{ +lean_object* x_926; lean_object* x_927; uint8_t x_928; +x_926 = lean_array_get_size(x_5); +x_927 = lean_unsigned_to_nat(5u); +x_928 = lean_nat_dec_eq(x_926, x_927); +if (x_928 == 0) +{ +lean_object* x_929; +lean_dec(x_926); +lean_dec(x_3); +x_929 = lean_box(0); +x_911 = x_929; +goto block_921; +} +else +{ +lean_object* x_930; uint8_t x_931; lean_object* x_932; +lean_dec(x_910); +lean_dec(x_4); +x_930 = lean_unsigned_to_nat(1u); +x_931 = lean_nat_dec_lt(x_930, x_926); +lean_dec(x_926); +lean_inc(x_1); +x_932 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_932, 0, x_1); +if (x_931 == 0) +{ +lean_object* x_933; lean_object* x_934; lean_object* x_935; +lean_dec(x_5); +x_933 = l_Lean_instInhabitedExpr; +x_934 = l_outOfBounds___rarg(x_933); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_934); +x_935 = l_Lean_Meta_Grind_internalize(x_934, x_2, x_932, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_909); +if (lean_obj_tag(x_935) == 0) +{ +lean_object* x_936; lean_object* x_937; lean_object* x_938; lean_object* x_939; lean_object* x_940; +x_936 = lean_ctor_get(x_935, 1); +lean_inc(x_936); +lean_dec(x_935); +lean_inc(x_1); +x_937 = l_Lean_Meta_Grind_registerParent(x_1, x_934, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_936); +x_938 = lean_ctor_get(x_937, 0); +lean_inc(x_938); +x_939 = lean_ctor_get(x_937, 1); +lean_inc(x_939); +lean_dec(x_937); +x_940 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_938, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_939); +lean_dec(x_938); +return x_940; +} +else +{ +uint8_t x_941; +lean_dec(x_934); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_941 = !lean_is_exclusive(x_935); +if (x_941 == 0) +{ +return x_935; +} +else +{ +lean_object* x_942; lean_object* x_943; lean_object* x_944; +x_942 = lean_ctor_get(x_935, 0); +x_943 = lean_ctor_get(x_935, 1); +lean_inc(x_943); +lean_inc(x_942); +lean_dec(x_935); +x_944 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_944, 0, x_942); +lean_ctor_set(x_944, 1, x_943); +return x_944; +} +} +} +else +{ +lean_object* x_945; lean_object* x_946; +x_945 = lean_array_fget(x_5, x_930); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_945); +x_946 = l_Lean_Meta_Grind_internalize(x_945, x_2, x_932, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_909); +if (lean_obj_tag(x_946) == 0) +{ +lean_object* x_947; lean_object* x_948; lean_object* x_949; lean_object* x_950; lean_object* x_951; +x_947 = lean_ctor_get(x_946, 1); +lean_inc(x_947); +lean_dec(x_946); +lean_inc(x_1); +x_948 = l_Lean_Meta_Grind_registerParent(x_1, x_945, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_947); +x_949 = lean_ctor_get(x_948, 0); +lean_inc(x_949); +x_950 = lean_ctor_get(x_948, 1); +lean_inc(x_950); +lean_dec(x_948); +x_951 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_949, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_950); +lean_dec(x_949); +return x_951; +} +else +{ +uint8_t x_952; +lean_dec(x_945); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_952 = !lean_is_exclusive(x_946); +if (x_952 == 0) +{ +return x_946; +} +else +{ +lean_object* x_953; lean_object* x_954; lean_object* x_955; +x_953 = lean_ctor_get(x_946, 0); +x_954 = lean_ctor_get(x_946, 1); +lean_inc(x_954); +lean_inc(x_953); +lean_dec(x_946); +x_955 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_955, 0, x_953); +lean_ctor_set(x_955, 1, x_954); +return x_955; +} +} +} +} +} +} +} +else +{ +uint8_t x_990; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_990 = !lean_is_exclusive(x_908); +if (x_990 == 0) +{ +return x_908; +} +else +{ +lean_object* x_991; lean_object* x_992; lean_object* x_993; +x_991 = lean_ctor_get(x_908, 0); +x_992 = lean_ctor_get(x_908, 1); +lean_inc(x_992); +lean_inc(x_991); +lean_dec(x_908); +x_993 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_993, 0, x_991); +lean_ctor_set(x_993, 1, x_992); +return x_993; +} +} +} +else +{ +uint8_t x_994; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_994 = !lean_is_exclusive(x_906); +if (x_994 == 0) +{ +return x_906; +} +else +{ +lean_object* x_995; lean_object* x_996; lean_object* x_997; +x_995 = lean_ctor_get(x_906, 0); +x_996 = lean_ctor_get(x_906, 1); +lean_inc(x_996); +lean_inc(x_995); +lean_dec(x_906); +x_997 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_997, 0, x_995); +lean_ctor_set(x_997, 1, x_996); +return x_997; +} +} +} +else +{ +uint8_t x_998; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_998 = !lean_is_exclusive(x_904); +if (x_998 == 0) +{ +return x_904; +} +else +{ +lean_object* x_999; lean_object* x_1000; lean_object* x_1001; +x_999 = lean_ctor_get(x_904, 0); +x_1000 = lean_ctor_get(x_904, 1); +lean_inc(x_1000); +lean_inc(x_999); +lean_dec(x_904); +x_1001 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1001, 0, x_999); +lean_ctor_set(x_1001, 1, x_1000); +return x_1001; +} +} +} +default: +{ +lean_object* x_1002; +lean_dec(x_6); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_1); +x_1002 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_checkAndAddSplitCandidate(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_1002) == 0) +{ +lean_object* x_1003; lean_object* x_1004; +x_1003 = lean_ctor_get(x_1002, 1); +lean_inc(x_1003); +lean_dec(x_1002); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_1004 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs(x_1, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1003); +if (lean_obj_tag(x_1004) == 0) +{ +lean_object* x_1005; lean_object* x_1006; +x_1005 = lean_ctor_get(x_1004, 1); +lean_inc(x_1005); +lean_dec(x_1004); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_1006 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns(x_4, x_2, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1005); +if (lean_obj_tag(x_1006) == 0) +{ +lean_object* x_1007; lean_object* x_1008; lean_object* x_1009; lean_object* x_1020; lean_object* x_1055; uint8_t x_1056; +x_1007 = lean_ctor_get(x_1006, 1); +lean_inc(x_1007); +lean_dec(x_1006); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_1008 = lean_alloc_closure((void*)(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1___boxed), 13, 3); +lean_closure_set(x_1008, 0, x_1); +lean_closure_set(x_1008, 1, x_2); +lean_closure_set(x_1008, 2, x_3); +x_1055 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4; +x_1056 = l_Lean_Expr_isConstOf(x_4, x_1055); +if (x_1056 == 0) +{ +lean_object* x_1057; +x_1057 = lean_box(0); +x_1020 = x_1057; +goto block_1054; +} +else +{ +lean_object* x_1058; lean_object* x_1059; uint8_t x_1060; +x_1058 = lean_array_get_size(x_5); +x_1059 = lean_unsigned_to_nat(2u); +x_1060 = lean_nat_dec_eq(x_1058, x_1059); +if (x_1060 == 0) +{ +lean_object* x_1061; +lean_dec(x_1058); +x_1061 = lean_box(0); +x_1020 = x_1061; +goto block_1054; +} +else +{ +lean_object* x_1062; uint8_t x_1063; lean_object* x_1064; +lean_dec(x_1008); +lean_dec(x_4); +x_1062 = lean_unsigned_to_nat(0u); +x_1063 = lean_nat_dec_lt(x_1062, x_1058); +lean_dec(x_1058); +lean_inc(x_1); +x_1064 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1064, 0, x_1); +if (x_1063 == 0) +{ +lean_object* x_1065; lean_object* x_1066; lean_object* x_1067; +lean_dec(x_5); +x_1065 = l_Lean_instInhabitedExpr; +x_1066 = l_outOfBounds___rarg(x_1065); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_1066); +x_1067 = l_Lean_Meta_Grind_internalize(x_1066, x_2, x_1064, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1007); +if (lean_obj_tag(x_1067) == 0) +{ +lean_object* x_1068; lean_object* x_1069; lean_object* x_1070; lean_object* x_1071; lean_object* x_1072; +x_1068 = lean_ctor_get(x_1067, 1); +lean_inc(x_1068); +lean_dec(x_1067); +lean_inc(x_1); +x_1069 = l_Lean_Meta_Grind_registerParent(x_1, x_1066, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1068); +x_1070 = lean_ctor_get(x_1069, 0); +lean_inc(x_1070); +x_1071 = lean_ctor_get(x_1069, 1); +lean_inc(x_1071); +lean_dec(x_1069); +x_1072 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_1070, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1071); +lean_dec(x_1070); +return x_1072; +} +else +{ +uint8_t x_1073; +lean_dec(x_1066); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1073 = !lean_is_exclusive(x_1067); +if (x_1073 == 0) +{ +return x_1067; +} +else +{ +lean_object* x_1074; lean_object* x_1075; lean_object* x_1076; +x_1074 = lean_ctor_get(x_1067, 0); +x_1075 = lean_ctor_get(x_1067, 1); +lean_inc(x_1075); +lean_inc(x_1074); +lean_dec(x_1067); +x_1076 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1076, 0, x_1074); +lean_ctor_set(x_1076, 1, x_1075); +return x_1076; +} +} +} +else +{ +lean_object* x_1077; lean_object* x_1078; +x_1077 = lean_array_fget(x_5, x_1062); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_1077); +x_1078 = l_Lean_Meta_Grind_internalize(x_1077, x_2, x_1064, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1007); +if (lean_obj_tag(x_1078) == 0) +{ +lean_object* x_1079; lean_object* x_1080; lean_object* x_1081; lean_object* x_1082; lean_object* x_1083; +x_1079 = lean_ctor_get(x_1078, 1); +lean_inc(x_1079); +lean_dec(x_1078); +lean_inc(x_1); +x_1080 = l_Lean_Meta_Grind_registerParent(x_1, x_1077, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1079); +x_1081 = lean_ctor_get(x_1080, 0); +lean_inc(x_1081); +x_1082 = lean_ctor_get(x_1080, 1); +lean_inc(x_1082); +lean_dec(x_1080); +x_1083 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_1081, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1082); +lean_dec(x_1081); +return x_1083; +} +else +{ +uint8_t x_1084; +lean_dec(x_1077); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1084 = !lean_is_exclusive(x_1078); +if (x_1084 == 0) +{ +return x_1078; +} +else +{ +lean_object* x_1085; lean_object* x_1086; lean_object* x_1087; +x_1085 = lean_ctor_get(x_1078, 0); +x_1086 = lean_ctor_get(x_1078, 1); +lean_inc(x_1086); +lean_inc(x_1085); +lean_dec(x_1078); +x_1087 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1087, 0, x_1085); +lean_ctor_set(x_1087, 1, x_1086); +return x_1087; +} +} +} +} +} +block_1019: +{ +lean_object* x_1010; lean_object* x_1011; +lean_dec(x_1009); +lean_inc(x_1); +x_1010 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1010, 0, x_1); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_4); +x_1011 = l_Lean_Meta_Grind_internalize(x_4, x_2, x_1010, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1007); +if (lean_obj_tag(x_1011) == 0) +{ +lean_object* x_1012; lean_object* x_1013; lean_object* x_1014; +x_1012 = lean_ctor_get(x_1011, 0); +lean_inc(x_1012); +x_1013 = lean_ctor_get(x_1011, 1); +lean_inc(x_1013); +lean_dec(x_1011); +x_1014 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__2(x_1, x_4, x_5, x_2, x_1008, x_1012, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1013); +lean_dec(x_1012); +lean_dec(x_5); +return x_1014; +} +else +{ +uint8_t x_1015; +lean_dec(x_1008); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_1015 = !lean_is_exclusive(x_1011); +if (x_1015 == 0) +{ +return x_1011; +} +else +{ +lean_object* x_1016; lean_object* x_1017; lean_object* x_1018; +x_1016 = lean_ctor_get(x_1011, 0); +x_1017 = lean_ctor_get(x_1011, 1); +lean_inc(x_1017); +lean_inc(x_1016); +lean_dec(x_1011); +x_1018 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1018, 0, x_1016); +lean_ctor_set(x_1018, 1, x_1017); +return x_1018; +} +} +} +block_1054: +{ +lean_object* x_1021; uint8_t x_1022; +lean_dec(x_1020); +x_1021 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2; +x_1022 = l_Lean_Expr_isConstOf(x_4, x_1021); +if (x_1022 == 0) +{ +lean_object* x_1023; +lean_dec(x_3); +x_1023 = lean_box(0); +x_1009 = x_1023; +goto block_1019; +} +else +{ +lean_object* x_1024; lean_object* x_1025; uint8_t x_1026; +x_1024 = lean_array_get_size(x_5); +x_1025 = lean_unsigned_to_nat(5u); +x_1026 = lean_nat_dec_eq(x_1024, x_1025); +if (x_1026 == 0) +{ +lean_object* x_1027; +lean_dec(x_1024); +lean_dec(x_3); +x_1027 = lean_box(0); +x_1009 = x_1027; +goto block_1019; +} +else +{ +lean_object* x_1028; uint8_t x_1029; lean_object* x_1030; +lean_dec(x_1008); +lean_dec(x_4); +x_1028 = lean_unsigned_to_nat(1u); +x_1029 = lean_nat_dec_lt(x_1028, x_1024); +lean_dec(x_1024); +lean_inc(x_1); +x_1030 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_1030, 0, x_1); +if (x_1029 == 0) +{ +lean_object* x_1031; lean_object* x_1032; lean_object* x_1033; +lean_dec(x_5); +x_1031 = l_Lean_instInhabitedExpr; +x_1032 = l_outOfBounds___rarg(x_1031); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_1032); +x_1033 = l_Lean_Meta_Grind_internalize(x_1032, x_2, x_1030, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1007); +if (lean_obj_tag(x_1033) == 0) +{ +lean_object* x_1034; lean_object* x_1035; lean_object* x_1036; lean_object* x_1037; lean_object* x_1038; +x_1034 = lean_ctor_get(x_1033, 1); +lean_inc(x_1034); +lean_dec(x_1033); +lean_inc(x_1); +x_1035 = l_Lean_Meta_Grind_registerParent(x_1, x_1032, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1034); +x_1036 = lean_ctor_get(x_1035, 0); +lean_inc(x_1036); +x_1037 = lean_ctor_get(x_1035, 1); +lean_inc(x_1037); +lean_dec(x_1035); +x_1038 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_1036, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1037); +lean_dec(x_1036); +return x_1038; +} +else +{ +uint8_t x_1039; +lean_dec(x_1032); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1039 = !lean_is_exclusive(x_1033); +if (x_1039 == 0) +{ +return x_1033; +} +else +{ +lean_object* x_1040; lean_object* x_1041; lean_object* x_1042; +x_1040 = lean_ctor_get(x_1033, 0); +x_1041 = lean_ctor_get(x_1033, 1); +lean_inc(x_1041); +lean_inc(x_1040); +lean_dec(x_1033); +x_1042 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1042, 0, x_1040); +lean_ctor_set(x_1042, 1, x_1041); +return x_1042; +} +} +} +else +{ +lean_object* x_1043; lean_object* x_1044; +x_1043 = lean_array_fget(x_5, x_1028); +lean_dec(x_5); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_1043); +x_1044 = l_Lean_Meta_Grind_internalize(x_1043, x_2, x_1030, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1007); +if (lean_obj_tag(x_1044) == 0) +{ +lean_object* x_1045; lean_object* x_1046; lean_object* x_1047; lean_object* x_1048; lean_object* x_1049; +x_1045 = lean_ctor_get(x_1044, 1); +lean_inc(x_1045); +lean_dec(x_1044); +lean_inc(x_1); +x_1046 = l_Lean_Meta_Grind_registerParent(x_1, x_1043, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1045); +x_1047 = lean_ctor_get(x_1046, 0); +lean_inc(x_1047); +x_1048 = lean_ctor_get(x_1046, 1); +lean_inc(x_1048); +lean_dec(x_1046); +x_1049 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___lambda__1(x_1, x_2, x_3, x_1047, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_1048); +lean_dec(x_1047); +return x_1049; +} +else +{ +uint8_t x_1050; +lean_dec(x_1043); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1050 = !lean_is_exclusive(x_1044); +if (x_1050 == 0) +{ +return x_1044; +} +else +{ +lean_object* x_1051; lean_object* x_1052; lean_object* x_1053; +x_1051 = lean_ctor_get(x_1044, 0); +x_1052 = lean_ctor_get(x_1044, 1); +lean_inc(x_1052); +lean_inc(x_1051); +lean_dec(x_1044); +x_1053 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1053, 0, x_1051); +lean_ctor_set(x_1053, 1, x_1052); +return x_1053; +} +} +} +} +} +} +} +else +{ +uint8_t x_1088; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1088 = !lean_is_exclusive(x_1006); +if (x_1088 == 0) +{ +return x_1006; +} +else +{ +lean_object* x_1089; lean_object* x_1090; lean_object* x_1091; +x_1089 = lean_ctor_get(x_1006, 0); +x_1090 = lean_ctor_get(x_1006, 1); +lean_inc(x_1090); +lean_inc(x_1089); +lean_dec(x_1006); +x_1091 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1091, 0, x_1089); +lean_ctor_set(x_1091, 1, x_1090); +return x_1091; +} +} +} +else +{ +uint8_t x_1092; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1092 = !lean_is_exclusive(x_1004); +if (x_1092 == 0) +{ +return x_1004; +} +else +{ +lean_object* x_1093; lean_object* x_1094; lean_object* x_1095; +x_1093 = lean_ctor_get(x_1004, 0); +x_1094 = lean_ctor_get(x_1004, 1); +lean_inc(x_1094); +lean_inc(x_1093); +lean_dec(x_1004); +x_1095 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1095, 0, x_1093); +lean_ctor_set(x_1095, 1, x_1094); +return x_1095; +} +} +} +else +{ +uint8_t x_1096; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_1096 = !lean_is_exclusive(x_1002); +if (x_1096 == 0) +{ +return x_1002; +} +else +{ +lean_object* x_1097; lean_object* x_1098; lean_object* x_1099; +x_1097 = lean_ctor_get(x_1002, 0); +x_1098 = lean_ctor_get(x_1002, 1); +lean_inc(x_1098); +lean_inc(x_1097); +lean_dec(x_1002); +x_1099 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_1099, 0, x_1097); +lean_ctor_set(x_1099, 1, x_1098); +return x_1099; } } } @@ -11290,7 +13631,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Grind_internalize___lambda__2___closed__1; x_2 = l_Lean_Meta_Grind_internalize___lambda__2___closed__2; -x_3 = lean_unsigned_to_nat(158u); +x_3 = lean_unsigned_to_nat(179u); x_4 = lean_unsigned_to_nat(16u); x_5 = l_Lean_Meta_Grind_internalize___lambda__2___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -11301,7 +13642,7 @@ static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__5( _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("unexpected kernel projection term during internalization", 56, 56); +x_1 = lean_mk_string_unchecked("unexpected metavariable during internalization", 46, 46); return x_1; } } @@ -11318,7 +13659,7 @@ static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__7( _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("\n`grind` uses a pre-processing step that folds them as projection applications, the pre-processor should have failed to fold this term", 134, 134); +x_1 = lean_mk_string_unchecked("\n`grind` is not supposed to be used in goals containing metavariables.", 70, 70); return x_1; } } @@ -11331,6 +13672,93 @@ x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("MatchCond", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__1; +x_2 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_pushCastHEqs___lambda__1___closed__2; +x_3 = l_Lean_Meta_Grind_internalize___lambda__2___closed__9; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__11() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unexpected metadata found during internalization", 48, 48); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_internalize___lambda__2___closed__11; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__13() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\n`grind` uses a pre-processing step that eliminates metadata", 60, 60); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_internalize___lambda__2___closed__13; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__15() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("unexpected kernel projection term during internalization", 56, 56); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_internalize___lambda__2___closed__15; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__17() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\n`grind` uses a pre-processing step that folds them as projection applications, the pre-processor should have failed to fold this term", 134, 134); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__18() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_internalize___lambda__2___closed__17; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Lean_Meta_Grind_internalize___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { @@ -11359,7 +13787,7 @@ x_19 = l_Lean_Meta_Grind_internalize___lambda__2___closed__8; x_20 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_20, 0, x_18); lean_ctor_set(x_20, 1, x_19); -x_21 = l_Lean_Meta_Grind_reportIssue(x_20, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_21 = l_Lean_Meta_Grind_reportIssue(x_20, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); x_22 = lean_ctor_get(x_21, 1); lean_inc(x_22); lean_dec(x_21); @@ -11424,46 +13852,59 @@ x_30 = lean_unbox(x_29); lean_dec(x_29); if (x_30 == 0) { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; x_31 = lean_ctor_get(x_28, 1); lean_inc(x_31); lean_dec(x_28); -x_32 = lean_unsigned_to_nat(0u); -x_33 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_1, x_32); -x_34 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1; -lean_inc(x_33); -x_35 = lean_mk_array(x_33, x_34); -x_36 = lean_unsigned_to_nat(1u); -x_37 = lean_nat_sub(x_33, x_36); -lean_dec(x_33); +x_32 = l_Lean_Meta_Grind_internalize___lambda__2___closed__10; +x_33 = lean_unsigned_to_nat(1u); +x_34 = l_Lean_Expr_isAppOfArity(x_1, x_32, x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_35 = lean_unsigned_to_nat(0u); +x_36 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_1, x_35); +x_37 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1; +lean_inc(x_36); +x_38 = lean_mk_array(x_36, x_37); +x_39 = lean_nat_sub(x_36, x_33); +lean_dec(x_36); lean_inc(x_1); -x_38 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2(x_1, x_2, x_3, x_1, x_35, x_37, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_31); -return x_38; +x_40 = l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2(x_1, x_2, x_3, x_1, x_38, x_39, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_31); +return x_40; } else { -lean_object* x_39; lean_object* x_40; -x_39 = lean_ctor_get(x_28, 1); -lean_inc(x_39); +lean_object* x_41; +lean_dec(x_3); +x_41 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_31); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; +x_42 = lean_ctor_get(x_28, 1); +lean_inc(x_42); lean_dec(x_28); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_1); -x_40 = l_Lean_Meta_Grind_mkENode(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_39); -if (lean_obj_tag(x_40) == 0) +x_43 = l_Lean_Meta_Grind_mkENode(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_42); +if (lean_obj_tag(x_43) == 0) { -lean_object* x_41; lean_object* x_42; -x_41 = lean_ctor_get(x_40, 1); -lean_inc(x_41); -lean_dec(x_40); -x_42 = l_Lean_Meta_Grind_Arith_Offset_internalize(x_1, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_41); -return x_42; +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_43, 1); +lean_inc(x_44); +lean_dec(x_43); +x_45 = l_Lean_Meta_Grind_Arith_Offset_internalize(x_1, x_3, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_44); +return x_45; } else { -uint8_t x_43; +uint8_t x_46; lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11474,30 +13915,30 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_1); -x_43 = !lean_is_exclusive(x_40); -if (x_43 == 0) +x_46 = !lean_is_exclusive(x_43); +if (x_46 == 0) { -return x_40; +return x_43; } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; -x_44 = lean_ctor_get(x_40, 0); -x_45 = lean_ctor_get(x_40, 1); -lean_inc(x_45); -lean_inc(x_44); -lean_dec(x_40); -x_46 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set(x_46, 1, x_45); -return x_46; +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_43, 0); +x_48 = lean_ctor_get(x_43, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_43); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +return x_49; } } } } else { -uint8_t x_47; +uint8_t x_50; lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11509,232 +13950,205 @@ lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_47 = !lean_is_exclusive(x_28); -if (x_47 == 0) +x_50 = !lean_is_exclusive(x_28); +if (x_50 == 0) { return x_28; } else { -lean_object* x_48; lean_object* x_49; lean_object* x_50; -x_48 = lean_ctor_get(x_28, 0); -x_49 = lean_ctor_get(x_28, 1); -lean_inc(x_49); -lean_inc(x_48); +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_28, 0); +x_52 = lean_ctor_get(x_28, 1); +lean_inc(x_52); +lean_inc(x_51); lean_dec(x_28); -x_50 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_50, 0, x_48); -lean_ctor_set(x_50, 1, x_49); -return x_50; +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; } } } case 7: { -lean_object* x_51; lean_object* x_52; uint8_t x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; lean_object* x_58; lean_object* x_82; +lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; uint8_t x_60; lean_object* x_61; lean_object* x_85; lean_dec(x_3); -x_51 = lean_ctor_get(x_1, 1); -lean_inc(x_51); -x_52 = lean_ctor_get(x_1, 2); -lean_inc(x_52); -x_53 = 0; -lean_inc(x_2); -lean_inc(x_1); -x_54 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_53, x_53, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -x_55 = lean_ctor_get(x_54, 1); +x_54 = lean_ctor_get(x_1, 1); +lean_inc(x_54); +x_55 = lean_ctor_get(x_1, 2); lean_inc(x_55); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - x_56 = x_54; -} else { - lean_dec_ref(x_54); - x_56 = lean_box(0); -} -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_51); -x_82 = l_Lean_Meta_isProp(x_51, x_9, x_10, x_11, x_12, x_55); -if (lean_obj_tag(x_82) == 0) -{ -lean_object* x_83; uint8_t x_84; -x_83 = lean_ctor_get(x_82, 0); -lean_inc(x_83); -x_84 = lean_unbox(x_83); -if (x_84 == 0) -{ -lean_object* x_85; uint8_t x_86; -x_85 = lean_ctor_get(x_82, 1); -lean_inc(x_85); -lean_dec(x_82); -x_86 = lean_unbox(x_83); -lean_dec(x_83); -x_57 = x_86; -x_58 = x_85; -goto block_81; -} -else -{ -lean_object* x_87; lean_object* x_88; -lean_dec(x_83); -x_87 = lean_ctor_get(x_82, 1); -lean_inc(x_87); -lean_dec(x_82); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_1); -x_88 = l_Lean_Meta_isProp(x_1, x_9, x_10, x_11, x_12, x_87); -if (lean_obj_tag(x_88) == 0) -{ -lean_object* x_89; lean_object* x_90; uint8_t x_91; -x_89 = lean_ctor_get(x_88, 0); -lean_inc(x_89); -x_90 = lean_ctor_get(x_88, 1); -lean_inc(x_90); -lean_dec(x_88); -x_91 = lean_unbox(x_89); -lean_dec(x_89); -x_57 = x_91; -x_58 = x_90; -goto block_81; -} -else -{ -uint8_t x_92; -lean_dec(x_56); -lean_dec(x_52); -lean_dec(x_51); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_92 = !lean_is_exclusive(x_88); -if (x_92 == 0) -{ -return x_88; -} -else -{ -lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_93 = lean_ctor_get(x_88, 0); -x_94 = lean_ctor_get(x_88, 1); -lean_inc(x_94); -lean_inc(x_93); -lean_dec(x_88); -x_95 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_94); -return x_95; -} -} -} -} -else -{ -uint8_t x_96; -lean_dec(x_56); -lean_dec(x_52); -lean_dec(x_51); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_96 = !lean_is_exclusive(x_82); -if (x_96 == 0) -{ -return x_82; -} -else -{ -lean_object* x_97; lean_object* x_98; lean_object* x_99; -x_97 = lean_ctor_get(x_82, 0); -x_98 = lean_ctor_get(x_82, 1); -lean_inc(x_98); -lean_inc(x_97); -lean_dec(x_82); -x_99 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_99, 0, x_97); -lean_ctor_set(x_99, 1, x_98); -return x_99; -} -} -block_81: -{ -if (x_57 == 0) -{ -lean_object* x_59; lean_object* x_60; -lean_dec(x_52); -lean_dec(x_51); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_59 = lean_box(0); -if (lean_is_scalar(x_56)) { - x_60 = lean_alloc_ctor(0, 2, 0); -} else { - x_60 = x_56; -} -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_58); -return x_60; -} -else -{ -lean_object* x_61; lean_object* x_62; -lean_dec(x_56); -lean_inc(x_1); -x_61 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_61, 0, x_1); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_61); +x_56 = 0; lean_inc(x_2); -lean_inc(x_51); -x_62 = l_Lean_Meta_Grind_internalize(x_51, x_2, x_61, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_58); -if (lean_obj_tag(x_62) == 0) -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_63 = lean_ctor_get(x_62, 1); -lean_inc(x_63); -lean_dec(x_62); lean_inc(x_1); -x_64 = l_Lean_Meta_Grind_registerParent(x_1, x_51, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_63); -x_65 = lean_ctor_get(x_64, 1); -lean_inc(x_65); -lean_dec(x_64); -x_66 = l_Lean_Expr_hasLooseBVars(x_52); -if (x_66 == 0) +x_57 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_56, x_56, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_58 = lean_ctor_get(x_57, 1); +lean_inc(x_58); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + lean_ctor_release(x_57, 1); + x_59 = x_57; +} else { + lean_dec_ref(x_57); + x_59 = lean_box(0); +} +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_54); +x_85 = l_Lean_Meta_isProp(x_54, x_9, x_10, x_11, x_12, x_58); +if (lean_obj_tag(x_85) == 0) { -lean_object* x_67; +lean_object* x_86; uint8_t x_87; +x_86 = lean_ctor_get(x_85, 0); +lean_inc(x_86); +x_87 = lean_unbox(x_86); +if (x_87 == 0) +{ +lean_object* x_88; uint8_t x_89; +x_88 = lean_ctor_get(x_85, 1); +lean_inc(x_88); +lean_dec(x_85); +x_89 = lean_unbox(x_86); +lean_dec(x_86); +x_60 = x_89; +x_61 = x_88; +goto block_84; +} +else +{ +lean_object* x_90; lean_object* x_91; +lean_dec(x_86); +x_90 = lean_ctor_get(x_85, 1); +lean_inc(x_90); +lean_dec(x_85); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_1); +x_91 = l_Lean_Meta_isProp(x_1, x_9, x_10, x_11, x_12, x_90); +if (lean_obj_tag(x_91) == 0) +{ +lean_object* x_92; lean_object* x_93; uint8_t x_94; +x_92 = lean_ctor_get(x_91, 0); +lean_inc(x_92); +x_93 = lean_ctor_get(x_91, 1); +lean_inc(x_93); +lean_dec(x_91); +x_94 = lean_unbox(x_92); +lean_dec(x_92); +x_60 = x_94; +x_61 = x_93; +goto block_84; +} +else +{ +uint8_t x_95; +lean_dec(x_59); +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_95 = !lean_is_exclusive(x_91); +if (x_95 == 0) +{ +return x_91; +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_96 = lean_ctor_get(x_91, 0); +x_97 = lean_ctor_get(x_91, 1); +lean_inc(x_97); +lean_inc(x_96); +lean_dec(x_91); +x_98 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_98, 0, x_96); +lean_ctor_set(x_98, 1, x_97); +return x_98; +} +} +} +} +else +{ +uint8_t x_99; +lean_dec(x_59); +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_99 = !lean_is_exclusive(x_85); +if (x_99 == 0) +{ +return x_85; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_100 = lean_ctor_get(x_85, 0); +x_101 = lean_ctor_get(x_85, 1); +lean_inc(x_101); +lean_inc(x_100); +lean_dec(x_85); +x_102 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_102, 0, x_100); +lean_ctor_set(x_102, 1, x_101); +return x_102; +} +} +block_84: +{ +if (x_60 == 0) +{ +lean_object* x_62; lean_object* x_63; +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_2); +lean_dec(x_1); +x_62 = lean_box(0); +if (lean_is_scalar(x_59)) { + x_63 = lean_alloc_ctor(0, 2, 0); +} else { + x_63 = x_59; +} +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_61); +return x_63; +} +else +{ +lean_object* x_64; lean_object* x_65; +lean_dec(x_59); +lean_inc(x_1); +x_64 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_64, 0, x_1); lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); @@ -11743,71 +14157,98 @@ lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_52); -x_67 = l_Lean_Meta_Grind_internalize(x_52, x_2, x_61, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_65); -if (lean_obj_tag(x_67) == 0) +lean_inc(x_64); +lean_inc(x_2); +lean_inc(x_54); +x_65 = l_Lean_Meta_Grind_internalize(x_54, x_2, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_61); +if (lean_obj_tag(x_65) == 0) { -lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_object* x_66; lean_object* x_67; lean_object* x_68; uint8_t x_69; +x_66 = lean_ctor_get(x_65, 1); +lean_inc(x_66); +lean_dec(x_65); +lean_inc(x_1); +x_67 = l_Lean_Meta_Grind_registerParent(x_1, x_54, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_66); x_68 = lean_ctor_get(x_67, 1); lean_inc(x_68); lean_dec(x_67); +x_69 = l_Lean_Expr_hasLooseBVars(x_55); +if (x_69 == 0) +{ +lean_object* x_70; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_55); +x_70 = l_Lean_Meta_Grind_internalize(x_55, x_2, x_64, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_68); +if (lean_obj_tag(x_70) == 0) +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_71 = lean_ctor_get(x_70, 1); +lean_inc(x_71); +lean_dec(x_70); lean_inc(x_1); -x_69 = l_Lean_Meta_Grind_registerParent(x_1, x_52, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_68); -x_70 = lean_ctor_get(x_69, 1); -lean_inc(x_70); -lean_dec(x_69); -x_71 = l_Lean_Meta_Grind_propagateUp(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_70); -return x_71; -} -else -{ -uint8_t x_72; -lean_dec(x_52); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_72 = !lean_is_exclusive(x_67); -if (x_72 == 0) -{ -return x_67; -} -else -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; -x_73 = lean_ctor_get(x_67, 0); -x_74 = lean_ctor_get(x_67, 1); -lean_inc(x_74); +x_72 = l_Lean_Meta_Grind_registerParent(x_1, x_55, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_71); +x_73 = lean_ctor_get(x_72, 1); lean_inc(x_73); -lean_dec(x_67); -x_75 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_75, 0, x_73); -lean_ctor_set(x_75, 1, x_74); -return x_75; +lean_dec(x_72); +x_74 = l_Lean_Meta_Grind_propagateUp(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_73); +return x_74; +} +else +{ +uint8_t x_75; +lean_dec(x_55); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_75 = !lean_is_exclusive(x_70); +if (x_75 == 0) +{ +return x_70; +} +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_70, 0); +x_77 = lean_ctor_get(x_70, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_70); +x_78 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_78, 0, x_76); +lean_ctor_set(x_78, 1, x_77); +return x_78; } } } else { -lean_object* x_76; -lean_dec(x_61); -lean_dec(x_52); +lean_object* x_79; +lean_dec(x_64); +lean_dec(x_55); lean_dec(x_2); -x_76 = l_Lean_Meta_Grind_propagateUp(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_65); -return x_76; +x_79 = l_Lean_Meta_Grind_propagateUp(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_68); +return x_79; } } else { -uint8_t x_77; -lean_dec(x_61); -lean_dec(x_52); -lean_dec(x_51); +uint8_t x_80; +lean_dec(x_64); +lean_dec(x_55); +lean_dec(x_54); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11818,23 +14259,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_77 = !lean_is_exclusive(x_62); -if (x_77 == 0) +x_80 = !lean_is_exclusive(x_65); +if (x_80 == 0) { -return x_62; +return x_65; } else { -lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_78 = lean_ctor_get(x_62, 0); -x_79 = lean_ctor_get(x_62, 1); -lean_inc(x_79); -lean_inc(x_78); -lean_dec(x_62); -x_80 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_80, 0, x_78); -lean_ctor_set(x_80, 1, x_79); -return x_80; +lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_81 = lean_ctor_get(x_65, 0); +x_82 = lean_ctor_get(x_65, 1); +lean_inc(x_82); +lean_inc(x_81); +lean_dec(x_65); +x_83 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_83, 0, x_81); +lean_ctor_set(x_83, 1, x_82); +return x_83; } } } @@ -11842,35 +14283,35 @@ return x_80; } case 9: { -lean_object* x_100; +lean_object* x_103; lean_dec(x_3); -x_100 = l_Lean_Meta_Grind_mkENode(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_103 = l_Lean_Meta_Grind_mkENode(x_1, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_100; +return x_103; } case 10: { -lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; uint8_t x_108; lean_object* x_109; +lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; uint8_t x_111; lean_object* x_112; lean_dec(x_3); lean_inc(x_1); -x_101 = l_Lean_indentExpr(x_1); -x_102 = l_Lean_Meta_Grind_internalize___lambda__2___closed__6; -x_103 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_103, 0, x_102); -lean_ctor_set(x_103, 1, x_101); -x_104 = l_Lean_Meta_Grind_internalize___lambda__2___closed__8; -x_105 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_105, 0, x_103); -lean_ctor_set(x_105, 1, x_104); -x_106 = l_Lean_Meta_Grind_reportIssue(x_105, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -x_107 = lean_ctor_get(x_106, 1); -lean_inc(x_107); -lean_dec(x_106); -x_108 = 0; -x_109 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_108, x_108, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_107); +x_104 = l_Lean_indentExpr(x_1); +x_105 = l_Lean_Meta_Grind_internalize___lambda__2___closed__12; +x_106 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_106, 0, x_105); +lean_ctor_set(x_106, 1, x_104); +x_107 = l_Lean_Meta_Grind_internalize___lambda__2___closed__14; +x_108 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_108, 0, x_106); +lean_ctor_set(x_108, 1, x_107); +x_109 = l_Lean_Meta_Grind_reportIssue(x_108, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_110 = lean_ctor_get(x_109, 1); +lean_inc(x_110); +lean_dec(x_109); +x_111 = 0; +x_112 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_111, x_111, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_110); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11879,28 +14320,28 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_109; +return x_112; } case 11: { -lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; uint8_t x_117; lean_object* x_118; +lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; uint8_t x_120; lean_object* x_121; lean_dec(x_3); lean_inc(x_1); -x_110 = l_Lean_indentExpr(x_1); -x_111 = l_Lean_Meta_Grind_internalize___lambda__2___closed__6; -x_112 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_112, 0, x_111); -lean_ctor_set(x_112, 1, x_110); -x_113 = l_Lean_Meta_Grind_internalize___lambda__2___closed__8; -x_114 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_114, 0, x_112); -lean_ctor_set(x_114, 1, x_113); -x_115 = l_Lean_Meta_Grind_reportIssue(x_114, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); -x_116 = lean_ctor_get(x_115, 1); -lean_inc(x_116); -lean_dec(x_115); -x_117 = 0; -x_118 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_117, x_117, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_116); +x_113 = l_Lean_indentExpr(x_1); +x_114 = l_Lean_Meta_Grind_internalize___lambda__2___closed__16; +x_115 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_115, 0, x_114); +lean_ctor_set(x_115, 1, x_113); +x_116 = l_Lean_Meta_Grind_internalize___lambda__2___closed__18; +x_117 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_117, 0, x_115); +lean_ctor_set(x_117, 1, x_116); +x_118 = l_Lean_Meta_Grind_reportIssue(x_117, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_119 = lean_ctor_get(x_118, 1); +lean_inc(x_119); +lean_dec(x_118); +x_120 = 0; +x_121 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_120, x_120, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_119); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11909,14 +14350,14 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_118; +return x_121; } default: { -uint8_t x_119; lean_object* x_120; +uint8_t x_122; lean_object* x_123; lean_dec(x_3); -x_119 = 0; -x_120 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_119, x_119, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +x_122 = 0; +x_123 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_122, x_122, x_2, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); @@ -11925,7 +14366,7 @@ lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_120; +return x_123; } } } @@ -12375,9 +14816,9 @@ x_15 = !lean_is_exclusive(x_13); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_ctor_get(x_13, 12); +x_16 = lean_ctor_get(x_13, 13); x_17 = l_Lean_Meta_Grind_EMatchTheorems_insert(x_16, x_1); -lean_ctor_set(x_13, 12, x_17); +lean_ctor_set(x_13, 13, x_17); x_18 = lean_st_ref_set(x_3, x_13, x_14); x_19 = !lean_is_exclusive(x_18); if (x_19 == 0) @@ -12457,7 +14898,7 @@ lean_inc(x_27); lean_inc(x_26); lean_inc(x_25); lean_dec(x_13); -x_51 = l_Lean_Meta_Grind_EMatchTheorems_insert(x_38, x_1); +x_51 = l_Lean_Meta_Grind_EMatchTheorems_insert(x_39, x_1); x_52 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_52, 0, x_25); lean_ctor_set(x_52, 1, x_26); @@ -12471,8 +14912,8 @@ lean_ctor_set(x_52, 8, x_34); lean_ctor_set(x_52, 9, x_35); lean_ctor_set(x_52, 10, x_36); lean_ctor_set(x_52, 11, x_37); -lean_ctor_set(x_52, 12, x_51); -lean_ctor_set(x_52, 13, x_39); +lean_ctor_set(x_52, 12, x_38); +lean_ctor_set(x_52, 13, x_51); lean_ctor_set(x_52, 14, x_40); lean_ctor_set(x_52, 15, x_41); lean_ctor_set(x_52, 16, x_42); @@ -12596,7 +15037,7 @@ lean_inc(x_27); x_28 = lean_ctor_get(x_26, 1); lean_inc(x_28); lean_dec(x_26); -x_29 = lean_ctor_get(x_27, 12); +x_29 = lean_ctor_get(x_27, 13); lean_inc(x_29); lean_dec(x_27); x_30 = !lean_is_exclusive(x_19); @@ -13284,7 +15725,7 @@ lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; x_12 = lean_st_ref_get(x_3, x_11); x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); -x_14 = lean_ctor_get(x_13, 12); +x_14 = lean_ctor_get(x_13, 13); lean_inc(x_14); lean_dec(x_13); x_15 = !lean_is_exclusive(x_12); @@ -13342,9 +15783,9 @@ x_29 = !lean_is_exclusive(x_27); if (x_29 == 0) { lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_30 = lean_ctor_get(x_27, 12); +x_30 = lean_ctor_get(x_27, 13); lean_dec(x_30); -lean_ctor_set(x_27, 12, x_14); +lean_ctor_set(x_27, 13, x_14); x_31 = lean_st_ref_set(x_3, x_27, x_28); x_32 = lean_ctor_get(x_31, 1); lean_inc(x_32); @@ -13426,7 +15867,7 @@ x_57 = lean_ctor_get(x_27, 8); x_58 = lean_ctor_get(x_27, 9); x_59 = lean_ctor_get(x_27, 10); x_60 = lean_ctor_get(x_27, 11); -x_61 = lean_ctor_get(x_27, 13); +x_61 = lean_ctor_get(x_27, 12); x_62 = lean_ctor_get(x_27, 14); x_63 = lean_ctor_get(x_27, 15); x_64 = lean_ctor_get(x_27, 16); @@ -13476,8 +15917,8 @@ lean_ctor_set(x_73, 8, x_57); lean_ctor_set(x_73, 9, x_58); lean_ctor_set(x_73, 10, x_59); lean_ctor_set(x_73, 11, x_60); -lean_ctor_set(x_73, 12, x_14); -lean_ctor_set(x_73, 13, x_61); +lean_ctor_set(x_73, 12, x_61); +lean_ctor_set(x_73, 13, x_14); lean_ctor_set(x_73, 14, x_62); lean_ctor_set(x_73, 15, x_63); lean_ctor_set(x_73, 16, x_64); @@ -13631,7 +16072,7 @@ x_112 = lean_ctor_get(x_99, 10); lean_inc(x_112); x_113 = lean_ctor_get(x_99, 11); lean_inc(x_113); -x_114 = lean_ctor_get(x_99, 13); +x_114 = lean_ctor_get(x_99, 12); lean_inc(x_114); x_115 = lean_ctor_get(x_99, 14); lean_inc(x_115); @@ -13703,8 +16144,8 @@ lean_ctor_set(x_127, 8, x_110); lean_ctor_set(x_127, 9, x_111); lean_ctor_set(x_127, 10, x_112); lean_ctor_set(x_127, 11, x_113); -lean_ctor_set(x_127, 12, x_97); -lean_ctor_set(x_127, 13, x_114); +lean_ctor_set(x_127, 12, x_114); +lean_ctor_set(x_127, 13, x_97); lean_ctor_set(x_127, 14, x_115); lean_ctor_set(x_127, 15, x_116); lean_ctor_set(x_127, 16, x_117); @@ -13875,7 +16316,7 @@ x_169 = lean_ctor_get(x_156, 10); lean_inc(x_169); x_170 = lean_ctor_get(x_156, 11); lean_inc(x_170); -x_171 = lean_ctor_get(x_156, 13); +x_171 = lean_ctor_get(x_156, 12); lean_inc(x_171); x_172 = lean_ctor_get(x_156, 14); lean_inc(x_172); @@ -13947,8 +16388,8 @@ lean_ctor_set(x_184, 8, x_167); lean_ctor_set(x_184, 9, x_168); lean_ctor_set(x_184, 10, x_169); lean_ctor_set(x_184, 11, x_170); -lean_ctor_set(x_184, 12, x_154); -lean_ctor_set(x_184, 13, x_171); +lean_ctor_set(x_184, 12, x_171); +lean_ctor_set(x_184, 13, x_154); lean_ctor_set(x_184, 14, x_172); lean_ctor_set(x_184, 15, x_173); lean_ctor_set(x_184, 16, x_174); @@ -14211,9 +16652,9 @@ x_15 = !lean_is_exclusive(x_13); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_16 = lean_ctor_get(x_13, 11); +x_16 = lean_ctor_get(x_13, 12); x_17 = l_Lean_PersistentArray_push___rarg(x_16, x_1); -lean_ctor_set(x_13, 11, x_17); +lean_ctor_set(x_13, 12, x_17); x_18 = lean_st_ref_set(x_3, x_13, x_14); x_19 = !lean_is_exclusive(x_18); if (x_19 == 0) @@ -14293,7 +16734,7 @@ lean_inc(x_27); lean_inc(x_26); lean_inc(x_25); lean_dec(x_13); -x_51 = l_Lean_PersistentArray_push___rarg(x_37, x_1); +x_51 = l_Lean_PersistentArray_push___rarg(x_38, x_1); x_52 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_52, 0, x_25); lean_ctor_set(x_52, 1, x_26); @@ -14306,8 +16747,8 @@ lean_ctor_set(x_52, 7, x_33); lean_ctor_set(x_52, 8, x_34); lean_ctor_set(x_52, 9, x_35); lean_ctor_set(x_52, 10, x_36); -lean_ctor_set(x_52, 11, x_51); -lean_ctor_set(x_52, 12, x_38); +lean_ctor_set(x_52, 11, x_37); +lean_ctor_set(x_52, 12, x_51); lean_ctor_set(x_52, 13, x_39); lean_ctor_set(x_52, 14, x_40); lean_ctor_set(x_52, 15, x_41); @@ -15316,11 +17757,11 @@ x_33 = lean_ctor_get(x_14, 16); lean_inc(x_33); x_34 = lean_ctor_get(x_14, 17); lean_inc(x_34); -x_35 = lean_box(0); +x_35 = lean_ctor_get(x_14, 18); +lean_inc(x_35); +x_36 = lean_box(0); lean_inc(x_1); -x_36 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_34, x_1, x_35); -x_37 = lean_ctor_get(x_14, 18); -lean_inc(x_37); +x_37 = l_Lean_PersistentHashMap_insert___at_Lean_NameSSet_insert___spec__2(x_35, x_1, x_36); x_38 = lean_ctor_get(x_14, 19); lean_inc(x_38); x_39 = lean_ctor_get(x_14, 20); @@ -15352,7 +17793,7 @@ lean_ctor_set(x_44, 13, x_30); lean_ctor_set(x_44, 14, x_31); lean_ctor_set(x_44, 15, x_32); lean_ctor_set(x_44, 16, x_33); -lean_ctor_set(x_44, 17, x_36); +lean_ctor_set(x_44, 17, x_34); lean_ctor_set(x_44, 18, x_37); lean_ctor_set(x_44, 19, x_38); lean_ctor_set(x_44, 20, x_39); @@ -15384,7 +17825,7 @@ lean_dec(x_48); x_51 = lean_box(0); x_52 = lean_array_size(x_50); x_53 = 0; -x_54 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__2(x_2, x_50, x_51, x_50, x_52, x_53, x_35, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_49); +x_54 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_addMatchEqns___spec__2(x_2, x_50, x_51, x_50, x_52, x_53, x_36, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_49); lean_dec(x_50); if (lean_obj_tag(x_54) == 0) { @@ -15395,7 +17836,7 @@ if (x_55 == 0) lean_object* x_56; x_56 = lean_ctor_get(x_54, 0); lean_dec(x_56); -lean_ctor_set(x_54, 0, x_35); +lean_ctor_set(x_54, 0, x_36); return x_54; } else @@ -15405,7 +17846,7 @@ x_57 = lean_ctor_get(x_54, 1); lean_inc(x_57); lean_dec(x_54); x_58 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_58, 0, x_35); +lean_ctor_set(x_58, 0, x_36); lean_ctor_set(x_58, 1, x_57); return x_58; } @@ -15477,7 +17918,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_13, 1); -x_17 = lean_ctor_get(x_15, 17); +x_17 = lean_ctor_get(x_15, 18); lean_inc(x_17); lean_dec(x_15); x_18 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__2(x_17, x_1); @@ -15515,7 +17956,7 @@ x_23 = lean_ctor_get(x_13, 1); lean_inc(x_23); lean_inc(x_22); lean_dec(x_13); -x_24 = lean_ctor_get(x_22, 17); +x_24 = lean_ctor_get(x_22, 18); lean_inc(x_24); lean_dec(x_22); x_25 = l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__2(x_24, x_1); @@ -15688,6 +18129,3446 @@ return x_23; } } } +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, size_t x_4, size_t x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +uint8_t x_16; +x_16 = lean_usize_dec_eq(x_4, x_5); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_dec(x_6); +x_17 = lean_array_uget(x_3, x_4); +x_18 = lean_box(0); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_2); +lean_inc(x_17); +x_19 = l_Lean_Meta_Grind_internalize(x_17, x_2, x_18, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; size_t x_24; size_t x_25; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +lean_dec(x_19); +lean_inc(x_1); +x_21 = l_Lean_Meta_Grind_registerParent(x_1, x_17, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_20); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = 1; +x_25 = lean_usize_add(x_4, x_24); +x_4 = x_25; +x_6 = x_22; +x_15 = x_23; +goto _start; +} +else +{ +uint8_t x_27; +lean_dec(x_17); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_19); +if (x_27 == 0) +{ +return x_19; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_19, 0); +x_29 = lean_ctor_get(x_19, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_19); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +else +{ +lean_object* x_31; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_2); +lean_dec(x_1); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_6); +lean_ctor_set(x_31, 1, x_15); +return x_31; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_1); +x_13 = l_Lean_Meta_mkEqRefl(x_1, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = 0; +x_17 = l_Lean_Meta_Grind_pushEqCore(x_1, x_2, x_14, x_16, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_15); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +return x_17; +} +else +{ +uint8_t x_18; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_18 = !lean_is_exclusive(x_13); +if (x_18 == 0) +{ +return x_13; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_13, 0); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_13); +x_21 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("matchCond", 9, 9); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("lambda", 6, 6); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__1; +x_2 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__2; +x_3 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1; +x_4 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("(idx := ", 8, 8); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(") ", 2, 2); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; lean_object* x_13; uint8_t x_14; +x_12 = 0; +lean_inc(x_2); +lean_inc(x_1); +x_13 = l_Lean_Meta_Grind_mkENodeCore(x_1, x_12, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 1); +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_17 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_17, 1); +lean_inc(x_19); +lean_dec(x_17); +x_20 = !lean_is_exclusive(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_21 = lean_ctor_get(x_18, 0); +x_22 = lean_ctor_get(x_18, 1); +x_23 = lean_array_get_size(x_21); +x_24 = lean_unsigned_to_nat(0u); +x_25 = lean_nat_dec_lt(x_24, x_23); +if (x_25 == 0) +{ +lean_object* x_26; +lean_dec(x_23); +lean_dec(x_21); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_26 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +if (lean_obj_tag(x_26) == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_26, 1); +lean_inc(x_27); +lean_dec(x_26); +x_28 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_22); +x_29 = l_Lean_Meta_Grind_internalize(x_22, x_2, x_28, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_27); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_30 = lean_ctor_get(x_29, 1); +lean_inc(x_30); +lean_dec(x_29); +x_31 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_32 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_31, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_unbox(x_33); +lean_dec(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_free_object(x_18); +lean_free_object(x_13); +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_dec(x_32); +x_36 = lean_box(0); +x_37 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_35); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_37; +} +else +{ +uint8_t x_38; +x_38 = !lean_is_exclusive(x_32); +if (x_38 == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; uint8_t x_43; +x_39 = lean_ctor_get(x_32, 1); +x_40 = lean_ctor_get(x_32, 0); +lean_dec(x_40); +x_41 = l_Lean_Expr_getAppFn(x_22); +x_42 = lean_st_ref_get(x_3, x_39); +x_43 = !lean_is_exclusive(x_42); +if (x_43 == 0) +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_42, 0); +x_45 = lean_ctor_get(x_42, 1); +lean_inc(x_41); +x_46 = l_Lean_Meta_Grind_Goal_getENode(x_44, x_41, x_9, x_10, x_45); +if (lean_obj_tag(x_46) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = lean_ctor_get(x_47, 7); +lean_inc(x_49); +lean_dec(x_47); +x_50 = l___private_Init_Data_Repr_0__Nat_reprFast(x_49); +x_51 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_51, 0, x_50); +x_52 = l_Lean_MessageData_ofFormat(x_51); +x_53 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +lean_ctor_set_tag(x_42, 7); +lean_ctor_set(x_42, 1, x_52); +lean_ctor_set(x_42, 0, x_53); +x_54 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_32, 7); +lean_ctor_set(x_32, 1, x_54); +lean_ctor_set(x_32, 0, x_42); +x_55 = l_Lean_MessageData_ofExpr(x_41); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_55); +lean_ctor_set(x_18, 0, x_32); +x_56 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_56); +lean_ctor_set(x_13, 0, x_18); +x_57 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_31, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_48); +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_ctor_get(x_57, 1); +lean_inc(x_59); +lean_dec(x_57); +x_60 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_58, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_59); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_58); +return x_60; +} +else +{ +uint8_t x_61; +lean_free_object(x_42); +lean_dec(x_41); +lean_free_object(x_32); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_61 = !lean_is_exclusive(x_46); +if (x_61 == 0) +{ +return x_46; +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = lean_ctor_get(x_46, 0); +x_63 = lean_ctor_get(x_46, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_46); +x_64 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +return x_64; +} +} +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_42, 0); +x_66 = lean_ctor_get(x_42, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_42); +lean_inc(x_41); +x_67 = l_Lean_Meta_Grind_Goal_getENode(x_65, x_41, x_9, x_10, x_66); +if (lean_obj_tag(x_67) == 0) +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_68 = lean_ctor_get(x_67, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_67, 1); +lean_inc(x_69); +lean_dec(x_67); +x_70 = lean_ctor_get(x_68, 7); +lean_inc(x_70); +lean_dec(x_68); +x_71 = l___private_Init_Data_Repr_0__Nat_reprFast(x_70); +x_72 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_72, 0, x_71); +x_73 = l_Lean_MessageData_ofFormat(x_72); +x_74 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +x_75 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_75, 0, x_74); +lean_ctor_set(x_75, 1, x_73); +x_76 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_32, 7); +lean_ctor_set(x_32, 1, x_76); +lean_ctor_set(x_32, 0, x_75); +x_77 = l_Lean_MessageData_ofExpr(x_41); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_77); +lean_ctor_set(x_18, 0, x_32); +x_78 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_78); +lean_ctor_set(x_13, 0, x_18); +x_79 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_31, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_69); +x_80 = lean_ctor_get(x_79, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_79, 1); +lean_inc(x_81); +lean_dec(x_79); +x_82 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_80, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_81); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_80); +return x_82; +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +lean_dec(x_41); +lean_free_object(x_32); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_83 = lean_ctor_get(x_67, 0); +lean_inc(x_83); +x_84 = lean_ctor_get(x_67, 1); +lean_inc(x_84); +if (lean_is_exclusive(x_67)) { + lean_ctor_release(x_67, 0); + lean_ctor_release(x_67, 1); + x_85 = x_67; +} else { + lean_dec_ref(x_67); + x_85 = lean_box(0); +} +if (lean_is_scalar(x_85)) { + x_86 = lean_alloc_ctor(1, 2, 0); +} else { + x_86 = x_85; +} +lean_ctor_set(x_86, 0, x_83); +lean_ctor_set(x_86, 1, x_84); +return x_86; +} +} +} +else +{ +lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_87 = lean_ctor_get(x_32, 1); +lean_inc(x_87); +lean_dec(x_32); +x_88 = l_Lean_Expr_getAppFn(x_22); +x_89 = lean_st_ref_get(x_3, x_87); +x_90 = lean_ctor_get(x_89, 0); +lean_inc(x_90); +x_91 = lean_ctor_get(x_89, 1); +lean_inc(x_91); +if (lean_is_exclusive(x_89)) { + lean_ctor_release(x_89, 0); + lean_ctor_release(x_89, 1); + x_92 = x_89; +} else { + lean_dec_ref(x_89); + x_92 = lean_box(0); +} +lean_inc(x_88); +x_93 = l_Lean_Meta_Grind_Goal_getENode(x_90, x_88, x_9, x_10, x_91); +if (lean_obj_tag(x_93) == 0) +{ +lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); +lean_dec(x_93); +x_96 = lean_ctor_get(x_94, 7); +lean_inc(x_96); +lean_dec(x_94); +x_97 = l___private_Init_Data_Repr_0__Nat_reprFast(x_96); +x_98 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_98, 0, x_97); +x_99 = l_Lean_MessageData_ofFormat(x_98); +x_100 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_92)) { + x_101 = lean_alloc_ctor(7, 2, 0); +} else { + x_101 = x_92; + lean_ctor_set_tag(x_101, 7); +} +lean_ctor_set(x_101, 0, x_100); +lean_ctor_set(x_101, 1, x_99); +x_102 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +x_103 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_103, 0, x_101); +lean_ctor_set(x_103, 1, x_102); +x_104 = l_Lean_MessageData_ofExpr(x_88); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_104); +lean_ctor_set(x_18, 0, x_103); +x_105 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_105); +lean_ctor_set(x_13, 0, x_18); +x_106 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_31, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_95); +x_107 = lean_ctor_get(x_106, 0); +lean_inc(x_107); +x_108 = lean_ctor_get(x_106, 1); +lean_inc(x_108); +lean_dec(x_106); +x_109 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_107, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_108); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_107); +return x_109; +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_92); +lean_dec(x_88); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_110 = lean_ctor_get(x_93, 0); +lean_inc(x_110); +x_111 = lean_ctor_get(x_93, 1); +lean_inc(x_111); +if (lean_is_exclusive(x_93)) { + lean_ctor_release(x_93, 0); + lean_ctor_release(x_93, 1); + x_112 = x_93; +} else { + lean_dec_ref(x_93); + x_112 = lean_box(0); +} +if (lean_is_scalar(x_112)) { + x_113 = lean_alloc_ctor(1, 2, 0); +} else { + x_113 = x_112; +} +lean_ctor_set(x_113, 0, x_110); +lean_ctor_set(x_113, 1, x_111); +return x_113; +} +} +} +} +else +{ +uint8_t x_114; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_114 = !lean_is_exclusive(x_29); +if (x_114 == 0) +{ +return x_29; +} +else +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_115 = lean_ctor_get(x_29, 0); +x_116 = lean_ctor_get(x_29, 1); +lean_inc(x_116); +lean_inc(x_115); +lean_dec(x_29); +x_117 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_117, 0, x_115); +lean_ctor_set(x_117, 1, x_116); +return x_117; +} +} +} +else +{ +uint8_t x_118; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_118 = !lean_is_exclusive(x_26); +if (x_118 == 0) +{ +return x_26; +} +else +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; +x_119 = lean_ctor_get(x_26, 0); +x_120 = lean_ctor_get(x_26, 1); +lean_inc(x_120); +lean_inc(x_119); +lean_dec(x_26); +x_121 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_121, 0, x_119); +lean_ctor_set(x_121, 1, x_120); +return x_121; +} +} +} +else +{ +uint8_t x_122; +x_122 = lean_nat_dec_le(x_23, x_23); +if (x_122 == 0) +{ +lean_object* x_123; +lean_dec(x_23); +lean_dec(x_21); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_123 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +if (lean_obj_tag(x_123) == 0) +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_124 = lean_ctor_get(x_123, 1); +lean_inc(x_124); +lean_dec(x_123); +x_125 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_22); +x_126 = l_Lean_Meta_Grind_internalize(x_22, x_2, x_125, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_124); +if (lean_obj_tag(x_126) == 0) +{ +lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; uint8_t x_131; +x_127 = lean_ctor_get(x_126, 1); +lean_inc(x_127); +lean_dec(x_126); +x_128 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_129 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_128, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_127); +x_130 = lean_ctor_get(x_129, 0); +lean_inc(x_130); +x_131 = lean_unbox(x_130); +lean_dec(x_130); +if (x_131 == 0) +{ +lean_object* x_132; lean_object* x_133; lean_object* x_134; +lean_free_object(x_18); +lean_free_object(x_13); +x_132 = lean_ctor_get(x_129, 1); +lean_inc(x_132); +lean_dec(x_129); +x_133 = lean_box(0); +x_134 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_133, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_132); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_134; +} +else +{ +uint8_t x_135; +x_135 = !lean_is_exclusive(x_129); +if (x_135 == 0) +{ +lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; uint8_t x_140; +x_136 = lean_ctor_get(x_129, 1); +x_137 = lean_ctor_get(x_129, 0); +lean_dec(x_137); +x_138 = l_Lean_Expr_getAppFn(x_22); +x_139 = lean_st_ref_get(x_3, x_136); +x_140 = !lean_is_exclusive(x_139); +if (x_140 == 0) +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; +x_141 = lean_ctor_get(x_139, 0); +x_142 = lean_ctor_get(x_139, 1); +lean_inc(x_138); +x_143 = l_Lean_Meta_Grind_Goal_getENode(x_141, x_138, x_9, x_10, x_142); +if (lean_obj_tag(x_143) == 0) +{ +lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; +x_144 = lean_ctor_get(x_143, 0); +lean_inc(x_144); +x_145 = lean_ctor_get(x_143, 1); +lean_inc(x_145); +lean_dec(x_143); +x_146 = lean_ctor_get(x_144, 7); +lean_inc(x_146); +lean_dec(x_144); +x_147 = l___private_Init_Data_Repr_0__Nat_reprFast(x_146); +x_148 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_148, 0, x_147); +x_149 = l_Lean_MessageData_ofFormat(x_148); +x_150 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +lean_ctor_set_tag(x_139, 7); +lean_ctor_set(x_139, 1, x_149); +lean_ctor_set(x_139, 0, x_150); +x_151 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_129, 7); +lean_ctor_set(x_129, 1, x_151); +lean_ctor_set(x_129, 0, x_139); +x_152 = l_Lean_MessageData_ofExpr(x_138); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_152); +lean_ctor_set(x_18, 0, x_129); +x_153 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_153); +lean_ctor_set(x_13, 0, x_18); +x_154 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_128, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_145); +x_155 = lean_ctor_get(x_154, 0); +lean_inc(x_155); +x_156 = lean_ctor_get(x_154, 1); +lean_inc(x_156); +lean_dec(x_154); +x_157 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_155, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_156); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_155); +return x_157; +} +else +{ +uint8_t x_158; +lean_free_object(x_139); +lean_dec(x_138); +lean_free_object(x_129); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_158 = !lean_is_exclusive(x_143); +if (x_158 == 0) +{ +return x_143; +} +else +{ +lean_object* x_159; lean_object* x_160; lean_object* x_161; +x_159 = lean_ctor_get(x_143, 0); +x_160 = lean_ctor_get(x_143, 1); +lean_inc(x_160); +lean_inc(x_159); +lean_dec(x_143); +x_161 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_161, 0, x_159); +lean_ctor_set(x_161, 1, x_160); +return x_161; +} +} +} +else +{ +lean_object* x_162; lean_object* x_163; lean_object* x_164; +x_162 = lean_ctor_get(x_139, 0); +x_163 = lean_ctor_get(x_139, 1); +lean_inc(x_163); +lean_inc(x_162); +lean_dec(x_139); +lean_inc(x_138); +x_164 = l_Lean_Meta_Grind_Goal_getENode(x_162, x_138, x_9, x_10, x_163); +if (lean_obj_tag(x_164) == 0) +{ +lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; +x_165 = lean_ctor_get(x_164, 0); +lean_inc(x_165); +x_166 = lean_ctor_get(x_164, 1); +lean_inc(x_166); +lean_dec(x_164); +x_167 = lean_ctor_get(x_165, 7); +lean_inc(x_167); +lean_dec(x_165); +x_168 = l___private_Init_Data_Repr_0__Nat_reprFast(x_167); +x_169 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_169, 0, x_168); +x_170 = l_Lean_MessageData_ofFormat(x_169); +x_171 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +x_172 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_172, 0, x_171); +lean_ctor_set(x_172, 1, x_170); +x_173 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_129, 7); +lean_ctor_set(x_129, 1, x_173); +lean_ctor_set(x_129, 0, x_172); +x_174 = l_Lean_MessageData_ofExpr(x_138); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_174); +lean_ctor_set(x_18, 0, x_129); +x_175 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_175); +lean_ctor_set(x_13, 0, x_18); +x_176 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_128, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_166); +x_177 = lean_ctor_get(x_176, 0); +lean_inc(x_177); +x_178 = lean_ctor_get(x_176, 1); +lean_inc(x_178); +lean_dec(x_176); +x_179 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_177, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_178); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_177); +return x_179; +} +else +{ +lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; +lean_dec(x_138); +lean_free_object(x_129); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_180 = lean_ctor_get(x_164, 0); +lean_inc(x_180); +x_181 = lean_ctor_get(x_164, 1); +lean_inc(x_181); +if (lean_is_exclusive(x_164)) { + lean_ctor_release(x_164, 0); + lean_ctor_release(x_164, 1); + x_182 = x_164; +} else { + lean_dec_ref(x_164); + x_182 = lean_box(0); +} +if (lean_is_scalar(x_182)) { + x_183 = lean_alloc_ctor(1, 2, 0); +} else { + x_183 = x_182; +} +lean_ctor_set(x_183, 0, x_180); +lean_ctor_set(x_183, 1, x_181); +return x_183; +} +} +} +else +{ +lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; +x_184 = lean_ctor_get(x_129, 1); +lean_inc(x_184); +lean_dec(x_129); +x_185 = l_Lean_Expr_getAppFn(x_22); +x_186 = lean_st_ref_get(x_3, x_184); +x_187 = lean_ctor_get(x_186, 0); +lean_inc(x_187); +x_188 = lean_ctor_get(x_186, 1); +lean_inc(x_188); +if (lean_is_exclusive(x_186)) { + lean_ctor_release(x_186, 0); + lean_ctor_release(x_186, 1); + x_189 = x_186; +} else { + lean_dec_ref(x_186); + x_189 = lean_box(0); +} +lean_inc(x_185); +x_190 = l_Lean_Meta_Grind_Goal_getENode(x_187, x_185, x_9, x_10, x_188); +if (lean_obj_tag(x_190) == 0) +{ +lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; +x_191 = lean_ctor_get(x_190, 0); +lean_inc(x_191); +x_192 = lean_ctor_get(x_190, 1); +lean_inc(x_192); +lean_dec(x_190); +x_193 = lean_ctor_get(x_191, 7); +lean_inc(x_193); +lean_dec(x_191); +x_194 = l___private_Init_Data_Repr_0__Nat_reprFast(x_193); +x_195 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_195, 0, x_194); +x_196 = l_Lean_MessageData_ofFormat(x_195); +x_197 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_189)) { + x_198 = lean_alloc_ctor(7, 2, 0); +} else { + x_198 = x_189; + lean_ctor_set_tag(x_198, 7); +} +lean_ctor_set(x_198, 0, x_197); +lean_ctor_set(x_198, 1, x_196); +x_199 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +x_200 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_200, 0, x_198); +lean_ctor_set(x_200, 1, x_199); +x_201 = l_Lean_MessageData_ofExpr(x_185); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_201); +lean_ctor_set(x_18, 0, x_200); +x_202 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_202); +lean_ctor_set(x_13, 0, x_18); +x_203 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_128, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_192); +x_204 = lean_ctor_get(x_203, 0); +lean_inc(x_204); +x_205 = lean_ctor_get(x_203, 1); +lean_inc(x_205); +lean_dec(x_203); +x_206 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_204, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_205); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_204); +return x_206; +} +else +{ +lean_object* x_207; lean_object* x_208; lean_object* x_209; lean_object* x_210; +lean_dec(x_189); +lean_dec(x_185); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_207 = lean_ctor_get(x_190, 0); +lean_inc(x_207); +x_208 = lean_ctor_get(x_190, 1); +lean_inc(x_208); +if (lean_is_exclusive(x_190)) { + lean_ctor_release(x_190, 0); + lean_ctor_release(x_190, 1); + x_209 = x_190; +} else { + lean_dec_ref(x_190); + x_209 = lean_box(0); +} +if (lean_is_scalar(x_209)) { + x_210 = lean_alloc_ctor(1, 2, 0); +} else { + x_210 = x_209; +} +lean_ctor_set(x_210, 0, x_207); +lean_ctor_set(x_210, 1, x_208); +return x_210; +} +} +} +} +else +{ +uint8_t x_211; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_211 = !lean_is_exclusive(x_126); +if (x_211 == 0) +{ +return x_126; +} +else +{ +lean_object* x_212; lean_object* x_213; lean_object* x_214; +x_212 = lean_ctor_get(x_126, 0); +x_213 = lean_ctor_get(x_126, 1); +lean_inc(x_213); +lean_inc(x_212); +lean_dec(x_126); +x_214 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_214, 0, x_212); +lean_ctor_set(x_214, 1, x_213); +return x_214; +} +} +} +else +{ +uint8_t x_215; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_215 = !lean_is_exclusive(x_123); +if (x_215 == 0) +{ +return x_123; +} +else +{ +lean_object* x_216; lean_object* x_217; lean_object* x_218; +x_216 = lean_ctor_get(x_123, 0); +x_217 = lean_ctor_get(x_123, 1); +lean_inc(x_217); +lean_inc(x_216); +lean_dec(x_123); +x_218 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_218, 0, x_216); +lean_ctor_set(x_218, 1, x_217); +return x_218; +} +} +} +else +{ +size_t x_219; size_t x_220; lean_object* x_221; lean_object* x_222; +x_219 = 0; +x_220 = lean_usize_of_nat(x_23); +lean_dec(x_23); +x_221 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_222 = l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(x_1, x_2, x_21, x_219, x_220, x_221, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +lean_dec(x_21); +if (lean_obj_tag(x_222) == 0) +{ +lean_object* x_223; lean_object* x_224; +x_223 = lean_ctor_get(x_222, 1); +lean_inc(x_223); +lean_dec(x_222); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_224 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_223); +if (lean_obj_tag(x_224) == 0) +{ +lean_object* x_225; lean_object* x_226; lean_object* x_227; +x_225 = lean_ctor_get(x_224, 1); +lean_inc(x_225); +lean_dec(x_224); +x_226 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_22); +x_227 = l_Lean_Meta_Grind_internalize(x_22, x_2, x_226, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_225); +if (lean_obj_tag(x_227) == 0) +{ +lean_object* x_228; lean_object* x_229; lean_object* x_230; lean_object* x_231; uint8_t x_232; +x_228 = lean_ctor_get(x_227, 1); +lean_inc(x_228); +lean_dec(x_227); +x_229 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_230 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_229, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_228); +x_231 = lean_ctor_get(x_230, 0); +lean_inc(x_231); +x_232 = lean_unbox(x_231); +lean_dec(x_231); +if (x_232 == 0) +{ +lean_object* x_233; lean_object* x_234; +lean_free_object(x_18); +lean_free_object(x_13); +x_233 = lean_ctor_get(x_230, 1); +lean_inc(x_233); +lean_dec(x_230); +x_234 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_221, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_233); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_234; +} +else +{ +uint8_t x_235; +x_235 = !lean_is_exclusive(x_230); +if (x_235 == 0) +{ +lean_object* x_236; lean_object* x_237; lean_object* x_238; lean_object* x_239; uint8_t x_240; +x_236 = lean_ctor_get(x_230, 1); +x_237 = lean_ctor_get(x_230, 0); +lean_dec(x_237); +x_238 = l_Lean_Expr_getAppFn(x_22); +x_239 = lean_st_ref_get(x_3, x_236); +x_240 = !lean_is_exclusive(x_239); +if (x_240 == 0) +{ +lean_object* x_241; lean_object* x_242; lean_object* x_243; +x_241 = lean_ctor_get(x_239, 0); +x_242 = lean_ctor_get(x_239, 1); +lean_inc(x_238); +x_243 = l_Lean_Meta_Grind_Goal_getENode(x_241, x_238, x_9, x_10, x_242); +if (lean_obj_tag(x_243) == 0) +{ +lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; lean_object* x_254; lean_object* x_255; lean_object* x_256; lean_object* x_257; +x_244 = lean_ctor_get(x_243, 0); +lean_inc(x_244); +x_245 = lean_ctor_get(x_243, 1); +lean_inc(x_245); +lean_dec(x_243); +x_246 = lean_ctor_get(x_244, 7); +lean_inc(x_246); +lean_dec(x_244); +x_247 = l___private_Init_Data_Repr_0__Nat_reprFast(x_246); +x_248 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_248, 0, x_247); +x_249 = l_Lean_MessageData_ofFormat(x_248); +x_250 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +lean_ctor_set_tag(x_239, 7); +lean_ctor_set(x_239, 1, x_249); +lean_ctor_set(x_239, 0, x_250); +x_251 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_230, 7); +lean_ctor_set(x_230, 1, x_251); +lean_ctor_set(x_230, 0, x_239); +x_252 = l_Lean_MessageData_ofExpr(x_238); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_252); +lean_ctor_set(x_18, 0, x_230); +x_253 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_253); +lean_ctor_set(x_13, 0, x_18); +x_254 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_229, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_245); +x_255 = lean_ctor_get(x_254, 0); +lean_inc(x_255); +x_256 = lean_ctor_get(x_254, 1); +lean_inc(x_256); +lean_dec(x_254); +x_257 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_255, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_256); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_255); +return x_257; +} +else +{ +uint8_t x_258; +lean_free_object(x_239); +lean_dec(x_238); +lean_free_object(x_230); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_258 = !lean_is_exclusive(x_243); +if (x_258 == 0) +{ +return x_243; +} +else +{ +lean_object* x_259; lean_object* x_260; lean_object* x_261; +x_259 = lean_ctor_get(x_243, 0); +x_260 = lean_ctor_get(x_243, 1); +lean_inc(x_260); +lean_inc(x_259); +lean_dec(x_243); +x_261 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_261, 0, x_259); +lean_ctor_set(x_261, 1, x_260); +return x_261; +} +} +} +else +{ +lean_object* x_262; lean_object* x_263; lean_object* x_264; +x_262 = lean_ctor_get(x_239, 0); +x_263 = lean_ctor_get(x_239, 1); +lean_inc(x_263); +lean_inc(x_262); +lean_dec(x_239); +lean_inc(x_238); +x_264 = l_Lean_Meta_Grind_Goal_getENode(x_262, x_238, x_9, x_10, x_263); +if (lean_obj_tag(x_264) == 0) +{ +lean_object* x_265; lean_object* x_266; lean_object* x_267; lean_object* x_268; lean_object* x_269; lean_object* x_270; lean_object* x_271; lean_object* x_272; lean_object* x_273; lean_object* x_274; lean_object* x_275; lean_object* x_276; lean_object* x_277; lean_object* x_278; lean_object* x_279; +x_265 = lean_ctor_get(x_264, 0); +lean_inc(x_265); +x_266 = lean_ctor_get(x_264, 1); +lean_inc(x_266); +lean_dec(x_264); +x_267 = lean_ctor_get(x_265, 7); +lean_inc(x_267); +lean_dec(x_265); +x_268 = l___private_Init_Data_Repr_0__Nat_reprFast(x_267); +x_269 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_269, 0, x_268); +x_270 = l_Lean_MessageData_ofFormat(x_269); +x_271 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +x_272 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_272, 0, x_271); +lean_ctor_set(x_272, 1, x_270); +x_273 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +lean_ctor_set_tag(x_230, 7); +lean_ctor_set(x_230, 1, x_273); +lean_ctor_set(x_230, 0, x_272); +x_274 = l_Lean_MessageData_ofExpr(x_238); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_274); +lean_ctor_set(x_18, 0, x_230); +x_275 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_275); +lean_ctor_set(x_13, 0, x_18); +x_276 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_229, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_266); +x_277 = lean_ctor_get(x_276, 0); +lean_inc(x_277); +x_278 = lean_ctor_get(x_276, 1); +lean_inc(x_278); +lean_dec(x_276); +x_279 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_277, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_278); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_277); +return x_279; +} +else +{ +lean_object* x_280; lean_object* x_281; lean_object* x_282; lean_object* x_283; +lean_dec(x_238); +lean_free_object(x_230); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_280 = lean_ctor_get(x_264, 0); +lean_inc(x_280); +x_281 = lean_ctor_get(x_264, 1); +lean_inc(x_281); +if (lean_is_exclusive(x_264)) { + lean_ctor_release(x_264, 0); + lean_ctor_release(x_264, 1); + x_282 = x_264; +} else { + lean_dec_ref(x_264); + x_282 = lean_box(0); +} +if (lean_is_scalar(x_282)) { + x_283 = lean_alloc_ctor(1, 2, 0); +} else { + x_283 = x_282; +} +lean_ctor_set(x_283, 0, x_280); +lean_ctor_set(x_283, 1, x_281); +return x_283; +} +} +} +else +{ +lean_object* x_284; lean_object* x_285; lean_object* x_286; lean_object* x_287; lean_object* x_288; lean_object* x_289; lean_object* x_290; +x_284 = lean_ctor_get(x_230, 1); +lean_inc(x_284); +lean_dec(x_230); +x_285 = l_Lean_Expr_getAppFn(x_22); +x_286 = lean_st_ref_get(x_3, x_284); +x_287 = lean_ctor_get(x_286, 0); +lean_inc(x_287); +x_288 = lean_ctor_get(x_286, 1); +lean_inc(x_288); +if (lean_is_exclusive(x_286)) { + lean_ctor_release(x_286, 0); + lean_ctor_release(x_286, 1); + x_289 = x_286; +} else { + lean_dec_ref(x_286); + x_289 = lean_box(0); +} +lean_inc(x_285); +x_290 = l_Lean_Meta_Grind_Goal_getENode(x_287, x_285, x_9, x_10, x_288); +if (lean_obj_tag(x_290) == 0) +{ +lean_object* x_291; lean_object* x_292; lean_object* x_293; lean_object* x_294; lean_object* x_295; lean_object* x_296; lean_object* x_297; lean_object* x_298; lean_object* x_299; lean_object* x_300; lean_object* x_301; lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; +x_291 = lean_ctor_get(x_290, 0); +lean_inc(x_291); +x_292 = lean_ctor_get(x_290, 1); +lean_inc(x_292); +lean_dec(x_290); +x_293 = lean_ctor_get(x_291, 7); +lean_inc(x_293); +lean_dec(x_291); +x_294 = l___private_Init_Data_Repr_0__Nat_reprFast(x_293); +x_295 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_295, 0, x_294); +x_296 = l_Lean_MessageData_ofFormat(x_295); +x_297 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_289)) { + x_298 = lean_alloc_ctor(7, 2, 0); +} else { + x_298 = x_289; + lean_ctor_set_tag(x_298, 7); +} +lean_ctor_set(x_298, 0, x_297); +lean_ctor_set(x_298, 1, x_296); +x_299 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +x_300 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_300, 0, x_298); +lean_ctor_set(x_300, 1, x_299); +x_301 = l_Lean_MessageData_ofExpr(x_285); +lean_ctor_set_tag(x_18, 7); +lean_ctor_set(x_18, 1, x_301); +lean_ctor_set(x_18, 0, x_300); +x_302 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_302); +lean_ctor_set(x_13, 0, x_18); +x_303 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_229, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_292); +x_304 = lean_ctor_get(x_303, 0); +lean_inc(x_304); +x_305 = lean_ctor_get(x_303, 1); +lean_inc(x_305); +lean_dec(x_303); +x_306 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_22, x_304, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_305); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_304); +return x_306; +} +else +{ +lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; +lean_dec(x_289); +lean_dec(x_285); +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_307 = lean_ctor_get(x_290, 0); +lean_inc(x_307); +x_308 = lean_ctor_get(x_290, 1); +lean_inc(x_308); +if (lean_is_exclusive(x_290)) { + lean_ctor_release(x_290, 0); + lean_ctor_release(x_290, 1); + x_309 = x_290; +} else { + lean_dec_ref(x_290); + x_309 = lean_box(0); +} +if (lean_is_scalar(x_309)) { + x_310 = lean_alloc_ctor(1, 2, 0); +} else { + x_310 = x_309; +} +lean_ctor_set(x_310, 0, x_307); +lean_ctor_set(x_310, 1, x_308); +return x_310; +} +} +} +} +else +{ +uint8_t x_311; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_311 = !lean_is_exclusive(x_227); +if (x_311 == 0) +{ +return x_227; +} +else +{ +lean_object* x_312; lean_object* x_313; lean_object* x_314; +x_312 = lean_ctor_get(x_227, 0); +x_313 = lean_ctor_get(x_227, 1); +lean_inc(x_313); +lean_inc(x_312); +lean_dec(x_227); +x_314 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_314, 0, x_312); +lean_ctor_set(x_314, 1, x_313); +return x_314; +} +} +} +else +{ +uint8_t x_315; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_315 = !lean_is_exclusive(x_224); +if (x_315 == 0) +{ +return x_224; +} +else +{ +lean_object* x_316; lean_object* x_317; lean_object* x_318; +x_316 = lean_ctor_get(x_224, 0); +x_317 = lean_ctor_get(x_224, 1); +lean_inc(x_317); +lean_inc(x_316); +lean_dec(x_224); +x_318 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_318, 0, x_316); +lean_ctor_set(x_318, 1, x_317); +return x_318; +} +} +} +else +{ +uint8_t x_319; +lean_free_object(x_18); +lean_dec(x_22); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_319 = !lean_is_exclusive(x_222); +if (x_319 == 0) +{ +return x_222; +} +else +{ +lean_object* x_320; lean_object* x_321; lean_object* x_322; +x_320 = lean_ctor_get(x_222, 0); +x_321 = lean_ctor_get(x_222, 1); +lean_inc(x_321); +lean_inc(x_320); +lean_dec(x_222); +x_322 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_322, 0, x_320); +lean_ctor_set(x_322, 1, x_321); +return x_322; +} +} +} +} +} +else +{ +lean_object* x_323; lean_object* x_324; lean_object* x_325; lean_object* x_326; uint8_t x_327; +x_323 = lean_ctor_get(x_18, 0); +x_324 = lean_ctor_get(x_18, 1); +lean_inc(x_324); +lean_inc(x_323); +lean_dec(x_18); +x_325 = lean_array_get_size(x_323); +x_326 = lean_unsigned_to_nat(0u); +x_327 = lean_nat_dec_lt(x_326, x_325); +if (x_327 == 0) +{ +lean_object* x_328; +lean_dec(x_325); +lean_dec(x_323); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_328 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +if (lean_obj_tag(x_328) == 0) +{ +lean_object* x_329; lean_object* x_330; lean_object* x_331; +x_329 = lean_ctor_get(x_328, 1); +lean_inc(x_329); +lean_dec(x_328); +x_330 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_324); +x_331 = l_Lean_Meta_Grind_internalize(x_324, x_2, x_330, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_329); +if (lean_obj_tag(x_331) == 0) +{ +lean_object* x_332; lean_object* x_333; lean_object* x_334; lean_object* x_335; uint8_t x_336; +x_332 = lean_ctor_get(x_331, 1); +lean_inc(x_332); +lean_dec(x_331); +x_333 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_334 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_333, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_332); +x_335 = lean_ctor_get(x_334, 0); +lean_inc(x_335); +x_336 = lean_unbox(x_335); +lean_dec(x_335); +if (x_336 == 0) +{ +lean_object* x_337; lean_object* x_338; lean_object* x_339; +lean_free_object(x_13); +x_337 = lean_ctor_get(x_334, 1); +lean_inc(x_337); +lean_dec(x_334); +x_338 = lean_box(0); +x_339 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_338, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_337); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_339; +} +else +{ +lean_object* x_340; lean_object* x_341; lean_object* x_342; lean_object* x_343; lean_object* x_344; lean_object* x_345; lean_object* x_346; lean_object* x_347; +x_340 = lean_ctor_get(x_334, 1); +lean_inc(x_340); +if (lean_is_exclusive(x_334)) { + lean_ctor_release(x_334, 0); + lean_ctor_release(x_334, 1); + x_341 = x_334; +} else { + lean_dec_ref(x_334); + x_341 = lean_box(0); +} +x_342 = l_Lean_Expr_getAppFn(x_324); +x_343 = lean_st_ref_get(x_3, x_340); +x_344 = lean_ctor_get(x_343, 0); +lean_inc(x_344); +x_345 = lean_ctor_get(x_343, 1); +lean_inc(x_345); +if (lean_is_exclusive(x_343)) { + lean_ctor_release(x_343, 0); + lean_ctor_release(x_343, 1); + x_346 = x_343; +} else { + lean_dec_ref(x_343); + x_346 = lean_box(0); +} +lean_inc(x_342); +x_347 = l_Lean_Meta_Grind_Goal_getENode(x_344, x_342, x_9, x_10, x_345); +if (lean_obj_tag(x_347) == 0) +{ +lean_object* x_348; lean_object* x_349; lean_object* x_350; lean_object* x_351; lean_object* x_352; lean_object* x_353; lean_object* x_354; lean_object* x_355; lean_object* x_356; lean_object* x_357; lean_object* x_358; lean_object* x_359; lean_object* x_360; lean_object* x_361; lean_object* x_362; lean_object* x_363; lean_object* x_364; +x_348 = lean_ctor_get(x_347, 0); +lean_inc(x_348); +x_349 = lean_ctor_get(x_347, 1); +lean_inc(x_349); +lean_dec(x_347); +x_350 = lean_ctor_get(x_348, 7); +lean_inc(x_350); +lean_dec(x_348); +x_351 = l___private_Init_Data_Repr_0__Nat_reprFast(x_350); +x_352 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_352, 0, x_351); +x_353 = l_Lean_MessageData_ofFormat(x_352); +x_354 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_346)) { + x_355 = lean_alloc_ctor(7, 2, 0); +} else { + x_355 = x_346; + lean_ctor_set_tag(x_355, 7); +} +lean_ctor_set(x_355, 0, x_354); +lean_ctor_set(x_355, 1, x_353); +x_356 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_341)) { + x_357 = lean_alloc_ctor(7, 2, 0); +} else { + x_357 = x_341; + lean_ctor_set_tag(x_357, 7); +} +lean_ctor_set(x_357, 0, x_355); +lean_ctor_set(x_357, 1, x_356); +x_358 = l_Lean_MessageData_ofExpr(x_342); +x_359 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_359, 0, x_357); +lean_ctor_set(x_359, 1, x_358); +x_360 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_360); +lean_ctor_set(x_13, 0, x_359); +x_361 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_333, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_349); +x_362 = lean_ctor_get(x_361, 0); +lean_inc(x_362); +x_363 = lean_ctor_get(x_361, 1); +lean_inc(x_363); +lean_dec(x_361); +x_364 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_362, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_363); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_362); +return x_364; +} +else +{ +lean_object* x_365; lean_object* x_366; lean_object* x_367; lean_object* x_368; +lean_dec(x_346); +lean_dec(x_342); +lean_dec(x_341); +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_365 = lean_ctor_get(x_347, 0); +lean_inc(x_365); +x_366 = lean_ctor_get(x_347, 1); +lean_inc(x_366); +if (lean_is_exclusive(x_347)) { + lean_ctor_release(x_347, 0); + lean_ctor_release(x_347, 1); + x_367 = x_347; +} else { + lean_dec_ref(x_347); + x_367 = lean_box(0); +} +if (lean_is_scalar(x_367)) { + x_368 = lean_alloc_ctor(1, 2, 0); +} else { + x_368 = x_367; +} +lean_ctor_set(x_368, 0, x_365); +lean_ctor_set(x_368, 1, x_366); +return x_368; +} +} +} +else +{ +lean_object* x_369; lean_object* x_370; lean_object* x_371; lean_object* x_372; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_369 = lean_ctor_get(x_331, 0); +lean_inc(x_369); +x_370 = lean_ctor_get(x_331, 1); +lean_inc(x_370); +if (lean_is_exclusive(x_331)) { + lean_ctor_release(x_331, 0); + lean_ctor_release(x_331, 1); + x_371 = x_331; +} else { + lean_dec_ref(x_331); + x_371 = lean_box(0); +} +if (lean_is_scalar(x_371)) { + x_372 = lean_alloc_ctor(1, 2, 0); +} else { + x_372 = x_371; +} +lean_ctor_set(x_372, 0, x_369); +lean_ctor_set(x_372, 1, x_370); +return x_372; +} +} +else +{ +lean_object* x_373; lean_object* x_374; lean_object* x_375; lean_object* x_376; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_373 = lean_ctor_get(x_328, 0); +lean_inc(x_373); +x_374 = lean_ctor_get(x_328, 1); +lean_inc(x_374); +if (lean_is_exclusive(x_328)) { + lean_ctor_release(x_328, 0); + lean_ctor_release(x_328, 1); + x_375 = x_328; +} else { + lean_dec_ref(x_328); + x_375 = lean_box(0); +} +if (lean_is_scalar(x_375)) { + x_376 = lean_alloc_ctor(1, 2, 0); +} else { + x_376 = x_375; +} +lean_ctor_set(x_376, 0, x_373); +lean_ctor_set(x_376, 1, x_374); +return x_376; +} +} +else +{ +uint8_t x_377; +x_377 = lean_nat_dec_le(x_325, x_325); +if (x_377 == 0) +{ +lean_object* x_378; +lean_dec(x_325); +lean_dec(x_323); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_378 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +if (lean_obj_tag(x_378) == 0) +{ +lean_object* x_379; lean_object* x_380; lean_object* x_381; +x_379 = lean_ctor_get(x_378, 1); +lean_inc(x_379); +lean_dec(x_378); +x_380 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_324); +x_381 = l_Lean_Meta_Grind_internalize(x_324, x_2, x_380, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_379); +if (lean_obj_tag(x_381) == 0) +{ +lean_object* x_382; lean_object* x_383; lean_object* x_384; lean_object* x_385; uint8_t x_386; +x_382 = lean_ctor_get(x_381, 1); +lean_inc(x_382); +lean_dec(x_381); +x_383 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_384 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_383, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_382); +x_385 = lean_ctor_get(x_384, 0); +lean_inc(x_385); +x_386 = lean_unbox(x_385); +lean_dec(x_385); +if (x_386 == 0) +{ +lean_object* x_387; lean_object* x_388; lean_object* x_389; +lean_free_object(x_13); +x_387 = lean_ctor_get(x_384, 1); +lean_inc(x_387); +lean_dec(x_384); +x_388 = lean_box(0); +x_389 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_388, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_387); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_389; +} +else +{ +lean_object* x_390; lean_object* x_391; lean_object* x_392; lean_object* x_393; lean_object* x_394; lean_object* x_395; lean_object* x_396; lean_object* x_397; +x_390 = lean_ctor_get(x_384, 1); +lean_inc(x_390); +if (lean_is_exclusive(x_384)) { + lean_ctor_release(x_384, 0); + lean_ctor_release(x_384, 1); + x_391 = x_384; +} else { + lean_dec_ref(x_384); + x_391 = lean_box(0); +} +x_392 = l_Lean_Expr_getAppFn(x_324); +x_393 = lean_st_ref_get(x_3, x_390); +x_394 = lean_ctor_get(x_393, 0); +lean_inc(x_394); +x_395 = lean_ctor_get(x_393, 1); +lean_inc(x_395); +if (lean_is_exclusive(x_393)) { + lean_ctor_release(x_393, 0); + lean_ctor_release(x_393, 1); + x_396 = x_393; +} else { + lean_dec_ref(x_393); + x_396 = lean_box(0); +} +lean_inc(x_392); +x_397 = l_Lean_Meta_Grind_Goal_getENode(x_394, x_392, x_9, x_10, x_395); +if (lean_obj_tag(x_397) == 0) +{ +lean_object* x_398; lean_object* x_399; lean_object* x_400; lean_object* x_401; lean_object* x_402; lean_object* x_403; lean_object* x_404; lean_object* x_405; lean_object* x_406; lean_object* x_407; lean_object* x_408; lean_object* x_409; lean_object* x_410; lean_object* x_411; lean_object* x_412; lean_object* x_413; lean_object* x_414; +x_398 = lean_ctor_get(x_397, 0); +lean_inc(x_398); +x_399 = lean_ctor_get(x_397, 1); +lean_inc(x_399); +lean_dec(x_397); +x_400 = lean_ctor_get(x_398, 7); +lean_inc(x_400); +lean_dec(x_398); +x_401 = l___private_Init_Data_Repr_0__Nat_reprFast(x_400); +x_402 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_402, 0, x_401); +x_403 = l_Lean_MessageData_ofFormat(x_402); +x_404 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_396)) { + x_405 = lean_alloc_ctor(7, 2, 0); +} else { + x_405 = x_396; + lean_ctor_set_tag(x_405, 7); +} +lean_ctor_set(x_405, 0, x_404); +lean_ctor_set(x_405, 1, x_403); +x_406 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_391)) { + x_407 = lean_alloc_ctor(7, 2, 0); +} else { + x_407 = x_391; + lean_ctor_set_tag(x_407, 7); +} +lean_ctor_set(x_407, 0, x_405); +lean_ctor_set(x_407, 1, x_406); +x_408 = l_Lean_MessageData_ofExpr(x_392); +x_409 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_409, 0, x_407); +lean_ctor_set(x_409, 1, x_408); +x_410 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_410); +lean_ctor_set(x_13, 0, x_409); +x_411 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_383, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_399); +x_412 = lean_ctor_get(x_411, 0); +lean_inc(x_412); +x_413 = lean_ctor_get(x_411, 1); +lean_inc(x_413); +lean_dec(x_411); +x_414 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_412, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_413); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_412); +return x_414; +} +else +{ +lean_object* x_415; lean_object* x_416; lean_object* x_417; lean_object* x_418; +lean_dec(x_396); +lean_dec(x_392); +lean_dec(x_391); +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_415 = lean_ctor_get(x_397, 0); +lean_inc(x_415); +x_416 = lean_ctor_get(x_397, 1); +lean_inc(x_416); +if (lean_is_exclusive(x_397)) { + lean_ctor_release(x_397, 0); + lean_ctor_release(x_397, 1); + x_417 = x_397; +} else { + lean_dec_ref(x_397); + x_417 = lean_box(0); +} +if (lean_is_scalar(x_417)) { + x_418 = lean_alloc_ctor(1, 2, 0); +} else { + x_418 = x_417; +} +lean_ctor_set(x_418, 0, x_415); +lean_ctor_set(x_418, 1, x_416); +return x_418; +} +} +} +else +{ +lean_object* x_419; lean_object* x_420; lean_object* x_421; lean_object* x_422; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_419 = lean_ctor_get(x_381, 0); +lean_inc(x_419); +x_420 = lean_ctor_get(x_381, 1); +lean_inc(x_420); +if (lean_is_exclusive(x_381)) { + lean_ctor_release(x_381, 0); + lean_ctor_release(x_381, 1); + x_421 = x_381; +} else { + lean_dec_ref(x_381); + x_421 = lean_box(0); +} +if (lean_is_scalar(x_421)) { + x_422 = lean_alloc_ctor(1, 2, 0); +} else { + x_422 = x_421; +} +lean_ctor_set(x_422, 0, x_419); +lean_ctor_set(x_422, 1, x_420); +return x_422; +} +} +else +{ +lean_object* x_423; lean_object* x_424; lean_object* x_425; lean_object* x_426; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_423 = lean_ctor_get(x_378, 0); +lean_inc(x_423); +x_424 = lean_ctor_get(x_378, 1); +lean_inc(x_424); +if (lean_is_exclusive(x_378)) { + lean_ctor_release(x_378, 0); + lean_ctor_release(x_378, 1); + x_425 = x_378; +} else { + lean_dec_ref(x_378); + x_425 = lean_box(0); +} +if (lean_is_scalar(x_425)) { + x_426 = lean_alloc_ctor(1, 2, 0); +} else { + x_426 = x_425; +} +lean_ctor_set(x_426, 0, x_423); +lean_ctor_set(x_426, 1, x_424); +return x_426; +} +} +else +{ +size_t x_427; size_t x_428; lean_object* x_429; lean_object* x_430; +x_427 = 0; +x_428 = lean_usize_of_nat(x_325); +lean_dec(x_325); +x_429 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_430 = l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(x_1, x_2, x_323, x_427, x_428, x_429, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); +lean_dec(x_323); +if (lean_obj_tag(x_430) == 0) +{ +lean_object* x_431; lean_object* x_432; +x_431 = lean_ctor_get(x_430, 1); +lean_inc(x_431); +lean_dec(x_430); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_432 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_431); +if (lean_obj_tag(x_432) == 0) +{ +lean_object* x_433; lean_object* x_434; lean_object* x_435; +x_433 = lean_ctor_get(x_432, 1); +lean_inc(x_433); +lean_dec(x_432); +x_434 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_324); +x_435 = l_Lean_Meta_Grind_internalize(x_324, x_2, x_434, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_433); +if (lean_obj_tag(x_435) == 0) +{ +lean_object* x_436; lean_object* x_437; lean_object* x_438; lean_object* x_439; uint8_t x_440; +x_436 = lean_ctor_get(x_435, 1); +lean_inc(x_436); +lean_dec(x_435); +x_437 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_438 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_437, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_436); +x_439 = lean_ctor_get(x_438, 0); +lean_inc(x_439); +x_440 = lean_unbox(x_439); +lean_dec(x_439); +if (x_440 == 0) +{ +lean_object* x_441; lean_object* x_442; +lean_free_object(x_13); +x_441 = lean_ctor_get(x_438, 1); +lean_inc(x_441); +lean_dec(x_438); +x_442 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_429, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_441); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_442; +} +else +{ +lean_object* x_443; lean_object* x_444; lean_object* x_445; lean_object* x_446; lean_object* x_447; lean_object* x_448; lean_object* x_449; lean_object* x_450; +x_443 = lean_ctor_get(x_438, 1); +lean_inc(x_443); +if (lean_is_exclusive(x_438)) { + lean_ctor_release(x_438, 0); + lean_ctor_release(x_438, 1); + x_444 = x_438; +} else { + lean_dec_ref(x_438); + x_444 = lean_box(0); +} +x_445 = l_Lean_Expr_getAppFn(x_324); +x_446 = lean_st_ref_get(x_3, x_443); +x_447 = lean_ctor_get(x_446, 0); +lean_inc(x_447); +x_448 = lean_ctor_get(x_446, 1); +lean_inc(x_448); +if (lean_is_exclusive(x_446)) { + lean_ctor_release(x_446, 0); + lean_ctor_release(x_446, 1); + x_449 = x_446; +} else { + lean_dec_ref(x_446); + x_449 = lean_box(0); +} +lean_inc(x_445); +x_450 = l_Lean_Meta_Grind_Goal_getENode(x_447, x_445, x_9, x_10, x_448); +if (lean_obj_tag(x_450) == 0) +{ +lean_object* x_451; lean_object* x_452; lean_object* x_453; lean_object* x_454; lean_object* x_455; lean_object* x_456; lean_object* x_457; lean_object* x_458; lean_object* x_459; lean_object* x_460; lean_object* x_461; lean_object* x_462; lean_object* x_463; lean_object* x_464; lean_object* x_465; lean_object* x_466; lean_object* x_467; +x_451 = lean_ctor_get(x_450, 0); +lean_inc(x_451); +x_452 = lean_ctor_get(x_450, 1); +lean_inc(x_452); +lean_dec(x_450); +x_453 = lean_ctor_get(x_451, 7); +lean_inc(x_453); +lean_dec(x_451); +x_454 = l___private_Init_Data_Repr_0__Nat_reprFast(x_453); +x_455 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_455, 0, x_454); +x_456 = l_Lean_MessageData_ofFormat(x_455); +x_457 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_449)) { + x_458 = lean_alloc_ctor(7, 2, 0); +} else { + x_458 = x_449; + lean_ctor_set_tag(x_458, 7); +} +lean_ctor_set(x_458, 0, x_457); +lean_ctor_set(x_458, 1, x_456); +x_459 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_444)) { + x_460 = lean_alloc_ctor(7, 2, 0); +} else { + x_460 = x_444; + lean_ctor_set_tag(x_460, 7); +} +lean_ctor_set(x_460, 0, x_458); +lean_ctor_set(x_460, 1, x_459); +x_461 = l_Lean_MessageData_ofExpr(x_445); +x_462 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_462, 0, x_460); +lean_ctor_set(x_462, 1, x_461); +x_463 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_463); +lean_ctor_set(x_13, 0, x_462); +x_464 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_437, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_452); +x_465 = lean_ctor_get(x_464, 0); +lean_inc(x_465); +x_466 = lean_ctor_get(x_464, 1); +lean_inc(x_466); +lean_dec(x_464); +x_467 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_324, x_465, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_466); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_465); +return x_467; +} +else +{ +lean_object* x_468; lean_object* x_469; lean_object* x_470; lean_object* x_471; +lean_dec(x_449); +lean_dec(x_445); +lean_dec(x_444); +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_468 = lean_ctor_get(x_450, 0); +lean_inc(x_468); +x_469 = lean_ctor_get(x_450, 1); +lean_inc(x_469); +if (lean_is_exclusive(x_450)) { + lean_ctor_release(x_450, 0); + lean_ctor_release(x_450, 1); + x_470 = x_450; +} else { + lean_dec_ref(x_450); + x_470 = lean_box(0); +} +if (lean_is_scalar(x_470)) { + x_471 = lean_alloc_ctor(1, 2, 0); +} else { + x_471 = x_470; +} +lean_ctor_set(x_471, 0, x_468); +lean_ctor_set(x_471, 1, x_469); +return x_471; +} +} +} +else +{ +lean_object* x_472; lean_object* x_473; lean_object* x_474; lean_object* x_475; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_472 = lean_ctor_get(x_435, 0); +lean_inc(x_472); +x_473 = lean_ctor_get(x_435, 1); +lean_inc(x_473); +if (lean_is_exclusive(x_435)) { + lean_ctor_release(x_435, 0); + lean_ctor_release(x_435, 1); + x_474 = x_435; +} else { + lean_dec_ref(x_435); + x_474 = lean_box(0); +} +if (lean_is_scalar(x_474)) { + x_475 = lean_alloc_ctor(1, 2, 0); +} else { + x_475 = x_474; +} +lean_ctor_set(x_475, 0, x_472); +lean_ctor_set(x_475, 1, x_473); +return x_475; +} +} +else +{ +lean_object* x_476; lean_object* x_477; lean_object* x_478; lean_object* x_479; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_476 = lean_ctor_get(x_432, 0); +lean_inc(x_476); +x_477 = lean_ctor_get(x_432, 1); +lean_inc(x_477); +if (lean_is_exclusive(x_432)) { + lean_ctor_release(x_432, 0); + lean_ctor_release(x_432, 1); + x_478 = x_432; +} else { + lean_dec_ref(x_432); + x_478 = lean_box(0); +} +if (lean_is_scalar(x_478)) { + x_479 = lean_alloc_ctor(1, 2, 0); +} else { + x_479 = x_478; +} +lean_ctor_set(x_479, 0, x_476); +lean_ctor_set(x_479, 1, x_477); +return x_479; +} +} +else +{ +lean_object* x_480; lean_object* x_481; lean_object* x_482; lean_object* x_483; +lean_dec(x_324); +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_480 = lean_ctor_get(x_430, 0); +lean_inc(x_480); +x_481 = lean_ctor_get(x_430, 1); +lean_inc(x_481); +if (lean_is_exclusive(x_430)) { + lean_ctor_release(x_430, 0); + lean_ctor_release(x_430, 1); + x_482 = x_430; +} else { + lean_dec_ref(x_430); + x_482 = lean_box(0); +} +if (lean_is_scalar(x_482)) { + x_483 = lean_alloc_ctor(1, 2, 0); +} else { + x_483 = x_482; +} +lean_ctor_set(x_483, 0, x_480); +lean_ctor_set(x_483, 1, x_481); +return x_483; +} +} +} +} +} +else +{ +uint8_t x_484; +lean_free_object(x_13); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_484 = !lean_is_exclusive(x_17); +if (x_484 == 0) +{ +return x_17; +} +else +{ +lean_object* x_485; lean_object* x_486; lean_object* x_487; +x_485 = lean_ctor_get(x_17, 0); +x_486 = lean_ctor_get(x_17, 1); +lean_inc(x_486); +lean_inc(x_485); +lean_dec(x_17); +x_487 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_487, 0, x_485); +lean_ctor_set(x_487, 1, x_486); +return x_487; +} +} +} +else +{ +lean_object* x_488; lean_object* x_489; +x_488 = lean_ctor_get(x_13, 1); +lean_inc(x_488); +lean_dec(x_13); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_489 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_488); +if (lean_obj_tag(x_489) == 0) +{ +lean_object* x_490; lean_object* x_491; lean_object* x_492; lean_object* x_493; lean_object* x_494; lean_object* x_495; lean_object* x_496; uint8_t x_497; +x_490 = lean_ctor_get(x_489, 0); +lean_inc(x_490); +x_491 = lean_ctor_get(x_489, 1); +lean_inc(x_491); +lean_dec(x_489); +x_492 = lean_ctor_get(x_490, 0); +lean_inc(x_492); +x_493 = lean_ctor_get(x_490, 1); +lean_inc(x_493); +if (lean_is_exclusive(x_490)) { + lean_ctor_release(x_490, 0); + lean_ctor_release(x_490, 1); + x_494 = x_490; +} else { + lean_dec_ref(x_490); + x_494 = lean_box(0); +} +x_495 = lean_array_get_size(x_492); +x_496 = lean_unsigned_to_nat(0u); +x_497 = lean_nat_dec_lt(x_496, x_495); +if (x_497 == 0) +{ +lean_object* x_498; +lean_dec(x_495); +lean_dec(x_492); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_498 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_491); +if (lean_obj_tag(x_498) == 0) +{ +lean_object* x_499; lean_object* x_500; lean_object* x_501; +x_499 = lean_ctor_get(x_498, 1); +lean_inc(x_499); +lean_dec(x_498); +x_500 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_493); +x_501 = l_Lean_Meta_Grind_internalize(x_493, x_2, x_500, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_499); +if (lean_obj_tag(x_501) == 0) +{ +lean_object* x_502; lean_object* x_503; lean_object* x_504; lean_object* x_505; uint8_t x_506; +x_502 = lean_ctor_get(x_501, 1); +lean_inc(x_502); +lean_dec(x_501); +x_503 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_504 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_503, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_502); +x_505 = lean_ctor_get(x_504, 0); +lean_inc(x_505); +x_506 = lean_unbox(x_505); +lean_dec(x_505); +if (x_506 == 0) +{ +lean_object* x_507; lean_object* x_508; lean_object* x_509; +lean_dec(x_494); +x_507 = lean_ctor_get(x_504, 1); +lean_inc(x_507); +lean_dec(x_504); +x_508 = lean_box(0); +x_509 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_508, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_507); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_509; +} +else +{ +lean_object* x_510; lean_object* x_511; lean_object* x_512; lean_object* x_513; lean_object* x_514; lean_object* x_515; lean_object* x_516; lean_object* x_517; +x_510 = lean_ctor_get(x_504, 1); +lean_inc(x_510); +if (lean_is_exclusive(x_504)) { + lean_ctor_release(x_504, 0); + lean_ctor_release(x_504, 1); + x_511 = x_504; +} else { + lean_dec_ref(x_504); + x_511 = lean_box(0); +} +x_512 = l_Lean_Expr_getAppFn(x_493); +x_513 = lean_st_ref_get(x_3, x_510); +x_514 = lean_ctor_get(x_513, 0); +lean_inc(x_514); +x_515 = lean_ctor_get(x_513, 1); +lean_inc(x_515); +if (lean_is_exclusive(x_513)) { + lean_ctor_release(x_513, 0); + lean_ctor_release(x_513, 1); + x_516 = x_513; +} else { + lean_dec_ref(x_513); + x_516 = lean_box(0); +} +lean_inc(x_512); +x_517 = l_Lean_Meta_Grind_Goal_getENode(x_514, x_512, x_9, x_10, x_515); +if (lean_obj_tag(x_517) == 0) +{ +lean_object* x_518; lean_object* x_519; lean_object* x_520; lean_object* x_521; lean_object* x_522; lean_object* x_523; lean_object* x_524; lean_object* x_525; lean_object* x_526; lean_object* x_527; lean_object* x_528; lean_object* x_529; lean_object* x_530; lean_object* x_531; lean_object* x_532; lean_object* x_533; lean_object* x_534; lean_object* x_535; +x_518 = lean_ctor_get(x_517, 0); +lean_inc(x_518); +x_519 = lean_ctor_get(x_517, 1); +lean_inc(x_519); +lean_dec(x_517); +x_520 = lean_ctor_get(x_518, 7); +lean_inc(x_520); +lean_dec(x_518); +x_521 = l___private_Init_Data_Repr_0__Nat_reprFast(x_520); +x_522 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_522, 0, x_521); +x_523 = l_Lean_MessageData_ofFormat(x_522); +x_524 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_516)) { + x_525 = lean_alloc_ctor(7, 2, 0); +} else { + x_525 = x_516; + lean_ctor_set_tag(x_525, 7); +} +lean_ctor_set(x_525, 0, x_524); +lean_ctor_set(x_525, 1, x_523); +x_526 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_511)) { + x_527 = lean_alloc_ctor(7, 2, 0); +} else { + x_527 = x_511; + lean_ctor_set_tag(x_527, 7); +} +lean_ctor_set(x_527, 0, x_525); +lean_ctor_set(x_527, 1, x_526); +x_528 = l_Lean_MessageData_ofExpr(x_512); +if (lean_is_scalar(x_494)) { + x_529 = lean_alloc_ctor(7, 2, 0); +} else { + x_529 = x_494; + lean_ctor_set_tag(x_529, 7); +} +lean_ctor_set(x_529, 0, x_527); +lean_ctor_set(x_529, 1, x_528); +x_530 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +x_531 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_531, 0, x_529); +lean_ctor_set(x_531, 1, x_530); +x_532 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_503, x_531, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_519); +x_533 = lean_ctor_get(x_532, 0); +lean_inc(x_533); +x_534 = lean_ctor_get(x_532, 1); +lean_inc(x_534); +lean_dec(x_532); +x_535 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_533, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_534); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_533); +return x_535; +} +else +{ +lean_object* x_536; lean_object* x_537; lean_object* x_538; lean_object* x_539; +lean_dec(x_516); +lean_dec(x_512); +lean_dec(x_511); +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_536 = lean_ctor_get(x_517, 0); +lean_inc(x_536); +x_537 = lean_ctor_get(x_517, 1); +lean_inc(x_537); +if (lean_is_exclusive(x_517)) { + lean_ctor_release(x_517, 0); + lean_ctor_release(x_517, 1); + x_538 = x_517; +} else { + lean_dec_ref(x_517); + x_538 = lean_box(0); +} +if (lean_is_scalar(x_538)) { + x_539 = lean_alloc_ctor(1, 2, 0); +} else { + x_539 = x_538; +} +lean_ctor_set(x_539, 0, x_536); +lean_ctor_set(x_539, 1, x_537); +return x_539; +} +} +} +else +{ +lean_object* x_540; lean_object* x_541; lean_object* x_542; lean_object* x_543; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_540 = lean_ctor_get(x_501, 0); +lean_inc(x_540); +x_541 = lean_ctor_get(x_501, 1); +lean_inc(x_541); +if (lean_is_exclusive(x_501)) { + lean_ctor_release(x_501, 0); + lean_ctor_release(x_501, 1); + x_542 = x_501; +} else { + lean_dec_ref(x_501); + x_542 = lean_box(0); +} +if (lean_is_scalar(x_542)) { + x_543 = lean_alloc_ctor(1, 2, 0); +} else { + x_543 = x_542; +} +lean_ctor_set(x_543, 0, x_540); +lean_ctor_set(x_543, 1, x_541); +return x_543; +} +} +else +{ +lean_object* x_544; lean_object* x_545; lean_object* x_546; lean_object* x_547; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_544 = lean_ctor_get(x_498, 0); +lean_inc(x_544); +x_545 = lean_ctor_get(x_498, 1); +lean_inc(x_545); +if (lean_is_exclusive(x_498)) { + lean_ctor_release(x_498, 0); + lean_ctor_release(x_498, 1); + x_546 = x_498; +} else { + lean_dec_ref(x_498); + x_546 = lean_box(0); +} +if (lean_is_scalar(x_546)) { + x_547 = lean_alloc_ctor(1, 2, 0); +} else { + x_547 = x_546; +} +lean_ctor_set(x_547, 0, x_544); +lean_ctor_set(x_547, 1, x_545); +return x_547; +} +} +else +{ +uint8_t x_548; +x_548 = lean_nat_dec_le(x_495, x_495); +if (x_548 == 0) +{ +lean_object* x_549; +lean_dec(x_495); +lean_dec(x_492); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_549 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_491); +if (lean_obj_tag(x_549) == 0) +{ +lean_object* x_550; lean_object* x_551; lean_object* x_552; +x_550 = lean_ctor_get(x_549, 1); +lean_inc(x_550); +lean_dec(x_549); +x_551 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_493); +x_552 = l_Lean_Meta_Grind_internalize(x_493, x_2, x_551, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_550); +if (lean_obj_tag(x_552) == 0) +{ +lean_object* x_553; lean_object* x_554; lean_object* x_555; lean_object* x_556; uint8_t x_557; +x_553 = lean_ctor_get(x_552, 1); +lean_inc(x_553); +lean_dec(x_552); +x_554 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_555 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_554, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_553); +x_556 = lean_ctor_get(x_555, 0); +lean_inc(x_556); +x_557 = lean_unbox(x_556); +lean_dec(x_556); +if (x_557 == 0) +{ +lean_object* x_558; lean_object* x_559; lean_object* x_560; +lean_dec(x_494); +x_558 = lean_ctor_get(x_555, 1); +lean_inc(x_558); +lean_dec(x_555); +x_559 = lean_box(0); +x_560 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_559, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_558); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_560; +} +else +{ +lean_object* x_561; lean_object* x_562; lean_object* x_563; lean_object* x_564; lean_object* x_565; lean_object* x_566; lean_object* x_567; lean_object* x_568; +x_561 = lean_ctor_get(x_555, 1); +lean_inc(x_561); +if (lean_is_exclusive(x_555)) { + lean_ctor_release(x_555, 0); + lean_ctor_release(x_555, 1); + x_562 = x_555; +} else { + lean_dec_ref(x_555); + x_562 = lean_box(0); +} +x_563 = l_Lean_Expr_getAppFn(x_493); +x_564 = lean_st_ref_get(x_3, x_561); +x_565 = lean_ctor_get(x_564, 0); +lean_inc(x_565); +x_566 = lean_ctor_get(x_564, 1); +lean_inc(x_566); +if (lean_is_exclusive(x_564)) { + lean_ctor_release(x_564, 0); + lean_ctor_release(x_564, 1); + x_567 = x_564; +} else { + lean_dec_ref(x_564); + x_567 = lean_box(0); +} +lean_inc(x_563); +x_568 = l_Lean_Meta_Grind_Goal_getENode(x_565, x_563, x_9, x_10, x_566); +if (lean_obj_tag(x_568) == 0) +{ +lean_object* x_569; lean_object* x_570; lean_object* x_571; lean_object* x_572; lean_object* x_573; lean_object* x_574; lean_object* x_575; lean_object* x_576; lean_object* x_577; lean_object* x_578; lean_object* x_579; lean_object* x_580; lean_object* x_581; lean_object* x_582; lean_object* x_583; lean_object* x_584; lean_object* x_585; lean_object* x_586; +x_569 = lean_ctor_get(x_568, 0); +lean_inc(x_569); +x_570 = lean_ctor_get(x_568, 1); +lean_inc(x_570); +lean_dec(x_568); +x_571 = lean_ctor_get(x_569, 7); +lean_inc(x_571); +lean_dec(x_569); +x_572 = l___private_Init_Data_Repr_0__Nat_reprFast(x_571); +x_573 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_573, 0, x_572); +x_574 = l_Lean_MessageData_ofFormat(x_573); +x_575 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_567)) { + x_576 = lean_alloc_ctor(7, 2, 0); +} else { + x_576 = x_567; + lean_ctor_set_tag(x_576, 7); +} +lean_ctor_set(x_576, 0, x_575); +lean_ctor_set(x_576, 1, x_574); +x_577 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_562)) { + x_578 = lean_alloc_ctor(7, 2, 0); +} else { + x_578 = x_562; + lean_ctor_set_tag(x_578, 7); +} +lean_ctor_set(x_578, 0, x_576); +lean_ctor_set(x_578, 1, x_577); +x_579 = l_Lean_MessageData_ofExpr(x_563); +if (lean_is_scalar(x_494)) { + x_580 = lean_alloc_ctor(7, 2, 0); +} else { + x_580 = x_494; + lean_ctor_set_tag(x_580, 7); +} +lean_ctor_set(x_580, 0, x_578); +lean_ctor_set(x_580, 1, x_579); +x_581 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +x_582 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_582, 0, x_580); +lean_ctor_set(x_582, 1, x_581); +x_583 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_554, x_582, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_570); +x_584 = lean_ctor_get(x_583, 0); +lean_inc(x_584); +x_585 = lean_ctor_get(x_583, 1); +lean_inc(x_585); +lean_dec(x_583); +x_586 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_584, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_585); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_584); +return x_586; +} +else +{ +lean_object* x_587; lean_object* x_588; lean_object* x_589; lean_object* x_590; +lean_dec(x_567); +lean_dec(x_563); +lean_dec(x_562); +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_587 = lean_ctor_get(x_568, 0); +lean_inc(x_587); +x_588 = lean_ctor_get(x_568, 1); +lean_inc(x_588); +if (lean_is_exclusive(x_568)) { + lean_ctor_release(x_568, 0); + lean_ctor_release(x_568, 1); + x_589 = x_568; +} else { + lean_dec_ref(x_568); + x_589 = lean_box(0); +} +if (lean_is_scalar(x_589)) { + x_590 = lean_alloc_ctor(1, 2, 0); +} else { + x_590 = x_589; +} +lean_ctor_set(x_590, 0, x_587); +lean_ctor_set(x_590, 1, x_588); +return x_590; +} +} +} +else +{ +lean_object* x_591; lean_object* x_592; lean_object* x_593; lean_object* x_594; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_591 = lean_ctor_get(x_552, 0); +lean_inc(x_591); +x_592 = lean_ctor_get(x_552, 1); +lean_inc(x_592); +if (lean_is_exclusive(x_552)) { + lean_ctor_release(x_552, 0); + lean_ctor_release(x_552, 1); + x_593 = x_552; +} else { + lean_dec_ref(x_552); + x_593 = lean_box(0); +} +if (lean_is_scalar(x_593)) { + x_594 = lean_alloc_ctor(1, 2, 0); +} else { + x_594 = x_593; +} +lean_ctor_set(x_594, 0, x_591); +lean_ctor_set(x_594, 1, x_592); +return x_594; +} +} +else +{ +lean_object* x_595; lean_object* x_596; lean_object* x_597; lean_object* x_598; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_595 = lean_ctor_get(x_549, 0); +lean_inc(x_595); +x_596 = lean_ctor_get(x_549, 1); +lean_inc(x_596); +if (lean_is_exclusive(x_549)) { + lean_ctor_release(x_549, 0); + lean_ctor_release(x_549, 1); + x_597 = x_549; +} else { + lean_dec_ref(x_549); + x_597 = lean_box(0); +} +if (lean_is_scalar(x_597)) { + x_598 = lean_alloc_ctor(1, 2, 0); +} else { + x_598 = x_597; +} +lean_ctor_set(x_598, 0, x_595); +lean_ctor_set(x_598, 1, x_596); +return x_598; +} +} +else +{ +size_t x_599; size_t x_600; lean_object* x_601; lean_object* x_602; +x_599 = 0; +x_600 = lean_usize_of_nat(x_495); +lean_dec(x_495); +x_601 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_602 = l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(x_1, x_2, x_492, x_599, x_600, x_601, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_491); +lean_dec(x_492); +if (lean_obj_tag(x_602) == 0) +{ +lean_object* x_603; lean_object* x_604; +x_603 = lean_ctor_get(x_602, 1); +lean_inc(x_603); +lean_dec(x_602); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_1); +x_604 = l_Lean_Meta_Grind_propagateUp(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_603); +if (lean_obj_tag(x_604) == 0) +{ +lean_object* x_605; lean_object* x_606; lean_object* x_607; +x_605 = lean_ctor_get(x_604, 1); +lean_inc(x_605); +lean_dec(x_604); +x_606 = lean_box(0); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_493); +x_607 = l_Lean_Meta_Grind_internalize(x_493, x_2, x_606, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_605); +if (lean_obj_tag(x_607) == 0) +{ +lean_object* x_608; lean_object* x_609; lean_object* x_610; lean_object* x_611; uint8_t x_612; +x_608 = lean_ctor_get(x_607, 1); +lean_inc(x_608); +lean_dec(x_607); +x_609 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3; +x_610 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_609, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_608); +x_611 = lean_ctor_get(x_610, 0); +lean_inc(x_611); +x_612 = lean_unbox(x_611); +lean_dec(x_611); +if (x_612 == 0) +{ +lean_object* x_613; lean_object* x_614; +lean_dec(x_494); +x_613 = lean_ctor_get(x_610, 1); +lean_inc(x_613); +lean_dec(x_610); +x_614 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_601, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_613); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_614; +} +else +{ +lean_object* x_615; lean_object* x_616; lean_object* x_617; lean_object* x_618; lean_object* x_619; lean_object* x_620; lean_object* x_621; lean_object* x_622; +x_615 = lean_ctor_get(x_610, 1); +lean_inc(x_615); +if (lean_is_exclusive(x_610)) { + lean_ctor_release(x_610, 0); + lean_ctor_release(x_610, 1); + x_616 = x_610; +} else { + lean_dec_ref(x_610); + x_616 = lean_box(0); +} +x_617 = l_Lean_Expr_getAppFn(x_493); +x_618 = lean_st_ref_get(x_3, x_615); +x_619 = lean_ctor_get(x_618, 0); +lean_inc(x_619); +x_620 = lean_ctor_get(x_618, 1); +lean_inc(x_620); +if (lean_is_exclusive(x_618)) { + lean_ctor_release(x_618, 0); + lean_ctor_release(x_618, 1); + x_621 = x_618; +} else { + lean_dec_ref(x_618); + x_621 = lean_box(0); +} +lean_inc(x_617); +x_622 = l_Lean_Meta_Grind_Goal_getENode(x_619, x_617, x_9, x_10, x_620); +if (lean_obj_tag(x_622) == 0) +{ +lean_object* x_623; lean_object* x_624; lean_object* x_625; lean_object* x_626; lean_object* x_627; lean_object* x_628; lean_object* x_629; lean_object* x_630; lean_object* x_631; lean_object* x_632; lean_object* x_633; lean_object* x_634; lean_object* x_635; lean_object* x_636; lean_object* x_637; lean_object* x_638; lean_object* x_639; lean_object* x_640; +x_623 = lean_ctor_get(x_622, 0); +lean_inc(x_623); +x_624 = lean_ctor_get(x_622, 1); +lean_inc(x_624); +lean_dec(x_622); +x_625 = lean_ctor_get(x_623, 7); +lean_inc(x_625); +lean_dec(x_623); +x_626 = l___private_Init_Data_Repr_0__Nat_reprFast(x_625); +x_627 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_627, 0, x_626); +x_628 = l_Lean_MessageData_ofFormat(x_627); +x_629 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5; +if (lean_is_scalar(x_621)) { + x_630 = lean_alloc_ctor(7, 2, 0); +} else { + x_630 = x_621; + lean_ctor_set_tag(x_630, 7); +} +lean_ctor_set(x_630, 0, x_629); +lean_ctor_set(x_630, 1, x_628); +x_631 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7; +if (lean_is_scalar(x_616)) { + x_632 = lean_alloc_ctor(7, 2, 0); +} else { + x_632 = x_616; + lean_ctor_set_tag(x_632, 7); +} +lean_ctor_set(x_632, 0, x_630); +lean_ctor_set(x_632, 1, x_631); +x_633 = l_Lean_MessageData_ofExpr(x_617); +if (lean_is_scalar(x_494)) { + x_634 = lean_alloc_ctor(7, 2, 0); +} else { + x_634 = x_494; + lean_ctor_set_tag(x_634, 7); +} +lean_ctor_set(x_634, 0, x_632); +lean_ctor_set(x_634, 1, x_633); +x_635 = l_Lean_Meta_Grind_addCongrTable___lambda__2___closed__6; +x_636 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_636, 0, x_634); +lean_ctor_set(x_636, 1, x_635); +x_637 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_609, x_636, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_624); +x_638 = lean_ctor_get(x_637, 0); +lean_inc(x_638); +x_639 = lean_ctor_get(x_637, 1); +lean_inc(x_639); +lean_dec(x_637); +x_640 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_493, x_638, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_639); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_638); +return x_640; +} +else +{ +lean_object* x_641; lean_object* x_642; lean_object* x_643; lean_object* x_644; +lean_dec(x_621); +lean_dec(x_617); +lean_dec(x_616); +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_641 = lean_ctor_get(x_622, 0); +lean_inc(x_641); +x_642 = lean_ctor_get(x_622, 1); +lean_inc(x_642); +if (lean_is_exclusive(x_622)) { + lean_ctor_release(x_622, 0); + lean_ctor_release(x_622, 1); + x_643 = x_622; +} else { + lean_dec_ref(x_622); + x_643 = lean_box(0); +} +if (lean_is_scalar(x_643)) { + x_644 = lean_alloc_ctor(1, 2, 0); +} else { + x_644 = x_643; +} +lean_ctor_set(x_644, 0, x_641); +lean_ctor_set(x_644, 1, x_642); +return x_644; +} +} +} +else +{ +lean_object* x_645; lean_object* x_646; lean_object* x_647; lean_object* x_648; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_645 = lean_ctor_get(x_607, 0); +lean_inc(x_645); +x_646 = lean_ctor_get(x_607, 1); +lean_inc(x_646); +if (lean_is_exclusive(x_607)) { + lean_ctor_release(x_607, 0); + lean_ctor_release(x_607, 1); + x_647 = x_607; +} else { + lean_dec_ref(x_607); + x_647 = lean_box(0); +} +if (lean_is_scalar(x_647)) { + x_648 = lean_alloc_ctor(1, 2, 0); +} else { + x_648 = x_647; +} +lean_ctor_set(x_648, 0, x_645); +lean_ctor_set(x_648, 1, x_646); +return x_648; +} +} +else +{ +lean_object* x_649; lean_object* x_650; lean_object* x_651; lean_object* x_652; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_649 = lean_ctor_get(x_604, 0); +lean_inc(x_649); +x_650 = lean_ctor_get(x_604, 1); +lean_inc(x_650); +if (lean_is_exclusive(x_604)) { + lean_ctor_release(x_604, 0); + lean_ctor_release(x_604, 1); + x_651 = x_604; +} else { + lean_dec_ref(x_604); + x_651 = lean_box(0); +} +if (lean_is_scalar(x_651)) { + x_652 = lean_alloc_ctor(1, 2, 0); +} else { + x_652 = x_651; +} +lean_ctor_set(x_652, 0, x_649); +lean_ctor_set(x_652, 1, x_650); +return x_652; +} +} +else +{ +lean_object* x_653; lean_object* x_654; lean_object* x_655; lean_object* x_656; +lean_dec(x_494); +lean_dec(x_493); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_653 = lean_ctor_get(x_602, 0); +lean_inc(x_653); +x_654 = lean_ctor_get(x_602, 1); +lean_inc(x_654); +if (lean_is_exclusive(x_602)) { + lean_ctor_release(x_602, 0); + lean_ctor_release(x_602, 1); + x_655 = x_602; +} else { + lean_dec_ref(x_602); + x_655 = lean_box(0); +} +if (lean_is_scalar(x_655)) { + x_656 = lean_alloc_ctor(1, 2, 0); +} else { + x_656 = x_655; +} +lean_ctor_set(x_656, 0, x_653); +lean_ctor_set(x_656, 1, x_654); +return x_656; +} +} +} +} +else +{ +lean_object* x_657; lean_object* x_658; lean_object* x_659; lean_object* x_660; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_657 = lean_ctor_get(x_489, 0); +lean_inc(x_657); +x_658 = lean_ctor_get(x_489, 1); +lean_inc(x_658); +if (lean_is_exclusive(x_489)) { + lean_ctor_release(x_489, 0); + lean_ctor_release(x_489, 1); + x_659 = x_489; +} else { + lean_dec_ref(x_489); + x_659 = lean_box(0); +} +if (lean_is_scalar(x_659)) { + x_660 = lean_alloc_ctor(1, 2, 0); +} else { + x_660 = x_659; +} +lean_ctor_set(x_660, 0, x_657); +lean_ctor_set(x_660, 1, x_658); +return x_660; +} +} +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { @@ -15938,6 +21819,32 @@ lean_dec(x_3); return x_13; } } +LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15) { +_start: +{ +size_t x_16; size_t x_17; lean_object* x_18; +x_16 = lean_unbox_usize(x_4); +lean_dec(x_4); +x_17 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_18 = l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___spec__1(x_1, x_2, x_3, x_16, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15); +lean_dec(x_3); +return x_18; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_13; +} +} lean_object* initialize_Init_Grind_Util(uint8_t builtin, lean_object*); lean_object* initialize_Init_Grind_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_LitValues(uint8_t builtin, lean_object*); @@ -15947,6 +21854,7 @@ lean_object* initialize_Lean_Meta_Tactic_Grind_Types(uint8_t builtin, lean_objec lean_object* initialize_Lean_Meta_Tactic_Grind_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Canon(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Beta(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Arith_Internalize(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_Internalize(uint8_t builtin, lean_object* w) { @@ -15980,6 +21888,9 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Beta(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_MatchCond(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Arith_Internalize(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -16093,12 +22004,18 @@ l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGrou lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__3); l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__4(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__4); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_preprocessGroundPattern___closed__5); l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizePattern___closed__1); l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__1 = _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__1(); lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__1); l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2 = _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2(); lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__2); +l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3 = _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__3); +l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4 = _init_l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4(); +lean_mark_persistent(l_Lean_Expr_withAppAux___at_Lean_Meta_Grind_internalize___spec__2___closed__4); l_Lean_Meta_Grind_internalize___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__1); l_Lean_Meta_Grind_internalize___lambda__2___closed__2 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__2(); @@ -16115,6 +22032,26 @@ l_Lean_Meta_Grind_internalize___lambda__2___closed__7 = _init_l_Lean_Meta_Grind_ lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__7); l_Lean_Meta_Grind_internalize___lambda__2___closed__8 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__8(); lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__8); +l_Lean_Meta_Grind_internalize___lambda__2___closed__9 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__9(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__9); +l_Lean_Meta_Grind_internalize___lambda__2___closed__10 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__10(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__10); +l_Lean_Meta_Grind_internalize___lambda__2___closed__11 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__11(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__11); +l_Lean_Meta_Grind_internalize___lambda__2___closed__12 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__12(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__12); +l_Lean_Meta_Grind_internalize___lambda__2___closed__13 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__13(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__13); +l_Lean_Meta_Grind_internalize___lambda__2___closed__14 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__14(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__14); +l_Lean_Meta_Grind_internalize___lambda__2___closed__15 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__15(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__15); +l_Lean_Meta_Grind_internalize___lambda__2___closed__16 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__16(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__16); +l_Lean_Meta_Grind_internalize___lambda__2___closed__17 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__17(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__17); +l_Lean_Meta_Grind_internalize___lambda__2___closed__18 = _init_l_Lean_Meta_Grind_internalize___lambda__2___closed__18(); +lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__2___closed__18); l_Lean_Meta_Grind_internalize___lambda__3___closed__1 = _init_l_Lean_Meta_Grind_internalize___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_internalize___lambda__3___closed__1); l_Lean_Meta_Grind_internalize___lambda__3___closed__2 = _init_l_Lean_Meta_Grind_internalize___lambda__3___closed__2(); @@ -16141,6 +22078,20 @@ l_Lean_Meta_Grind_activateTheorem___closed__3 = _init_l_Lean_Meta_Grind_activate lean_mark_persistent(l_Lean_Meta_Grind_activateTheorem___closed__3); l_Lean_Meta_Grind_activateTheorem___closed__4 = _init_l_Lean_Meta_Grind_activateTheorem___closed__4(); lean_mark_persistent(l_Lean_Meta_Grind_activateTheorem___closed__4); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__1); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__2); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__3); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__4); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__5); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__6); +l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Internalize_0__Lean_Meta_Grind_internalizeMatchCond___closed__7); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Intro.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Intro.c index 485f0c015f..39a526f0f3 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Intro.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Intro.c @@ -33,17 +33,17 @@ uint8_t l_Lean_Expr_isLetFun(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_assertAt(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___spec__3(lean_object*); +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isEagerCasesCandidate(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__7___boxed(lean_object**); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_simp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkEqMP(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Meta_Grind_intros_go___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Meta_Grind_CasesTypes_isEagerSplit(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_add(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_take(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Meta_Grind_intros_go___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__5___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -67,7 +67,6 @@ lean_object* lean_array_to_list(lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_assertAt___closed__1; -lean_object* l_Lean_Meta_Grind_isGrindCasesTarget(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_mkFreshId___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___spec__2___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_FVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -86,7 +85,6 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_ lean_object* l_Lean_LocalContext_mkLocalDecl(lean_object*, lean_object*, lean_object*, lean_object*, uint8_t, uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_intros_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_intros_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_LocalDecl_userName(lean_object*); lean_object* l_Lean_Meta_Grind_addHypothesis(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_bindingDomain_x21(lean_object*); @@ -96,6 +94,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_assertAt___lambda__1(lean_object*, le lean_object* l_Lean_Meta_Grind_shareCommon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_getLocalInstances(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEagerCasesCandidate___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__5___boxed(lean_object**); lean_object* l_Lean_LocalDecl_type(lean_object*); LEAN_EXPORT lean_object* l_List_forM___at_Lean_Meta_Grind_intros_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -3821,45 +3820,42 @@ lean_dec(x_1); return x_11; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isEagerCasesCandidate(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_7; -x_7 = l_Lean_Expr_getAppFn(x_1); -if (lean_obj_tag(x_7) == 4) +lean_object* x_3; +x_3 = l_Lean_Expr_getAppFn(x_2); +if (lean_obj_tag(x_3) == 4) { -lean_object* x_8; lean_object* x_9; -x_8 = lean_ctor_get(x_7, 0); -lean_inc(x_8); -lean_dec(x_7); -x_9 = l_Lean_Meta_Grind_isGrindCasesTarget(x_8, x_4, x_5, x_6); -lean_dec(x_8); -return x_9; +lean_object* x_4; lean_object* x_5; uint8_t x_6; +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +lean_dec(x_3); +x_5 = lean_ctor_get(x_1, 10); +lean_inc(x_5); +lean_dec(x_1); +x_6 = l_Lean_Meta_Grind_CasesTypes_isEagerSplit(x_5, x_4); +lean_dec(x_4); +return x_6; } else { -uint8_t x_10; lean_object* x_11; lean_object* x_12; -lean_dec(x_7); -x_10 = 0; -x_11 = lean_box(x_10); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_6); -return x_12; +uint8_t x_7; +lean_dec(x_3); +lean_dec(x_1); +x_7 = 0; +return x_7; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEagerCasesCandidate___boxed(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_7; -x_7 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); +uint8_t x_3; lean_object* x_4; +x_3 = l_Lean_Meta_Grind_isEagerCasesCandidate(x_1, x_2); lean_dec(x_2); -lean_dec(x_1); -return x_7; +x_4 = lean_box(x_3); +return x_4; } } LEAN_EXPORT lean_object* l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -4069,141 +4065,212 @@ lean_inc(x_1); x_9 = l_Lean_FVarId_getType(x_1, x_4, x_5, x_6, x_7, x_8); if (lean_obj_tag(x_9) == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); -lean_inc(x_11); -lean_dec(x_9); -x_12 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate(x_10, x_4, x_5, x_6, x_7, x_11); -lean_dec(x_10); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_unbox(x_13); -lean_dec(x_13); -if (x_14 == 0) +uint8_t x_10; +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) { -uint8_t x_15; +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_2); +x_13 = l_Lean_Meta_Grind_isEagerCasesCandidate(x_2, x_11); +lean_dec(x_11); +if (x_13 == 0) +{ +lean_object* x_14; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_15 = !lean_is_exclusive(x_12); -if (x_15 == 0) -{ -lean_object* x_16; lean_object* x_17; -x_16 = lean_ctor_get(x_12, 0); -lean_dec(x_16); -x_17 = lean_box(0); -lean_ctor_set(x_12, 0, x_17); -return x_12; +x_14 = lean_box(0); +lean_ctor_set(x_9, 0, x_14); +return x_9; } else { -lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_18 = lean_ctor_get(x_12, 1); -lean_inc(x_18); -lean_dec(x_12); +lean_object* x_15; lean_object* x_16; +lean_free_object(x_9); +x_15 = l_Lean_Expr_fvar___override(x_1); +x_16 = l_Lean_Meta_Grind_cases(x_3, x_15, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_16) == 0) +{ +uint8_t x_17; +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_16, 0); x_19 = lean_box(0); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_18); -return x_20; +x_20 = l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(x_2, x_18, x_19); +lean_dec(x_2); +x_21 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_16, 0, x_21); +return x_16; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_22 = lean_ctor_get(x_16, 0); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_16); +x_24 = lean_box(0); +x_25 = l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(x_2, x_22, x_24); +lean_dec(x_2); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_25); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_23); +return x_27; } } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_12, 1); -lean_inc(x_21); -lean_dec(x_12); -x_22 = l_Lean_Expr_fvar___override(x_1); -x_23 = l_Lean_Meta_Grind_cases(x_2, x_22, x_4, x_5, x_6, x_7, x_21); -if (lean_obj_tag(x_23) == 0) +uint8_t x_28; +lean_dec(x_2); +x_28 = !lean_is_exclusive(x_16); +if (x_28 == 0) { -uint8_t x_24; -x_24 = !lean_is_exclusive(x_23); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_25 = lean_ctor_get(x_23, 0); -x_26 = lean_box(0); -x_27 = l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(x_3, x_25, x_26); -x_28 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_23, 0, x_28); -return x_23; +return x_16; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_29 = lean_ctor_get(x_23, 0); -x_30 = lean_ctor_get(x_23, 1); +lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_29 = lean_ctor_get(x_16, 0); +x_30 = lean_ctor_get(x_16, 1); lean_inc(x_30); lean_inc(x_29); -lean_dec(x_23); -x_31 = lean_box(0); -x_32 = l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(x_3, x_29, x_31); -x_33 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_33, 0, x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_30); -return x_34; -} -} -else -{ -uint8_t x_35; -x_35 = !lean_is_exclusive(x_23); -if (x_35 == 0) -{ -return x_23; -} -else -{ -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_23, 0); -x_37 = lean_ctor_get(x_23, 1); -lean_inc(x_37); -lean_inc(x_36); -lean_dec(x_23); -x_38 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_38, 0, x_36); -lean_ctor_set(x_38, 1, x_37); -return x_38; +lean_dec(x_16); +x_31 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +return x_31; } } } } else { -uint8_t x_39; +lean_object* x_32; lean_object* x_33; uint8_t x_34; +x_32 = lean_ctor_get(x_9, 0); +x_33 = lean_ctor_get(x_9, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_9); +lean_inc(x_2); +x_34 = l_Lean_Meta_Grind_isEagerCasesCandidate(x_2, x_32); +lean_dec(x_32); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); +lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_39 = !lean_is_exclusive(x_9); -if (x_39 == 0) +x_35 = lean_box(0); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_33); +return x_36; +} +else +{ +lean_object* x_37; lean_object* x_38; +x_37 = l_Lean_Expr_fvar___override(x_1); +x_38 = l_Lean_Meta_Grind_cases(x_3, x_37, x_4, x_5, x_6, x_7, x_33); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_41 = x_38; +} else { + lean_dec_ref(x_38); + x_41 = lean_box(0); +} +x_42 = lean_box(0); +x_43 = l_List_mapTR_loop___at___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___spec__1(x_2, x_39, x_42); +lean_dec(x_2); +x_44 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_44, 0, x_43); +if (lean_is_scalar(x_41)) { + x_45 = lean_alloc_ctor(0, 2, 0); +} else { + x_45 = x_41; +} +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_40); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +lean_dec(x_2); +x_46 = lean_ctor_get(x_38, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_38, 1); +lean_inc(x_47); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_48 = x_38; +} else { + lean_dec_ref(x_38); + x_48 = lean_box(0); +} +if (lean_is_scalar(x_48)) { + x_49 = lean_alloc_ctor(1, 2, 0); +} else { + x_49 = x_48; +} +lean_ctor_set(x_49, 0, x_46); +lean_ctor_set(x_49, 1, x_47); +return x_49; +} +} +} +} +else +{ +uint8_t x_50; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_50 = !lean_is_exclusive(x_9); +if (x_50 == 0) { return x_9; } else { -lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_40 = lean_ctor_get(x_9, 0); -x_41 = lean_ctor_get(x_9, 1); -lean_inc(x_41); -lean_inc(x_40); +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_9, 0); +x_52 = lean_ctor_get(x_9, 1); +lean_inc(x_52); +lean_inc(x_51); lean_dec(x_9); -x_42 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_42, 0, x_40); -lean_ctor_set(x_42, 1, x_41); -return x_42; +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; } } } @@ -4215,10 +4282,10 @@ lean_object* x_8; lean_object* x_9; lean_object* x_10; x_8 = lean_ctor_get(x_1, 0); lean_inc(x_8); lean_inc(x_8); -x_9 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___lambda__1___boxed), 8, 3); +x_9 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___lambda__1), 8, 3); lean_closure_set(x_9, 0, x_2); -lean_closure_set(x_9, 1, x_8); -lean_closure_set(x_9, 2, x_1); +lean_closure_set(x_9, 1, x_1); +lean_closure_set(x_9, 2, x_8); x_10 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(x_8, x_9, x_3, x_4, x_5, x_6, x_7); return x_10; } @@ -4232,15 +4299,6 @@ lean_dec(x_1); return x_4; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -lean_object* x_9; -x_9 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyCases_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); -lean_dec(x_3); -return x_9; -} -} LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_applyInjection_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { @@ -6073,297 +6131,337 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_assertAt(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_13 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_isCasesCandidate(x_2, x_8, x_9, x_10, x_11, x_12); -x_14 = lean_ctor_get(x_13, 0); +uint8_t x_13; +lean_inc(x_4); +x_13 = l_Lean_Meta_Grind_isEagerCasesCandidate(x_4, x_2); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_14 = lean_ctor_get(x_4, 0); lean_inc(x_14); -x_15 = lean_unbox(x_14); -lean_dec(x_14); -if (x_15 == 0) +x_15 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__2___boxed), 9, 1); +lean_closure_set(x_15, 0, x_4); +x_16 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_assertAt___lambda__1), 12, 3); +lean_closure_set(x_16, 0, x_2); +lean_closure_set(x_16, 1, x_1); +lean_closure_set(x_16, 2, x_3); +x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_17, 0, x_15); +lean_closure_set(x_17, 1, x_16); +x_18 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__5___closed__1; +x_19 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_19, 0, x_17); +lean_closure_set(x_19, 1, x_18); +x_20 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_14, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_20) == 0) { -uint8_t x_16; -x_16 = !lean_is_exclusive(x_13); -if (x_16 == 0) +lean_object* x_21; uint8_t x_22; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get_uint8(x_21, sizeof(void*)*25); +if (x_22 == 0) { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_17 = lean_ctor_get(x_13, 1); -x_18 = lean_ctor_get(x_13, 0); -lean_dec(x_18); -x_19 = lean_ctor_get(x_4, 0); -lean_inc(x_19); -x_20 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__2___boxed), 9, 1); -lean_closure_set(x_20, 0, x_4); -x_21 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_assertAt___lambda__1), 12, 3); -lean_closure_set(x_21, 0, x_2); -lean_closure_set(x_21, 1, x_1); -lean_closure_set(x_21, 2, x_3); -x_22 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_22, 0, x_20); -lean_closure_set(x_22, 1, x_21); -x_23 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__5___closed__1; -x_24 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_24, 0, x_22); -lean_closure_set(x_24, 1, x_23); -x_25 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_19, x_24, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_17); -if (lean_obj_tag(x_25) == 0) +uint8_t x_23; +x_23 = !lean_is_exclusive(x_20); +if (x_23 == 0) { -lean_object* x_26; uint8_t x_27; -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -x_27 = lean_ctor_get_uint8(x_26, sizeof(void*)*25); -if (x_27 == 0) -{ -uint8_t x_28; -x_28 = !lean_is_exclusive(x_25); -if (x_28 == 0) -{ -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_25, 0); -lean_dec(x_29); -x_30 = lean_box(0); -lean_ctor_set_tag(x_13, 1); -lean_ctor_set(x_13, 1, x_30); -lean_ctor_set(x_13, 0, x_26); -lean_ctor_set(x_25, 0, x_13); -return x_25; +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_20, 0); +lean_dec(x_24); +x_25 = lean_box(0); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_21); +lean_ctor_set(x_26, 1, x_25); +lean_ctor_set(x_20, 0, x_26); +return x_20; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_25, 1); -lean_inc(x_31); -lean_dec(x_25); -x_32 = lean_box(0); -lean_ctor_set_tag(x_13, 1); -lean_ctor_set(x_13, 1, x_32); -lean_ctor_set(x_13, 0, x_26); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_13); -lean_ctor_set(x_33, 1, x_31); -return x_33; +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_27 = lean_ctor_get(x_20, 1); +lean_inc(x_27); +lean_dec(x_20); +x_28 = lean_box(0); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_21); +lean_ctor_set(x_29, 1, x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_27); +return x_30; } } else { -uint8_t x_34; -lean_dec(x_26); -lean_free_object(x_13); -x_34 = !lean_is_exclusive(x_25); -if (x_34 == 0) +uint8_t x_31; +lean_dec(x_21); +x_31 = !lean_is_exclusive(x_20); +if (x_31 == 0) { -lean_object* x_35; lean_object* x_36; -x_35 = lean_ctor_get(x_25, 0); -lean_dec(x_35); -x_36 = lean_box(0); -lean_ctor_set(x_25, 0, x_36); -return x_25; +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_20, 0); +lean_dec(x_32); +x_33 = lean_box(0); +lean_ctor_set(x_20, 0, x_33); +return x_20; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_25, 1); -lean_inc(x_37); -lean_dec(x_25); -x_38 = lean_box(0); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_37); -return x_39; +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_20, 1); +lean_inc(x_34); +lean_dec(x_20); +x_35 = lean_box(0); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_34); +return x_36; } } } else { -uint8_t x_40; -lean_free_object(x_13); -x_40 = !lean_is_exclusive(x_25); -if (x_40 == 0) +uint8_t x_37; +x_37 = !lean_is_exclusive(x_20); +if (x_37 == 0) { -return x_25; +return x_20; } else { -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_25, 0); -x_42 = lean_ctor_get(x_25, 1); -lean_inc(x_42); -lean_inc(x_41); -lean_dec(x_25); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -return x_43; +lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_38 = lean_ctor_get(x_20, 0); +x_39 = lean_ctor_get(x_20, 1); +lean_inc(x_39); +lean_inc(x_38); +lean_dec(x_20); +x_40 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } } else { -lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -x_44 = lean_ctor_get(x_13, 1); +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_41 = l_Lean_Meta_Grind_assertAt___closed__2; +x_42 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_41, x_10, x_11, x_12); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 1); lean_inc(x_44); -lean_dec(x_13); -x_45 = lean_ctor_get(x_4, 0); -lean_inc(x_45); -x_46 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__2___boxed), 9, 1); -lean_closure_set(x_46, 0, x_4); -x_47 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_assertAt___lambda__1), 12, 3); -lean_closure_set(x_47, 0, x_2); -lean_closure_set(x_47, 1, x_1); -lean_closure_set(x_47, 2, x_3); -x_48 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_48, 0, x_46); -lean_closure_set(x_48, 1, x_47); -x_49 = l___private_Lean_Meta_Tactic_Grind_Intro_0__Lean_Meta_Grind_introNext___lambda__5___closed__1; -x_50 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_50, 0, x_48); -lean_closure_set(x_50, 1, x_49); -x_51 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_45, x_50, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_44); -if (lean_obj_tag(x_51) == 0) +lean_dec(x_42); +x_45 = !lean_is_exclusive(x_4); +if (x_45 == 0) { -lean_object* x_52; uint8_t x_53; -x_52 = lean_ctor_get(x_51, 0); -lean_inc(x_52); -x_53 = lean_ctor_get_uint8(x_52, sizeof(void*)*25); -if (x_53 == 0) -{ -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; -x_54 = lean_ctor_get(x_51, 1); -lean_inc(x_54); -if (lean_is_exclusive(x_51)) { - lean_ctor_release(x_51, 0); - lean_ctor_release(x_51, 1); - x_55 = x_51; -} else { - lean_dec_ref(x_51); - x_55 = lean_box(0); -} -x_56 = lean_box(0); -x_57 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_57, 0, x_52); -lean_ctor_set(x_57, 1, x_56); -if (lean_is_scalar(x_55)) { - x_58 = lean_alloc_ctor(0, 2, 0); -} else { - x_58 = x_55; -} -lean_ctor_set(x_58, 0, x_57); -lean_ctor_set(x_58, 1, x_54); -return x_58; -} -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -lean_dec(x_52); -x_59 = lean_ctor_get(x_51, 1); -lean_inc(x_59); -if (lean_is_exclusive(x_51)) { - lean_ctor_release(x_51, 0); - lean_ctor_release(x_51, 1); - x_60 = x_51; -} else { - lean_dec_ref(x_51); - x_60 = lean_box(0); -} -x_61 = lean_box(0); -if (lean_is_scalar(x_60)) { - x_62 = lean_alloc_ctor(0, 2, 0); -} else { - x_62 = x_60; -} -lean_ctor_set(x_62, 0, x_61); -lean_ctor_set(x_62, 1, x_59); -return x_62; -} -} -else -{ -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_63 = lean_ctor_get(x_51, 0); -lean_inc(x_63); -x_64 = lean_ctor_get(x_51, 1); -lean_inc(x_64); -if (lean_is_exclusive(x_51)) { - lean_ctor_release(x_51, 0); - lean_ctor_release(x_51, 1); - x_65 = x_51; -} else { - lean_dec_ref(x_51); - x_65 = lean_box(0); -} -if (lean_is_scalar(x_65)) { - x_66 = lean_alloc_ctor(1, 2, 0); -} else { - x_66 = x_65; -} -lean_ctor_set(x_66, 0, x_63); -lean_ctor_set(x_66, 1, x_64); -return x_66; -} -} -} -else -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; -x_67 = lean_ctor_get(x_13, 1); -lean_inc(x_67); -lean_dec(x_13); -x_68 = l_Lean_Meta_Grind_assertAt___closed__2; -x_69 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_68, x_10, x_11, x_67); -x_70 = lean_ctor_get(x_69, 0); -lean_inc(x_70); -x_71 = lean_ctor_get(x_69, 1); -lean_inc(x_71); -lean_dec(x_69); -x_72 = !lean_is_exclusive(x_4); -if (x_72 == 0) -{ -lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_73 = lean_ctor_get(x_4, 0); -x_74 = lean_ctor_get(x_4, 1); -x_75 = lean_ctor_get(x_4, 2); -x_76 = lean_ctor_get(x_4, 3); -x_77 = lean_ctor_get(x_4, 4); -x_78 = lean_ctor_get(x_4, 5); -x_79 = lean_ctor_get(x_4, 6); -x_80 = lean_ctor_get(x_4, 7); -x_81 = lean_ctor_get(x_4, 8); -x_82 = lean_ctor_get(x_4, 9); -x_83 = lean_ctor_get(x_4, 10); -x_84 = lean_ctor_get(x_4, 11); -x_85 = lean_ctor_get(x_4, 12); -x_86 = lean_ctor_get(x_4, 13); -x_87 = lean_ctor_get(x_4, 14); -x_88 = lean_ctor_get(x_4, 15); -x_89 = lean_ctor_get(x_4, 16); -x_90 = lean_ctor_get(x_4, 17); -x_91 = lean_ctor_get(x_4, 18); -x_92 = lean_ctor_get(x_4, 19); -x_93 = lean_ctor_get(x_4, 20); -x_94 = lean_ctor_get(x_4, 21); -x_95 = lean_ctor_get(x_4, 22); -x_96 = lean_ctor_get(x_4, 23); -x_97 = lean_ctor_get(x_4, 24); +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +x_46 = lean_ctor_get(x_4, 0); +x_47 = lean_ctor_get(x_4, 1); +x_48 = lean_ctor_get(x_4, 2); +x_49 = lean_ctor_get(x_4, 3); +x_50 = lean_ctor_get(x_4, 4); +x_51 = lean_ctor_get(x_4, 5); +x_52 = lean_ctor_get(x_4, 6); +x_53 = lean_ctor_get(x_4, 7); +x_54 = lean_ctor_get(x_4, 8); +x_55 = lean_ctor_get(x_4, 9); +x_56 = lean_ctor_get(x_4, 10); +x_57 = lean_ctor_get(x_4, 11); +x_58 = lean_ctor_get(x_4, 12); +x_59 = lean_ctor_get(x_4, 13); +x_60 = lean_ctor_get(x_4, 14); +x_61 = lean_ctor_get(x_4, 15); +x_62 = lean_ctor_get(x_4, 16); +x_63 = lean_ctor_get(x_4, 17); +x_64 = lean_ctor_get(x_4, 18); +x_65 = lean_ctor_get(x_4, 19); +x_66 = lean_ctor_get(x_4, 20); +x_67 = lean_ctor_get(x_4, 21); +x_68 = lean_ctor_get(x_4, 22); +x_69 = lean_ctor_get(x_4, 23); +x_70 = lean_ctor_get(x_4, 24); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); -x_98 = l_Lean_MVarId_assert(x_73, x_70, x_2, x_1, x_8, x_9, x_10, x_11, x_71); -if (lean_obj_tag(x_98) == 0) +x_71 = l_Lean_MVarId_assert(x_46, x_43, x_2, x_1, x_8, x_9, x_10, x_11, x_44); +if (lean_obj_tag(x_71) == 0) { -lean_object* x_99; lean_object* x_100; lean_object* x_101; -x_99 = lean_ctor_get(x_98, 0); -lean_inc(x_99); -x_100 = lean_ctor_get(x_98, 1); -lean_inc(x_100); -lean_dec(x_98); -lean_ctor_set(x_4, 0, x_99); -x_101 = l_Lean_Meta_Grind_intros(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_100); -return x_101; +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +x_73 = lean_ctor_get(x_71, 1); +lean_inc(x_73); +lean_dec(x_71); +lean_ctor_set(x_4, 0, x_72); +x_74 = l_Lean_Meta_Grind_intros(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_73); +return x_74; } else { -uint8_t x_102; +uint8_t x_75; lean_free_object(x_4); +lean_dec(x_70); +lean_dec(x_69); +lean_dec(x_68); +lean_dec(x_67); +lean_dec(x_66); +lean_dec(x_65); +lean_dec(x_64); +lean_dec(x_63); +lean_dec(x_62); +lean_dec(x_61); +lean_dec(x_60); +lean_dec(x_59); +lean_dec(x_58); +lean_dec(x_57); +lean_dec(x_56); +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_53); +lean_dec(x_52); +lean_dec(x_51); +lean_dec(x_50); +lean_dec(x_49); +lean_dec(x_48); +lean_dec(x_47); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +x_75 = !lean_is_exclusive(x_71); +if (x_75 == 0) +{ +return x_71; +} +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_71, 0); +x_77 = lean_ctor_get(x_71, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_71); +x_78 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_78, 0, x_76); +lean_ctor_set(x_78, 1, x_77); +return x_78; +} +} +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; uint8_t x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_79 = lean_ctor_get(x_4, 0); +x_80 = lean_ctor_get(x_4, 1); +x_81 = lean_ctor_get(x_4, 2); +x_82 = lean_ctor_get(x_4, 3); +x_83 = lean_ctor_get(x_4, 4); +x_84 = lean_ctor_get(x_4, 5); +x_85 = lean_ctor_get(x_4, 6); +x_86 = lean_ctor_get_uint8(x_4, sizeof(void*)*25); +x_87 = lean_ctor_get(x_4, 7); +x_88 = lean_ctor_get(x_4, 8); +x_89 = lean_ctor_get(x_4, 9); +x_90 = lean_ctor_get(x_4, 10); +x_91 = lean_ctor_get(x_4, 11); +x_92 = lean_ctor_get(x_4, 12); +x_93 = lean_ctor_get(x_4, 13); +x_94 = lean_ctor_get(x_4, 14); +x_95 = lean_ctor_get(x_4, 15); +x_96 = lean_ctor_get(x_4, 16); +x_97 = lean_ctor_get(x_4, 17); +x_98 = lean_ctor_get(x_4, 18); +x_99 = lean_ctor_get(x_4, 19); +x_100 = lean_ctor_get(x_4, 20); +x_101 = lean_ctor_get(x_4, 21); +x_102 = lean_ctor_get(x_4, 22); +x_103 = lean_ctor_get(x_4, 23); +x_104 = lean_ctor_get(x_4, 24); +lean_inc(x_104); +lean_inc(x_103); +lean_inc(x_102); +lean_inc(x_101); +lean_inc(x_100); +lean_inc(x_99); +lean_inc(x_98); +lean_inc(x_97); +lean_inc(x_96); +lean_inc(x_95); +lean_inc(x_94); +lean_inc(x_93); +lean_inc(x_92); +lean_inc(x_91); +lean_inc(x_90); +lean_inc(x_89); +lean_inc(x_88); +lean_inc(x_87); +lean_inc(x_85); +lean_inc(x_84); +lean_inc(x_83); +lean_inc(x_82); +lean_inc(x_81); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_4); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_105 = l_Lean_MVarId_assert(x_79, x_43, x_2, x_1, x_8, x_9, x_10, x_11, x_44); +if (lean_obj_tag(x_105) == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; +x_106 = lean_ctor_get(x_105, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +lean_dec(x_105); +x_108 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_108, 0, x_106); +lean_ctor_set(x_108, 1, x_80); +lean_ctor_set(x_108, 2, x_81); +lean_ctor_set(x_108, 3, x_82); +lean_ctor_set(x_108, 4, x_83); +lean_ctor_set(x_108, 5, x_84); +lean_ctor_set(x_108, 6, x_85); +lean_ctor_set(x_108, 7, x_87); +lean_ctor_set(x_108, 8, x_88); +lean_ctor_set(x_108, 9, x_89); +lean_ctor_set(x_108, 10, x_90); +lean_ctor_set(x_108, 11, x_91); +lean_ctor_set(x_108, 12, x_92); +lean_ctor_set(x_108, 13, x_93); +lean_ctor_set(x_108, 14, x_94); +lean_ctor_set(x_108, 15, x_95); +lean_ctor_set(x_108, 16, x_96); +lean_ctor_set(x_108, 17, x_97); +lean_ctor_set(x_108, 18, x_98); +lean_ctor_set(x_108, 19, x_99); +lean_ctor_set(x_108, 20, x_100); +lean_ctor_set(x_108, 21, x_101); +lean_ctor_set(x_108, 22, x_102); +lean_ctor_set(x_108, 23, x_103); +lean_ctor_set(x_108, 24, x_104); +lean_ctor_set_uint8(x_108, sizeof(void*)*25, x_86); +x_109 = l_Lean_Meta_Grind_intros(x_3, x_108, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_107); +return x_109; +} +else +{ +lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; +lean_dec(x_104); +lean_dec(x_103); +lean_dec(x_102); +lean_dec(x_101); +lean_dec(x_100); +lean_dec(x_99); +lean_dec(x_98); lean_dec(x_97); lean_dec(x_96); lean_dec(x_95); @@ -6375,19 +6473,12 @@ lean_dec(x_90); lean_dec(x_89); lean_dec(x_88); lean_dec(x_87); -lean_dec(x_86); lean_dec(x_85); lean_dec(x_84); lean_dec(x_83); lean_dec(x_82); lean_dec(x_81); lean_dec(x_80); -lean_dec(x_79); -lean_dec(x_78); -lean_dec(x_77); -lean_dec(x_76); -lean_dec(x_75); -lean_dec(x_74); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -6396,179 +6487,26 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); -x_102 = !lean_is_exclusive(x_98); -if (x_102 == 0) -{ -return x_98; -} -else -{ -lean_object* x_103; lean_object* x_104; lean_object* x_105; -x_103 = lean_ctor_get(x_98, 0); -x_104 = lean_ctor_get(x_98, 1); -lean_inc(x_104); -lean_inc(x_103); -lean_dec(x_98); -x_105 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_105, 0, x_103); -lean_ctor_set(x_105, 1, x_104); -return x_105; -} -} -} -else -{ -lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; uint8_t x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; -x_106 = lean_ctor_get(x_4, 0); -x_107 = lean_ctor_get(x_4, 1); -x_108 = lean_ctor_get(x_4, 2); -x_109 = lean_ctor_get(x_4, 3); -x_110 = lean_ctor_get(x_4, 4); -x_111 = lean_ctor_get(x_4, 5); -x_112 = lean_ctor_get(x_4, 6); -x_113 = lean_ctor_get_uint8(x_4, sizeof(void*)*25); -x_114 = lean_ctor_get(x_4, 7); -x_115 = lean_ctor_get(x_4, 8); -x_116 = lean_ctor_get(x_4, 9); -x_117 = lean_ctor_get(x_4, 10); -x_118 = lean_ctor_get(x_4, 11); -x_119 = lean_ctor_get(x_4, 12); -x_120 = lean_ctor_get(x_4, 13); -x_121 = lean_ctor_get(x_4, 14); -x_122 = lean_ctor_get(x_4, 15); -x_123 = lean_ctor_get(x_4, 16); -x_124 = lean_ctor_get(x_4, 17); -x_125 = lean_ctor_get(x_4, 18); -x_126 = lean_ctor_get(x_4, 19); -x_127 = lean_ctor_get(x_4, 20); -x_128 = lean_ctor_get(x_4, 21); -x_129 = lean_ctor_get(x_4, 22); -x_130 = lean_ctor_get(x_4, 23); -x_131 = lean_ctor_get(x_4, 24); -lean_inc(x_131); -lean_inc(x_130); -lean_inc(x_129); -lean_inc(x_128); -lean_inc(x_127); -lean_inc(x_126); -lean_inc(x_125); -lean_inc(x_124); -lean_inc(x_123); -lean_inc(x_122); -lean_inc(x_121); -lean_inc(x_120); -lean_inc(x_119); -lean_inc(x_118); -lean_inc(x_117); -lean_inc(x_116); -lean_inc(x_115); -lean_inc(x_114); -lean_inc(x_112); -lean_inc(x_111); +x_110 = lean_ctor_get(x_105, 0); lean_inc(x_110); -lean_inc(x_109); -lean_inc(x_108); -lean_inc(x_107); -lean_inc(x_106); -lean_dec(x_4); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -x_132 = l_Lean_MVarId_assert(x_106, x_70, x_2, x_1, x_8, x_9, x_10, x_11, x_71); -if (lean_obj_tag(x_132) == 0) -{ -lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; -x_133 = lean_ctor_get(x_132, 0); -lean_inc(x_133); -x_134 = lean_ctor_get(x_132, 1); -lean_inc(x_134); -lean_dec(x_132); -x_135 = lean_alloc_ctor(0, 25, 1); -lean_ctor_set(x_135, 0, x_133); -lean_ctor_set(x_135, 1, x_107); -lean_ctor_set(x_135, 2, x_108); -lean_ctor_set(x_135, 3, x_109); -lean_ctor_set(x_135, 4, x_110); -lean_ctor_set(x_135, 5, x_111); -lean_ctor_set(x_135, 6, x_112); -lean_ctor_set(x_135, 7, x_114); -lean_ctor_set(x_135, 8, x_115); -lean_ctor_set(x_135, 9, x_116); -lean_ctor_set(x_135, 10, x_117); -lean_ctor_set(x_135, 11, x_118); -lean_ctor_set(x_135, 12, x_119); -lean_ctor_set(x_135, 13, x_120); -lean_ctor_set(x_135, 14, x_121); -lean_ctor_set(x_135, 15, x_122); -lean_ctor_set(x_135, 16, x_123); -lean_ctor_set(x_135, 17, x_124); -lean_ctor_set(x_135, 18, x_125); -lean_ctor_set(x_135, 19, x_126); -lean_ctor_set(x_135, 20, x_127); -lean_ctor_set(x_135, 21, x_128); -lean_ctor_set(x_135, 22, x_129); -lean_ctor_set(x_135, 23, x_130); -lean_ctor_set(x_135, 24, x_131); -lean_ctor_set_uint8(x_135, sizeof(void*)*25, x_113); -x_136 = l_Lean_Meta_Grind_intros(x_3, x_135, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_134); -return x_136; -} -else -{ -lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; -lean_dec(x_131); -lean_dec(x_130); -lean_dec(x_129); -lean_dec(x_128); -lean_dec(x_127); -lean_dec(x_126); -lean_dec(x_125); -lean_dec(x_124); -lean_dec(x_123); -lean_dec(x_122); -lean_dec(x_121); -lean_dec(x_120); -lean_dec(x_119); -lean_dec(x_118); -lean_dec(x_117); -lean_dec(x_116); -lean_dec(x_115); -lean_dec(x_114); -lean_dec(x_112); -lean_dec(x_111); -lean_dec(x_110); -lean_dec(x_109); -lean_dec(x_108); -lean_dec(x_107); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -x_137 = lean_ctor_get(x_132, 0); -lean_inc(x_137); -x_138 = lean_ctor_get(x_132, 1); -lean_inc(x_138); -if (lean_is_exclusive(x_132)) { - lean_ctor_release(x_132, 0); - lean_ctor_release(x_132, 1); - x_139 = x_132; +x_111 = lean_ctor_get(x_105, 1); +lean_inc(x_111); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_112 = x_105; } else { - lean_dec_ref(x_132); - x_139 = lean_box(0); + lean_dec_ref(x_105); + x_112 = lean_box(0); } -if (lean_is_scalar(x_139)) { - x_140 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_112)) { + x_113 = lean_alloc_ctor(1, 2, 0); } else { - x_140 = x_139; + x_113 = x_112; } -lean_ctor_set(x_140, 0, x_137); -lean_ctor_set(x_140, 1, x_138); -return x_140; +lean_ctor_set(x_113, 0, x_110); +lean_ctor_set(x_113, 1, x_111); +return x_113; } } } @@ -6607,7 +6545,7 @@ x_32 = lean_ctor_get(x_1, 21); x_33 = lean_ctor_get(x_1, 22); x_34 = lean_ctor_get(x_1, 23); x_35 = lean_ctor_get(x_1, 24); -x_36 = l_Std_Queue_dequeue_x3f___rarg(x_27); +x_36 = l_Std_Queue_dequeue_x3f___rarg(x_28); if (lean_obj_tag(x_36) == 0) { lean_object* x_37; lean_object* x_38; @@ -6619,7 +6557,7 @@ lean_dec(x_32); lean_dec(x_31); lean_dec(x_30); lean_dec(x_29); -lean_dec(x_28); +lean_dec(x_27); lean_dec(x_26); lean_dec(x_25); lean_dec(x_24); @@ -6669,7 +6607,7 @@ lean_inc(x_44); x_45 = lean_ctor_get(x_41, 2); lean_inc(x_45); lean_dec(x_41); -lean_ctor_set(x_1, 16, x_42); +lean_ctor_set(x_1, 17, x_42); x_46 = l_Lean_Meta_Grind_assertAt(x_43, x_44, x_45, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); if (lean_obj_tag(x_46) == 0) { @@ -6740,7 +6678,7 @@ lean_inc(x_60); x_61 = lean_ctor_get(x_57, 2); lean_inc(x_61); lean_dec(x_57); -lean_ctor_set(x_1, 16, x_58); +lean_ctor_set(x_1, 17, x_58); x_62 = l_Lean_Meta_Grind_assertAt(x_59, x_60, x_61, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); if (lean_obj_tag(x_62) == 0) { @@ -6850,7 +6788,7 @@ lean_inc(x_74); lean_inc(x_73); lean_inc(x_72); lean_dec(x_1); -x_98 = l_Std_Queue_dequeue_x3f___rarg(x_89); +x_98 = l_Std_Queue_dequeue_x3f___rarg(x_90); if (lean_obj_tag(x_98) == 0) { lean_object* x_99; lean_object* x_100; @@ -6861,7 +6799,7 @@ lean_dec(x_94); lean_dec(x_93); lean_dec(x_92); lean_dec(x_91); -lean_dec(x_90); +lean_dec(x_89); lean_dec(x_88); lean_dec(x_87); lean_dec(x_86); @@ -6932,8 +6870,8 @@ lean_ctor_set(x_108, 12, x_85); lean_ctor_set(x_108, 13, x_86); lean_ctor_set(x_108, 14, x_87); lean_ctor_set(x_108, 15, x_88); -lean_ctor_set(x_108, 16, x_104); -lean_ctor_set(x_108, 17, x_90); +lean_ctor_set(x_108, 16, x_89); +lean_ctor_set(x_108, 17, x_104); lean_ctor_set(x_108, 18, x_91); lean_ctor_set(x_108, 19, x_92); lean_ctor_set(x_108, 20, x_93); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Main.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Main.c index d317374aeb..38e116640a 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Main.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Main.c @@ -17,38 +17,41 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_i lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_mkParams___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkNatLit(lean_object*); static lean_object* l_Lean_Meta_Grind_mkParams___closed__6; lean_object* lean_mk_empty_array_with_capacity(lean_object*); -static double l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1; +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1; lean_object* l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__11; extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__3; lean_object* l_Lean_Meta_Grind_propagateForallPropDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_joinSep(lean_object*, lean_object*); size_t lean_uint64_to_usize(uint64_t); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__8; lean_object* l_Lean_Meta_Grind_getSimprocs___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_PersistentArray_push___rarg(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__5; +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__9; +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5; static lean_object* l_Lean_Meta_Grind_mkParams___closed__1; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Meta_Grind_mkMethods___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_filterTR_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___spec__2(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__1; static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__3; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); -lean_object* l_Lean_Meta_Grind_solve(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_solve(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_mkParams___closed__4; lean_object* l_Lean_MVarId_revertAll(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getSimpContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -57,48 +60,56 @@ lean_object* l_Std_Queue_empty(lean_object*); lean_object* l_Lean_Meta_Grind_activateTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__1; +lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_Result_toMessageData___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getFalseExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_mkParams___closed__5; size_t lean_usize_of_nat(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GrindM_run(lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__10; lean_object* l_Lean_Meta_Grind_Goal_checkInvariants(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_st_ref_take(lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_main___lambda__2___closed__3; static lean_object* l_Lean_Meta_Grind_main___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__3; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__4___boxed(lean_object**); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_propagateProjEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MessageData_ofFormat(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getTrueExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; lean_object* lean_st_ref_get(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkParams(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_List_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2; lean_object* l_Lean_Meta_appendTagSuffix(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forM___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__3___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_mkMethods___closed__1; +static double l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2; +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_Result_hasFailures(lean_object*); lean_object* l_ShareCommon_mkStateImpl(lean_object*); +lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__5; uint8_t lean_name_eq(lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GrindM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Meta_Grind_builtinPropagatorsRef; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_clearAuxDecls(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -108,32 +119,32 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Gr LEAN_EXPORT lean_object* l_Lean_PersistentArray_forInAux___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_forIn___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_goalToMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); double l_Float_ofScientific(lean_object*, uint8_t, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6; static lean_object* l_Lean_Meta_Grind_main___lambda__2___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__6; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4; lean_object* l_Lean_Meta_Grind_getNatZeroExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_ensureNoMVar(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkMethods___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_empty___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__1; extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__3; -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_hasFailures___boxed(lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__1; uint64_t l_Lean_Name_hash___override(lean_object*); -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Lean_Meta_Grind_mkMethods___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_transformTarget(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -143,8 +154,8 @@ lean_object* l_List_reverse___rarg(lean_object*); size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__4; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_ensureProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_isTracingEnabledForCore(lean_object*, lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedEMatchTheorems___spec__1; static lean_object* l_Lean_Meta_Grind_mkParams___closed__3; @@ -153,21 +164,24 @@ static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__8; lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkParams___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_unfoldReducible(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__9; lean_object* l_Lean_Meta_Grind_propagateForallPropUp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__6; +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__4; lean_object* lean_array_get_size(lean_object*); extern lean_object* l_Lean_ShareCommon_objectFactory; lean_object* lean_state_sharecommon(lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l_Lean_Meta_Grind_GrindM_run___rarg___closed__2; -LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__4; lean_object* l_Lean_Meta_Grind_ppGoals(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_betaReduce___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_instInhabitedMatchEqnsExtState___spec__1; size_t lean_usize_land(size_t, size_t); +static lean_object* l_Lean_Meta_Grind_Result_toMessageData___closed__7; static lean_object* _init_l_Lean_Meta_Grind_mkParams___closed__1() { _start: { @@ -1174,117 +1188,119 @@ return x_3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GrindM_run___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_10 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__5; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_10 = lean_box(0); +x_11 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__5; +x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); -x_13 = l_Lean_ShareCommon_objectFactory; -x_14 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__8; -x_15 = lean_state_sharecommon(x_13, x_12, x_14); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +x_14 = l_Lean_ShareCommon_objectFactory; +x_15 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__8; +x_16 = lean_state_sharecommon(x_14, x_13, x_15); +x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); -lean_dec(x_15); -x_18 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__9; -x_19 = lean_state_sharecommon(x_13, x_17, x_18); -x_20 = lean_ctor_get(x_19, 0); -lean_inc(x_20); -x_21 = lean_ctor_get(x_19, 1); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__9; +x_20 = lean_state_sharecommon(x_14, x_18, x_19); +x_21 = lean_ctor_get(x_20, 0); lean_inc(x_21); -lean_dec(x_19); -x_22 = lean_ctor_get(x_3, 5); -x_23 = lean_ctor_get(x_3, 4); -x_24 = lean_ctor_get(x_3, 0); -x_25 = l_Lean_Meta_Grind_mkMethods(x_4, x_7, x_8, x_9); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -x_27 = lean_ctor_get(x_25, 1); -lean_inc(x_27); -lean_dec(x_25); -lean_inc(x_24); +x_22 = lean_ctor_get(x_20, 1); lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_ctor_get(x_3, 5); +x_24 = lean_ctor_get(x_3, 4); +x_25 = lean_ctor_get(x_3, 0); +x_26 = l_Lean_Meta_Grind_mkMethods(x_4, x_7, x_8, x_9); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +lean_inc(x_25); lean_inc(x_23); -x_28 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_28, 0, x_23); -lean_ctor_set(x_28, 1, x_22); -lean_ctor_set(x_28, 2, x_2); -lean_ctor_set(x_28, 3, x_24); -x_29 = lean_unsigned_to_nat(1u); -x_30 = l_Lean_Meta_Grind_mkParams___closed__2; -x_31 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__12; -x_32 = lean_box(0); -x_33 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_33, 0, x_21); -lean_ctor_set(x_33, 1, x_29); -lean_ctor_set(x_33, 2, x_30); -lean_ctor_set(x_33, 3, x_31); -lean_ctor_set(x_33, 4, x_16); -lean_ctor_set(x_33, 5, x_11); -lean_ctor_set(x_33, 6, x_20); -lean_ctor_set(x_33, 7, x_32); -x_34 = lean_st_mk_ref(x_33, x_27); -x_35 = lean_ctor_get(x_34, 0); -lean_inc(x_35); -x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_24); +x_29 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_29, 0, x_24); +lean_ctor_set(x_29, 1, x_23); +lean_ctor_set(x_29, 2, x_2); +lean_ctor_set(x_29, 3, x_25); +x_30 = lean_unsigned_to_nat(1u); +x_31 = l_Lean_Meta_Grind_mkParams___closed__2; +x_32 = l_Lean_Meta_Grind_GrindM_run___rarg___closed__12; +x_33 = lean_box(0); +x_34 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_34, 0, x_22); +lean_ctor_set(x_34, 1, x_30); +lean_ctor_set(x_34, 2, x_31); +lean_ctor_set(x_34, 3, x_32); +lean_ctor_set(x_34, 4, x_17); +lean_ctor_set(x_34, 5, x_12); +lean_ctor_set(x_34, 6, x_21); +lean_ctor_set(x_34, 7, x_33); +lean_ctor_set(x_34, 8, x_10); +x_35 = lean_st_mk_ref(x_34, x_28); +x_36 = lean_ctor_get(x_35, 0); lean_inc(x_36); -lean_dec(x_34); -lean_inc(x_35); -x_37 = lean_apply_8(x_1, x_26, x_28, x_35, x_5, x_6, x_7, x_8, x_36); -if (lean_obj_tag(x_37) == 0) +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +lean_inc(x_36); +x_38 = lean_apply_8(x_1, x_27, x_29, x_36, x_5, x_6, x_7, x_8, x_37); +if (lean_obj_tag(x_38) == 0) { -lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; -x_38 = lean_ctor_get(x_37, 0); -lean_inc(x_38); -x_39 = lean_ctor_get(x_37, 1); +lean_object* x_39; lean_object* x_40; lean_object* x_41; uint8_t x_42; +x_39 = lean_ctor_get(x_38, 0); lean_inc(x_39); -lean_dec(x_37); -x_40 = lean_st_ref_get(x_35, x_39); -lean_dec(x_35); -x_41 = !lean_is_exclusive(x_40); -if (x_41 == 0) +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = lean_st_ref_get(x_36, x_40); +lean_dec(x_36); +x_42 = !lean_is_exclusive(x_41); +if (x_42 == 0) { -lean_object* x_42; -x_42 = lean_ctor_get(x_40, 0); -lean_dec(x_42); -lean_ctor_set(x_40, 0, x_38); -return x_40; +lean_object* x_43; +x_43 = lean_ctor_get(x_41, 0); +lean_dec(x_43); +lean_ctor_set(x_41, 0, x_39); +return x_41; } else { -lean_object* x_43; lean_object* x_44; -x_43 = lean_ctor_get(x_40, 1); -lean_inc(x_43); -lean_dec(x_40); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_38); -lean_ctor_set(x_44, 1, x_43); -return x_44; +lean_object* x_44; lean_object* x_45; +x_44 = lean_ctor_get(x_41, 1); +lean_inc(x_44); +lean_dec(x_41); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_39); +lean_ctor_set(x_45, 1, x_44); +return x_45; } } else { -uint8_t x_45; -lean_dec(x_35); -x_45 = !lean_is_exclusive(x_37); -if (x_45 == 0) +uint8_t x_46; +lean_dec(x_36); +x_46 = !lean_is_exclusive(x_38); +if (x_46 == 0) { -return x_37; +return x_38; } else { -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_ctor_get(x_37, 0); -x_47 = lean_ctor_get(x_37, 1); +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_38, 0); +x_48 = lean_ctor_get(x_38, 1); +lean_inc(x_48); lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_37); -x_48 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_48, 0, x_46); -lean_ctor_set(x_48, 1, x_47); -return x_48; +lean_dec(x_38); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +return x_49; } } } @@ -2448,7 +2464,7 @@ return x_1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_11 = l_Lean_Meta_Grind_getTrueExpr___rarg(x_5, x_6, x_7, x_8, x_9, x_10); x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); @@ -2469,63 +2485,65 @@ lean_inc(x_19); lean_dec(x_17); x_20 = lean_ctor_get(x_2, 1); lean_inc(x_20); -x_21 = lean_box(0); -x_22 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__1; -x_23 = l_Lean_Meta_Grind_mkParams___closed__2; -x_24 = l_Lean_PersistentHashMap_empty___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__1; -x_25 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; -x_26 = 0; -x_27 = lean_unsigned_to_nat(0u); -x_28 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__3; -x_29 = l_Lean_Meta_Grind_mkParams___closed__6; -x_30 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__2; -x_31 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__4; -x_32 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_instInhabitedMatchEqnsExtState___spec__1; -x_33 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__3; +x_21 = lean_ctor_get(x_2, 2); +lean_inc(x_21); +x_22 = lean_box(0); +x_23 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__1; +x_24 = l_Lean_Meta_Grind_mkParams___closed__2; +x_25 = l_Lean_PersistentHashMap_empty___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__1; +x_26 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; +x_27 = 0; +x_28 = lean_unsigned_to_nat(0u); +x_29 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__3; +x_30 = l_Lean_Meta_Grind_mkParams___closed__6; +x_31 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__2; +x_32 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__4; +x_33 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Match_instInhabitedMatchEqnsExtState___spec__1; +x_34 = l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__3; lean_inc(x_1); -x_34 = lean_alloc_ctor(0, 25, 1); -lean_ctor_set(x_34, 0, x_1); -lean_ctor_set(x_34, 1, x_22); -lean_ctor_set(x_34, 2, x_23); -lean_ctor_set(x_34, 3, x_23); -lean_ctor_set(x_34, 4, x_24); -lean_ctor_set(x_34, 5, x_23); -lean_ctor_set(x_34, 6, x_25); -lean_ctor_set(x_34, 7, x_27); -lean_ctor_set(x_34, 8, x_27); -lean_ctor_set(x_34, 9, x_28); -lean_ctor_set(x_34, 10, x_29); -lean_ctor_set(x_34, 11, x_29); -lean_ctor_set(x_34, 12, x_20); -lean_ctor_set(x_34, 13, x_27); -lean_ctor_set(x_34, 14, x_27); -lean_ctor_set(x_34, 15, x_30); -lean_ctor_set(x_34, 16, x_31); -lean_ctor_set(x_34, 17, x_32); -lean_ctor_set(x_34, 18, x_21); -lean_ctor_set(x_34, 19, x_27); -lean_ctor_set(x_34, 20, x_33); -lean_ctor_set(x_34, 21, x_27); -lean_ctor_set(x_34, 22, x_29); -lean_ctor_set(x_34, 23, x_21); -lean_ctor_set(x_34, 24, x_23); -lean_ctor_set_uint8(x_34, sizeof(void*)*25, x_26); -x_35 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__1___boxed), 9, 1); -lean_closure_set(x_35, 0, x_34); -x_36 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__2___boxed), 13, 4); -lean_closure_set(x_36, 0, x_15); -lean_closure_set(x_36, 1, x_12); -lean_closure_set(x_36, 2, x_18); -lean_closure_set(x_36, 3, x_2); -x_37 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_37, 0, x_35); -lean_closure_set(x_37, 1, x_36); -x_38 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__5; -x_39 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_39, 0, x_37); -lean_closure_set(x_39, 1, x_38); -x_40 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_1, x_39, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_19); -return x_40; +x_35 = lean_alloc_ctor(0, 25, 1); +lean_ctor_set(x_35, 0, x_1); +lean_ctor_set(x_35, 1, x_23); +lean_ctor_set(x_35, 2, x_24); +lean_ctor_set(x_35, 3, x_24); +lean_ctor_set(x_35, 4, x_25); +lean_ctor_set(x_35, 5, x_24); +lean_ctor_set(x_35, 6, x_26); +lean_ctor_set(x_35, 7, x_28); +lean_ctor_set(x_35, 8, x_28); +lean_ctor_set(x_35, 9, x_29); +lean_ctor_set(x_35, 10, x_21); +lean_ctor_set(x_35, 11, x_30); +lean_ctor_set(x_35, 12, x_30); +lean_ctor_set(x_35, 13, x_20); +lean_ctor_set(x_35, 14, x_28); +lean_ctor_set(x_35, 15, x_28); +lean_ctor_set(x_35, 16, x_31); +lean_ctor_set(x_35, 17, x_32); +lean_ctor_set(x_35, 18, x_33); +lean_ctor_set(x_35, 19, x_22); +lean_ctor_set(x_35, 20, x_28); +lean_ctor_set(x_35, 21, x_34); +lean_ctor_set(x_35, 22, x_28); +lean_ctor_set(x_35, 23, x_30); +lean_ctor_set(x_35, 24, x_24); +lean_ctor_set_uint8(x_35, sizeof(void*)*25, x_27); +x_36 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__1___boxed), 9, 1); +lean_closure_set(x_36, 0, x_35); +x_37 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__2___boxed), 13, 4); +lean_closure_set(x_37, 0, x_15); +lean_closure_set(x_37, 1, x_12); +lean_closure_set(x_37, 2, x_18); +lean_closure_set(x_37, 3, x_2); +x_38 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_38, 0, x_36); +lean_closure_set(x_38, 1, x_37); +x_39 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__5; +x_40 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_40, 0, x_38); +lean_closure_set(x_40, 1, x_39); +x_41 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_1, x_40, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_19); +return x_41; } } LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___spec__4___boxed(lean_object** _args) { @@ -3312,574 +3330,224 @@ return x_87; } } } -LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT uint8_t l_Lean_Meta_Grind_Result_hasFailures(lean_object* x_1) { _start: { -lean_object* x_10; uint8_t x_11; -x_10 = lean_st_ref_get(x_6, x_9); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) +lean_object* x_2; uint8_t x_3; +x_2 = lean_ctor_get(x_1, 0); +x_3 = l_List_isEmpty___rarg(x_2); +if (x_3 == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -lean_dec(x_12); -x_14 = lean_ctor_get(x_13, 7); -lean_inc(x_14); -lean_dec(x_13); -x_15 = l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(x_14, x_1); -x_16 = lean_box(x_15); -lean_ctor_set(x_10, 0, x_16); -return x_10; +uint8_t x_4; +x_4 = 1; +return x_4; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; -x_17 = lean_ctor_get(x_10, 0); -x_18 = lean_ctor_get(x_10, 1); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_10); -x_19 = lean_ctor_get(x_17, 0); -lean_inc(x_19); -lean_dec(x_17); -x_20 = lean_ctor_get(x_19, 7); -lean_inc(x_20); -lean_dec(x_19); -x_21 = l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(x_20, x_1); -x_22 = lean_box(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); -return x_23; +uint8_t x_5; +x_5 = 0; +return x_5; } } } -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_hasFailures___boxed(lean_object* x_1) { _start: { -lean_object* x_11; -lean_inc(x_2); -x_11 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_11) == 0) -{ -lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_12 = lean_ctor_get(x_11, 1); -lean_inc(x_12); -lean_dec(x_11); -x_13 = lean_st_ref_get(x_2, x_12); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_15 = lean_ctor_get(x_13, 1); -x_16 = lean_st_ref_get(x_2, x_15); -lean_dec(x_2); -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_16, 0); -lean_ctor_set(x_13, 1, x_18); -lean_ctor_set(x_16, 0, x_13); -return x_16; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_16, 0); -x_20 = lean_ctor_get(x_16, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_16); -lean_ctor_set(x_13, 1, x_19); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_13); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_22 = lean_ctor_get(x_13, 0); -x_23 = lean_ctor_get(x_13, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_13); -x_24 = lean_st_ref_get(x_2, x_23); -lean_dec(x_2); -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -if (lean_is_exclusive(x_24)) { - lean_ctor_release(x_24, 0); - lean_ctor_release(x_24, 1); - x_27 = x_24; -} else { - lean_dec_ref(x_24); - x_27 = lean_box(0); -} -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_22); -lean_ctor_set(x_28, 1, x_25); -if (lean_is_scalar(x_27)) { - x_29 = lean_alloc_ctor(0, 2, 0); -} else { - x_29 = x_27; -} -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_26); -return x_29; -} -} -else -{ -uint8_t x_30; -lean_dec(x_2); -x_30 = !lean_is_exclusive(x_11); -if (x_30 == 0) -{ -return x_11; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_11, 0); -x_32 = lean_ctor_get(x_11, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_11); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; lean_object* x_12; -x_11 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_11, 0, x_1); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_10); -return x_12; -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_11 = lean_ctor_get(x_1, 0); -lean_inc(x_11); -x_12 = l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1(x_11, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_unbox(x_13); -lean_dec(x_13); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_12, 1); -lean_inc(x_15); -lean_dec(x_12); -x_16 = lean_box(0); -x_17 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); -return x_17; -} -else -{ -uint8_t x_18; +uint8_t x_2; lean_object* x_3; +x_2 = l_Lean_Meta_Grind_Result_hasFailures(x_1); lean_dec(x_1); -x_18 = !lean_is_exclusive(x_12); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; -x_19 = lean_ctor_get(x_12, 0); -lean_dec(x_19); -x_20 = lean_box(0); -lean_ctor_set(x_12, 0, x_20); -return x_12; -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_12, 1); -lean_inc(x_21); -lean_dec(x_12); -x_22 = lean_box(0); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_21); -return x_23; +x_3 = lean_box(x_2); +return x_3; } } -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_12 = lean_ctor_get(x_1, 0); -lean_inc(x_12); -x_13 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___lambda__1___boxed), 9, 1); -lean_closure_set(x_13, 0, x_1); -x_14 = lean_alloc_closure((void*)(l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__1), 10, 1); -lean_closure_set(x_14, 0, x_2); -x_15 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_15, 0, x_13); -lean_closure_set(x_15, 1, x_14); -x_16 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__5; -x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); -lean_closure_set(x_17, 0, x_15); -lean_closure_set(x_17, 1, x_16); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -x_18 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_12, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_18) == 0) -{ -lean_object* x_19; uint8_t x_20; -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get_uint8(x_19, sizeof(void*)*25); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_dec(x_18); -x_22 = lean_box(0); -x_23 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3(x_19, x_22, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_21); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -return x_23; -} -else -{ -uint8_t x_24; -lean_dec(x_19); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_24 = !lean_is_exclusive(x_18); -if (x_24 == 0) -{ -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_18, 0); -lean_dec(x_25); -x_26 = lean_box(0); -lean_ctor_set(x_18, 0, x_26); -return x_18; -} -else -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_18, 1); -lean_inc(x_27); -lean_dec(x_18); -x_28 = lean_box(0); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_27); -return x_29; -} -} -} -else -{ -uint8_t x_30; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_30 = !lean_is_exclusive(x_18); -if (x_30 == 0) -{ -return x_18; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_18, 0); -x_32 = lean_ctor_get(x_18, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_18); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_31); -lean_ctor_set(x_33, 1, x_32); -return x_33; -} -} -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_Result_toMessageData___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { if (lean_obj_tag(x_2) == 0) { -lean_object* x_12; lean_object* x_13; -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); +lean_object* x_9; lean_object* x_10; lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_1); -x_12 = l_List_reverse___rarg(x_3); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_11); -return x_13; +x_9 = l_List_reverse___rarg(x_3); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_8); +return x_10; } else { -lean_object* x_14; uint8_t x_15; -x_14 = lean_ctor_get(x_2, 0); +uint8_t x_11; +x_11 = !lean_is_exclusive(x_2); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = lean_ctor_get(x_2, 0); +x_13 = lean_ctor_get(x_2, 1); +x_14 = lean_ctor_get(x_1, 3); lean_inc(x_14); -x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*25); -if (x_15 == 0) -{ -uint8_t x_16; -x_16 = !lean_is_exclusive(x_2); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_2, 1); -x_18 = lean_ctor_get(x_2, 0); -lean_dec(x_18); -x_19 = lean_box(0); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -lean_inc(x_1); -x_20 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4(x_14, x_1, x_19, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_20) == 0) +x_15 = l_Lean_Meta_Grind_goalToMessageData(x_12, x_14, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_21; -x_21 = lean_ctor_get(x_20, 0); -lean_inc(x_21); -if (lean_obj_tag(x_21) == 0) -{ -lean_object* x_22; -lean_free_object(x_2); -x_22 = lean_ctor_get(x_20, 1); -lean_inc(x_22); -lean_dec(x_20); -x_2 = x_17; -x_11 = x_22; -goto _start; -} -else -{ -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_20, 1); -lean_inc(x_24); -lean_dec(x_20); -x_25 = lean_ctor_get(x_21, 0); -lean_inc(x_25); -lean_dec(x_21); +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 1); +lean_inc(x_17); +lean_dec(x_15); lean_ctor_set(x_2, 1, x_3); -lean_ctor_set(x_2, 0, x_25); +lean_ctor_set(x_2, 0, x_16); { -lean_object* _tmp_1 = x_17; +lean_object* _tmp_1 = x_13; lean_object* _tmp_2 = x_2; -lean_object* _tmp_10 = x_24; +lean_object* _tmp_7 = x_17; x_2 = _tmp_1; x_3 = _tmp_2; -x_11 = _tmp_10; +x_8 = _tmp_7; } goto _start; } -} else { -uint8_t x_27; +uint8_t x_19; lean_free_object(x_2); -lean_dec(x_17); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); +lean_dec(x_13); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_27 = !lean_is_exclusive(x_20); -if (x_27 == 0) +x_19 = !lean_is_exclusive(x_15); +if (x_19 == 0) { -return x_20; +return x_15; } else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_28 = lean_ctor_get(x_20, 0); -x_29 = lean_ctor_get(x_20, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_20); -x_30 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_15, 0); +x_21 = lean_ctor_get(x_15, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_15); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; } } } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_31 = lean_ctor_get(x_2, 1); -lean_inc(x_31); +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_23 = lean_ctor_get(x_2, 0); +x_24 = lean_ctor_get(x_2, 1); +lean_inc(x_24); +lean_inc(x_23); lean_dec(x_2); -x_32 = lean_box(0); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); +x_25 = lean_ctor_get(x_1, 3); +lean_inc(x_25); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -lean_inc(x_1); -x_33 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4(x_14, x_1, x_32, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_33) == 0) +x_26 = l_Lean_Meta_Grind_goalToMessageData(x_23, x_25, x_4, x_5, x_6, x_7, x_8); +if (lean_obj_tag(x_26) == 0) { -lean_object* x_34; -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -if (lean_obj_tag(x_34) == 0) -{ -lean_object* x_35; -x_35 = lean_ctor_get(x_33, 1); -lean_inc(x_35); -lean_dec(x_33); -x_2 = x_31; -x_11 = x_35; +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +lean_dec(x_26); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_3); +x_2 = x_24; +x_3 = x_29; +x_8 = x_28; goto _start; } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_37 = lean_ctor_get(x_33, 1); -lean_inc(x_37); -lean_dec(x_33); -x_38 = lean_ctor_get(x_34, 0); -lean_inc(x_38); -lean_dec(x_34); -x_39 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_3); -x_2 = x_31; -x_3 = x_39; -x_11 = x_37; -goto _start; -} -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; -lean_dec(x_31); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_24); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_41 = lean_ctor_get(x_33, 0); -lean_inc(x_41); -x_42 = lean_ctor_get(x_33, 1); -lean_inc(x_42); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - x_43 = x_33; +x_31 = lean_ctor_get(x_26, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_26, 1); +lean_inc(x_32); +if (lean_is_exclusive(x_26)) { + lean_ctor_release(x_26, 0); + lean_ctor_release(x_26, 1); + x_33 = x_26; } else { - lean_dec_ref(x_33); - x_43 = lean_box(0); + lean_dec_ref(x_26); + x_33 = lean_box(0); } -if (lean_is_scalar(x_43)) { - x_44 = lean_alloc_ctor(1, 2, 0); +if (lean_is_scalar(x_33)) { + x_34 = lean_alloc_ctor(1, 2, 0); } else { - x_44 = x_43; + x_34 = x_33; } -lean_ctor_set(x_44, 0, x_41); -lean_ctor_set(x_44, 1, x_42); -return x_44; -} -} -} -else -{ -lean_object* x_45; -lean_dec(x_14); -x_45 = lean_ctor_get(x_2, 1); -lean_inc(x_45); -lean_dec(x_2); -x_2 = x_45; -goto _start; +lean_ctor_set(x_34, 0, x_31); +lean_ctor_set(x_34, 1, x_32); +return x_34; } } } } -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1() { _start: { -lean_object* x_10; lean_object* x_11; uint8_t x_12; -x_10 = lean_ctor_get(x_7, 2); -x_11 = l_Lean_isTracingEnabledForCore(x_1, x_10, x_9); -x_12 = !lean_is_exclusive(x_11); -if (x_12 == 0) +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\n", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2() { +_start: { -return x_11; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; } -else +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: { -lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_13 = lean_ctor_get(x_11, 0); -x_14 = lean_ctor_get(x_11, 1); -lean_inc(x_14); -lean_inc(x_13); -lean_dec(x_11); -x_15 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_15, 0, x_13); -lean_ctor_set(x_15, 1, x_14); -return x_15; +lean_object* x_8; lean_object* x_9; lean_object* x_10; +x_8 = l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2; +x_9 = l_Lean_MessageData_joinSep(x_1, x_8); +x_10 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_10, 0, x_9); +lean_ctor_set(x_10, 1, x_7); +return x_10; } } +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_Result_toMessageData___lambda__1___boxed), 7, 0); +return x_1; } -static double _init_l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1() { +} +static double _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2() { _start: { lean_object* x_1; uint8_t x_2; double x_3; @@ -3889,7 +3557,7 @@ x_3 = l_Float_ofScientific(x_1, x_2, x_1); return x_3; } } -static lean_object* _init_l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2() { +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3() { _start: { lean_object* x_1; @@ -3897,332 +3565,353 @@ x_1 = lean_mk_string_unchecked("", 0, 0); return x_1; } } -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4() { _start: { -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_11 = lean_ctor_get(x_8, 5); -x_12 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_2, x_6, x_7, x_8, x_9, x_10); -x_13 = lean_ctor_get(x_12, 0); +lean_object* x_1; double x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_1 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__4; +x_2 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2; +x_3 = 1; +x_4 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3; +x_5 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_4); +lean_ctor_set_float(x_5, sizeof(void*)*2, x_2); +lean_ctor_set_float(x_5, sizeof(void*)*2 + 8, x_2); +lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 16, x_3); +return x_5; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Issues", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1; +x_11 = l_List_isEmpty___rarg(x_2); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_12 = l_List_reverse___rarg(x_2); +x_13 = lean_array_mk(x_12); +x_14 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4; +x_15 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7; +x_16 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_16, 0, x_14); +lean_ctor_set(x_16, 1, x_15); +lean_ctor_set(x_16, 2, x_13); +x_17 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_1); +x_18 = l_List_appendTR___rarg(x_3, x_17); +x_19 = lean_box(0); +x_20 = lean_apply_7(x_10, x_18, x_19, x_5, x_6, x_7, x_8, x_9); +return x_20; +} +else +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_2); +lean_dec(x_1); +x_21 = lean_box(0); +x_22 = lean_apply_7(x_10, x_3, x_21, x_5, x_6, x_7, x_8, x_9); +return x_22; +} +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("#", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(" other goal(s) were not fully processed due to previous failures, threshold: `(failures := ", 91, 91); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___closed__3; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(")`", 2, 2); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("issue", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_Result_toMessageData___closed__7; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_Result_toMessageData___closed__9() { +_start: +{ +lean_object* x_1; double x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___closed__8; +x_2 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2; +x_3 = 1; +x_4 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3; +x_5 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_4); +lean_ctor_set_float(x_5, sizeof(void*)*2, x_2); +lean_ctor_set_float(x_5, sizeof(void*)*2 + 8, x_2); +lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 16, x_3); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; +x_7 = lean_ctor_get(x_1, 0); +lean_inc(x_7); +x_8 = lean_box(0); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_2); +lean_inc(x_1); +x_9 = l_List_mapM_loop___at_Lean_Meta_Grind_Result_toMessageData___spec__1(x_1, x_7, x_8, x_2, x_3, x_4, x_5, x_6); +if (lean_obj_tag(x_9) == 0) +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_10 = lean_ctor_get(x_9, 0); +lean_inc(x_10); +x_11 = lean_ctor_get(x_9, 1); +lean_inc(x_11); +lean_dec(x_9); +x_12 = lean_ctor_get(x_1, 2); +lean_inc(x_12); +x_13 = lean_ctor_get(x_1, 1); lean_inc(x_13); -x_14 = lean_ctor_get(x_12, 1); -lean_inc(x_14); -lean_dec(x_12); -x_15 = lean_st_ref_take(x_9, x_14); -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_16, 3); -lean_inc(x_17); -x_18 = !lean_is_exclusive(x_15); -if (x_18 == 0) +x_14 = l_List_isEmpty___rarg(x_13); +if (x_14 == 0) { -lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_19 = lean_ctor_get(x_15, 1); -x_20 = lean_ctor_get(x_15, 0); -lean_dec(x_20); -x_21 = !lean_is_exclusive(x_16); -if (x_21 == 0) -{ -lean_object* x_22; uint8_t x_23; -x_22 = lean_ctor_get(x_16, 3); -lean_dec(x_22); -x_23 = !lean_is_exclusive(x_17); -if (x_23 == 0) -{ -lean_object* x_24; double x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; -x_24 = lean_ctor_get(x_17, 0); -x_25 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1; -x_26 = 0; -x_27 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; -x_28 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_28, 0, x_1); -lean_ctor_set(x_28, 1, x_27); -lean_ctor_set_float(x_28, sizeof(void*)*2, x_25); -lean_ctor_set_float(x_28, sizeof(void*)*2 + 8, x_25); -lean_ctor_set_uint8(x_28, sizeof(void*)*2 + 16, x_26); -x_29 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; -x_30 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_30, 0, x_28); -lean_ctor_set(x_30, 1, x_13); -lean_ctor_set(x_30, 2, x_29); -lean_inc(x_11); -lean_ctor_set(x_15, 1, x_30); -lean_ctor_set(x_15, 0, x_11); -x_31 = l_Lean_PersistentArray_push___rarg(x_24, x_15); -lean_ctor_set(x_17, 0, x_31); -x_32 = lean_st_ref_set(x_9, x_16, x_19); -x_33 = !lean_is_exclusive(x_32); -if (x_33 == 0) -{ -lean_object* x_34; lean_object* x_35; -x_34 = lean_ctor_get(x_32, 0); -lean_dec(x_34); -x_35 = lean_box(0); -lean_ctor_set(x_32, 0, x_35); -return x_32; +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_15 = lean_unsigned_to_nat(0u); +x_16 = l_List_lengthTRAux___rarg(x_13, x_15); +lean_dec(x_13); +x_17 = l___private_Init_Data_Repr_0__Nat_reprFast(x_16); +x_18 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_18, 0, x_17); +x_19 = l_Lean_MessageData_ofFormat(x_18); +x_20 = l_Lean_Meta_Grind_Result_toMessageData___closed__2; +x_21 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +x_22 = l_Lean_Meta_Grind_Result_toMessageData___closed__4; +x_23 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_23, 0, x_21); +lean_ctor_set(x_23, 1, x_22); +x_24 = lean_ctor_get(x_1, 3); +lean_inc(x_24); +lean_dec(x_1); +x_25 = lean_ctor_get(x_24, 4); +lean_inc(x_25); +lean_dec(x_24); +x_26 = l___private_Init_Data_Repr_0__Nat_reprFast(x_25); +x_27 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_27, 0, x_26); +x_28 = l_Lean_MessageData_ofFormat(x_27); +x_29 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_29, 0, x_23); +lean_ctor_set(x_29, 1, x_28); +x_30 = l_Lean_Meta_Grind_Result_toMessageData___closed__6; +x_31 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_31, 0, x_29); +lean_ctor_set(x_31, 1, x_30); +x_32 = l_Lean_Meta_Grind_Result_toMessageData___closed__9; +x_33 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; +x_34 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_31); +lean_ctor_set(x_34, 2, x_33); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_12); +x_36 = lean_box(0); +x_37 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2(x_8, x_35, x_10, x_36, x_2, x_3, x_4, x_5, x_11); +return x_37; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_36 = lean_ctor_get(x_32, 1); -lean_inc(x_36); -lean_dec(x_32); -x_37 = lean_box(0); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_36); -return x_38; +lean_object* x_38; lean_object* x_39; +lean_dec(x_13); +lean_dec(x_1); +x_38 = lean_box(0); +x_39 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2(x_8, x_12, x_10, x_38, x_2, x_3, x_4, x_5, x_11); +return x_39; } } else { -uint64_t x_39; lean_object* x_40; double x_41; uint8_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_39 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); -x_40 = lean_ctor_get(x_17, 0); -lean_inc(x_40); -lean_dec(x_17); -x_41 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1; -x_42 = 0; -x_43 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; -x_44 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_44, 0, x_1); -lean_ctor_set(x_44, 1, x_43); -lean_ctor_set_float(x_44, sizeof(void*)*2, x_41); -lean_ctor_set_float(x_44, sizeof(void*)*2 + 8, x_41); -lean_ctor_set_uint8(x_44, sizeof(void*)*2 + 16, x_42); -x_45 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; -x_46 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_46, 0, x_44); -lean_ctor_set(x_46, 1, x_13); -lean_ctor_set(x_46, 2, x_45); -lean_inc(x_11); -lean_ctor_set(x_15, 1, x_46); -lean_ctor_set(x_15, 0, x_11); -x_47 = l_Lean_PersistentArray_push___rarg(x_40, x_15); -x_48 = lean_alloc_ctor(0, 1, 8); -lean_ctor_set(x_48, 0, x_47); -lean_ctor_set_uint64(x_48, sizeof(void*)*1, x_39); -lean_ctor_set(x_16, 3, x_48); -x_49 = lean_st_ref_set(x_9, x_16, x_19); -x_50 = lean_ctor_get(x_49, 1); -lean_inc(x_50); -if (lean_is_exclusive(x_49)) { - lean_ctor_release(x_49, 0); - lean_ctor_release(x_49, 1); - x_51 = x_49; -} else { - lean_dec_ref(x_49); - x_51 = lean_box(0); -} -x_52 = lean_box(0); -if (lean_is_scalar(x_51)) { - x_53 = lean_alloc_ctor(0, 2, 0); -} else { - x_53 = x_51; -} -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_50); -return x_53; -} +uint8_t x_40; +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_9); +if (x_40 == 0) +{ +return x_9; } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; uint64_t x_61; lean_object* x_62; lean_object* x_63; double x_64; uint8_t x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_54 = lean_ctor_get(x_16, 0); -x_55 = lean_ctor_get(x_16, 1); -x_56 = lean_ctor_get(x_16, 2); -x_57 = lean_ctor_get(x_16, 4); -x_58 = lean_ctor_get(x_16, 5); -x_59 = lean_ctor_get(x_16, 6); -x_60 = lean_ctor_get(x_16, 7); -lean_inc(x_60); -lean_inc(x_59); -lean_inc(x_58); -lean_inc(x_57); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_dec(x_16); -x_61 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); -x_62 = lean_ctor_get(x_17, 0); -lean_inc(x_62); -if (lean_is_exclusive(x_17)) { - lean_ctor_release(x_17, 0); - x_63 = x_17; -} else { - lean_dec_ref(x_17); - x_63 = lean_box(0); -} -x_64 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1; -x_65 = 0; -x_66 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; -x_67 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_67, 0, x_1); -lean_ctor_set(x_67, 1, x_66); -lean_ctor_set_float(x_67, sizeof(void*)*2, x_64); -lean_ctor_set_float(x_67, sizeof(void*)*2 + 8, x_64); -lean_ctor_set_uint8(x_67, sizeof(void*)*2 + 16, x_65); -x_68 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; -x_69 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_69, 0, x_67); -lean_ctor_set(x_69, 1, x_13); -lean_ctor_set(x_69, 2, x_68); -lean_inc(x_11); -lean_ctor_set(x_15, 1, x_69); -lean_ctor_set(x_15, 0, x_11); -x_70 = l_Lean_PersistentArray_push___rarg(x_62, x_15); -if (lean_is_scalar(x_63)) { - x_71 = lean_alloc_ctor(0, 1, 8); -} else { - x_71 = x_63; -} -lean_ctor_set(x_71, 0, x_70); -lean_ctor_set_uint64(x_71, sizeof(void*)*1, x_61); -x_72 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_72, 0, x_54); -lean_ctor_set(x_72, 1, x_55); -lean_ctor_set(x_72, 2, x_56); -lean_ctor_set(x_72, 3, x_71); -lean_ctor_set(x_72, 4, x_57); -lean_ctor_set(x_72, 5, x_58); -lean_ctor_set(x_72, 6, x_59); -lean_ctor_set(x_72, 7, x_60); -x_73 = lean_st_ref_set(x_9, x_72, x_19); -x_74 = lean_ctor_get(x_73, 1); -lean_inc(x_74); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - x_75 = x_73; -} else { - lean_dec_ref(x_73); - x_75 = lean_box(0); -} -x_76 = lean_box(0); -if (lean_is_scalar(x_75)) { - x_77 = lean_alloc_ctor(0, 2, 0); -} else { - x_77 = x_75; -} -lean_ctor_set(x_77, 0, x_76); -lean_ctor_set(x_77, 1, x_74); -return x_77; -} -} -else -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; uint64_t x_87; lean_object* x_88; lean_object* x_89; double x_90; uint8_t x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; -x_78 = lean_ctor_get(x_15, 1); -lean_inc(x_78); -lean_dec(x_15); -x_79 = lean_ctor_get(x_16, 0); -lean_inc(x_79); -x_80 = lean_ctor_get(x_16, 1); -lean_inc(x_80); -x_81 = lean_ctor_get(x_16, 2); -lean_inc(x_81); -x_82 = lean_ctor_get(x_16, 4); -lean_inc(x_82); -x_83 = lean_ctor_get(x_16, 5); -lean_inc(x_83); -x_84 = lean_ctor_get(x_16, 6); -lean_inc(x_84); -x_85 = lean_ctor_get(x_16, 7); -lean_inc(x_85); -if (lean_is_exclusive(x_16)) { - lean_ctor_release(x_16, 0); - lean_ctor_release(x_16, 1); - lean_ctor_release(x_16, 2); - lean_ctor_release(x_16, 3); - lean_ctor_release(x_16, 4); - lean_ctor_release(x_16, 5); - lean_ctor_release(x_16, 6); - lean_ctor_release(x_16, 7); - x_86 = x_16; -} else { - lean_dec_ref(x_16); - x_86 = lean_box(0); -} -x_87 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); -x_88 = lean_ctor_get(x_17, 0); -lean_inc(x_88); -if (lean_is_exclusive(x_17)) { - lean_ctor_release(x_17, 0); - x_89 = x_17; -} else { - lean_dec_ref(x_17); - x_89 = lean_box(0); -} -x_90 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1; -x_91 = 0; -x_92 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; -x_93 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_93, 0, x_1); -lean_ctor_set(x_93, 1, x_92); -lean_ctor_set_float(x_93, sizeof(void*)*2, x_90); -lean_ctor_set_float(x_93, sizeof(void*)*2 + 8, x_90); -lean_ctor_set_uint8(x_93, sizeof(void*)*2 + 16, x_91); -x_94 = l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_mkGoal___closed__2; -x_95 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_95, 0, x_93); -lean_ctor_set(x_95, 1, x_13); -lean_ctor_set(x_95, 2, x_94); -lean_inc(x_11); -x_96 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_96, 0, x_11); -lean_ctor_set(x_96, 1, x_95); -x_97 = l_Lean_PersistentArray_push___rarg(x_88, x_96); -if (lean_is_scalar(x_89)) { - x_98 = lean_alloc_ctor(0, 1, 8); -} else { - x_98 = x_89; -} -lean_ctor_set(x_98, 0, x_97); -lean_ctor_set_uint64(x_98, sizeof(void*)*1, x_87); -if (lean_is_scalar(x_86)) { - x_99 = lean_alloc_ctor(0, 8, 0); -} else { - x_99 = x_86; -} -lean_ctor_set(x_99, 0, x_79); -lean_ctor_set(x_99, 1, x_80); -lean_ctor_set(x_99, 2, x_81); -lean_ctor_set(x_99, 3, x_98); -lean_ctor_set(x_99, 4, x_82); -lean_ctor_set(x_99, 5, x_83); -lean_ctor_set(x_99, 6, x_84); -lean_ctor_set(x_99, 7, x_85); -x_100 = lean_st_ref_set(x_9, x_99, x_78); -x_101 = lean_ctor_get(x_100, 1); -lean_inc(x_101); -if (lean_is_exclusive(x_100)) { - lean_ctor_release(x_100, 0); - lean_ctor_release(x_100, 1); - x_102 = x_100; -} else { - lean_dec_ref(x_100); - x_102 = lean_box(0); -} -x_103 = lean_box(0); -if (lean_is_scalar(x_102)) { - x_104 = lean_alloc_ctor(0, 2, 0); -} else { - x_104 = x_102; -} -lean_ctor_set(x_104, 0, x_103); -lean_ctor_set(x_104, 1, x_101); -return x_104; +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_9, 0); +x_42 = lean_ctor_get(x_9, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_9); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { -lean_object* x_11; -x_11 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_11, 0, x_1); -lean_ctor_set(x_11, 1, x_10); -return x_11; +lean_object* x_8; +x_8 = l_Lean_Meta_Grind_Result_toMessageData___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Result_toMessageData___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_4); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; uint8_t x_14; +x_13 = lean_st_ref_get(x_7, x_12); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_ctor_get(x_15, 8); +lean_inc(x_16); +lean_dec(x_15); +x_17 = lean_ctor_get(x_1, 0); +lean_inc(x_17); +x_18 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_18, 0, x_2); +lean_ctor_set(x_18, 1, x_3); +lean_ctor_set(x_18, 2, x_16); +lean_ctor_set(x_18, 3, x_17); +lean_ctor_set(x_13, 0, x_18); +return x_13; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_19 = lean_ctor_get(x_13, 0); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_13); +x_21 = lean_ctor_get(x_19, 8); +lean_inc(x_21); +lean_dec(x_19); +x_22 = lean_ctor_get(x_1, 0); +lean_inc(x_22); +x_23 = lean_alloc_ctor(0, 4, 0); +lean_ctor_set(x_23, 0, x_2); +lean_ctor_set(x_23, 1, x_3); +lean_ctor_set(x_23, 2, x_21); +lean_ctor_set(x_23, 3, x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_20); +return x_24; +} } } static lean_object* _init_l_Lean_Meta_Grind_main___lambda__2___closed__1() { @@ -4256,15 +3945,16 @@ static lean_object* _init_l_Lean_Meta_Grind_main___lambda__2___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2; +x_1 = l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_11; +lean_object* x_12; +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); @@ -4272,190 +3962,335 @@ lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_3); -x_11 = l_Lean_Meta_Grind_solve(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -if (lean_obj_tag(x_11) == 0) +x_12 = l_Lean_Meta_Grind_solve(x_3, x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_12) == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); -lean_dec(x_11); -x_14 = lean_box(0); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -x_15 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2(x_1, x_12, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); -if (lean_obj_tag(x_15) == 0) +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_16 = lean_ctor_get(x_15, 0); -lean_inc(x_16); -x_17 = lean_ctor_get(x_15, 1); -lean_inc(x_17); -lean_dec(x_15); +x_16 = lean_ctor_get(x_13, 0); +x_17 = lean_ctor_get(x_13, 1); x_18 = l_Lean_Meta_Grind_main___lambda__2___closed__3; -x_19 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3(x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_17); +x_19 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); x_20 = lean_ctor_get(x_19, 0); lean_inc(x_20); x_21 = lean_unbox(x_20); lean_dec(x_20); if (x_21 == 0) { -uint8_t x_22; +lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_free_object(x_13); +lean_dec(x_3); +x_22 = lean_ctor_get(x_19, 1); +lean_inc(x_22); +lean_dec(x_19); +x_23 = lean_box(0); +x_24 = l_Lean_Meta_Grind_main___lambda__1(x_2, x_16, x_17, x_23, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_22); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -x_22 = !lean_is_exclusive(x_19); -if (x_22 == 0) -{ -lean_object* x_23; -x_23 = lean_ctor_get(x_19, 0); -lean_dec(x_23); -lean_ctor_set(x_19, 0, x_16); -return x_19; +return x_24; } else { -lean_object* x_24; lean_object* x_25; -x_24 = lean_ctor_get(x_19, 1); -lean_inc(x_24); -lean_dec(x_19); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_16); -lean_ctor_set(x_25, 1, x_24); -return x_25; -} -} -else +uint8_t x_25; +x_25 = !lean_is_exclusive(x_19); +if (x_25 == 0) { -lean_object* x_26; lean_object* x_27; +lean_object* x_26; lean_object* x_27; lean_object* x_28; x_26 = lean_ctor_get(x_19, 1); -lean_inc(x_26); -lean_dec(x_19); +x_27 = lean_ctor_get(x_19, 0); +lean_dec(x_27); +lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_16); -x_27 = l_Lean_Meta_Grind_ppGoals(x_16, x_6, x_7, x_8, x_9, x_26); -if (lean_obj_tag(x_27) == 0) +x_28 = l_Lean_Meta_Grind_ppGoals(x_3, x_7, x_8, x_9, x_10, x_26); +if (lean_obj_tag(x_28) == 0) { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_29 = lean_ctor_get(x_28, 0); lean_inc(x_29); -lean_dec(x_27); -x_30 = l_Lean_Meta_Grind_main___lambda__2___closed__4; -x_31 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_28); -x_32 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_30); -x_33 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4(x_18, x_32, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l_Lean_Meta_Grind_main___lambda__2___closed__4; +lean_ctor_set_tag(x_19, 7); +lean_ctor_set(x_19, 1, x_29); +lean_ctor_set(x_19, 0, x_31); +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_31); +lean_ctor_set(x_13, 0, x_19); +x_32 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_18, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +lean_dec(x_32); +x_35 = l_Lean_Meta_Grind_main___lambda__1(x_2, x_16, x_17, x_33, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_34); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -x_34 = !lean_is_exclusive(x_33); -if (x_34 == 0) -{ -lean_object* x_35; -x_35 = lean_ctor_get(x_33, 0); -lean_dec(x_35); -lean_ctor_set(x_33, 0, x_16); -return x_33; -} -else -{ -lean_object* x_36; lean_object* x_37; -x_36 = lean_ctor_get(x_33, 1); -lean_inc(x_36); lean_dec(x_33); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_16); -lean_ctor_set(x_37, 1, x_36); -return x_37; -} +return x_35; } else { -uint8_t x_38; +uint8_t x_36; +lean_free_object(x_19); +lean_free_object(x_13); +lean_dec(x_17); lean_dec(x_16); +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -x_38 = !lean_is_exclusive(x_27); -if (x_38 == 0) +x_36 = !lean_is_exclusive(x_28); +if (x_36 == 0) { -return x_27; +return x_28; } else { -lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_39 = lean_ctor_get(x_27, 0); -x_40 = lean_ctor_get(x_27, 1); +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_28, 0); +x_38 = lean_ctor_get(x_28, 1); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_28); +x_39 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +return x_39; +} +} +} +else +{ +lean_object* x_40; lean_object* x_41; +x_40 = lean_ctor_get(x_19, 1); lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_27); -x_41 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_41, 0, x_39); -lean_ctor_set(x_41, 1, x_40); -return x_41; -} -} -} -} -else +lean_dec(x_19); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_41 = l_Lean_Meta_Grind_ppGoals(x_3, x_7, x_8, x_9, x_10, x_40); +if (lean_obj_tag(x_41) == 0) { -uint8_t x_42; -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_42 = !lean_is_exclusive(x_15); -if (x_42 == 0) -{ -return x_15; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; -x_43 = lean_ctor_get(x_15, 0); -x_44 = lean_ctor_get(x_15, 1); -lean_inc(x_44); +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_42 = lean_ctor_get(x_41, 0); +lean_inc(x_42); +x_43 = lean_ctor_get(x_41, 1); lean_inc(x_43); -lean_dec(x_15); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_43); -lean_ctor_set(x_45, 1, x_44); -return x_45; +lean_dec(x_41); +x_44 = l_Lean_Meta_Grind_main___lambda__2___closed__4; +x_45 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_42); +lean_ctor_set_tag(x_13, 7); +lean_ctor_set(x_13, 1, x_44); +lean_ctor_set(x_13, 0, x_45); +x_46 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_18, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_43); +x_47 = lean_ctor_get(x_46, 0); +lean_inc(x_47); +x_48 = lean_ctor_get(x_46, 1); +lean_inc(x_48); +lean_dec(x_46); +x_49 = l_Lean_Meta_Grind_main___lambda__1(x_2, x_16, x_17, x_47, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_48); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_47); +return x_49; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_free_object(x_13); +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_50 = lean_ctor_get(x_41, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_41, 1); +lean_inc(x_51); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_52 = x_41; +} else { + lean_dec_ref(x_41); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_52)) { + x_53 = lean_alloc_ctor(1, 2, 0); +} else { + x_53 = x_52; +} +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_51); +return x_53; +} } } } else { -uint8_t x_46; +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; uint8_t x_59; +x_54 = lean_ctor_get(x_13, 0); +x_55 = lean_ctor_get(x_13, 1); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_13); +x_56 = l_Lean_Meta_Grind_main___lambda__2___closed__3; +x_57 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_56, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_14); +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_unbox(x_58); +lean_dec(x_58); +if (x_59 == 0) +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +lean_dec(x_3); +x_60 = lean_ctor_get(x_57, 1); +lean_inc(x_60); +lean_dec(x_57); +x_61 = lean_box(0); +x_62 = l_Lean_Meta_Grind_main___lambda__1(x_2, x_54, x_55, x_61, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_60); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_62; +} +else +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_63 = lean_ctor_get(x_57, 1); +lean_inc(x_63); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + lean_ctor_release(x_57, 1); + x_64 = x_57; +} else { + lean_dec_ref(x_57); + x_64 = lean_box(0); +} +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_65 = l_Lean_Meta_Grind_ppGoals(x_3, x_7, x_8, x_9, x_10, x_63); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_66 = lean_ctor_get(x_65, 0); +lean_inc(x_66); +x_67 = lean_ctor_get(x_65, 1); +lean_inc(x_67); +lean_dec(x_65); +x_68 = l_Lean_Meta_Grind_main___lambda__2___closed__4; +if (lean_is_scalar(x_64)) { + x_69 = lean_alloc_ctor(7, 2, 0); +} else { + x_69 = x_64; + lean_ctor_set_tag(x_69, 7); +} +lean_ctor_set(x_69, 0, x_68); +lean_ctor_set(x_69, 1, x_66); +x_70 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_70, 0, x_69); +lean_ctor_set(x_70, 1, x_68); +x_71 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_56, x_70, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_67); +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +x_73 = lean_ctor_get(x_71, 1); +lean_inc(x_73); +lean_dec(x_71); +x_74 = l_Lean_Meta_Grind_main___lambda__1(x_2, x_54, x_55, x_72, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_73); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_72); +return x_74; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; +lean_dec(x_64); +lean_dec(x_55); +lean_dec(x_54); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_75 = lean_ctor_get(x_65, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_65, 1); +lean_inc(x_76); +if (lean_is_exclusive(x_65)) { + lean_ctor_release(x_65, 0); + lean_ctor_release(x_65, 1); + x_77 = x_65; +} else { + lean_dec_ref(x_65); + x_77 = lean_box(0); +} +if (lean_is_scalar(x_77)) { + x_78 = lean_alloc_ctor(1, 2, 0); +} else { + x_78 = x_77; +} +lean_ctor_set(x_78, 0, x_75); +lean_ctor_set(x_78, 1, x_76); +return x_78; +} +} +} +} +else +{ +uint8_t x_79; +lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -4463,24 +4298,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -lean_dec(x_1); -x_46 = !lean_is_exclusive(x_11); -if (x_46 == 0) +x_79 = !lean_is_exclusive(x_12); +if (x_79 == 0) { -return x_11; +return x_12; } else { -lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_47 = lean_ctor_get(x_11, 0); -x_48 = lean_ctor_get(x_11, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_11); -x_49 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_49, 0, x_47); -lean_ctor_set(x_49, 1, x_48); -return x_49; +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_12, 0); +x_81 = lean_ctor_get(x_12, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_12); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; } } } @@ -4493,9 +4327,11 @@ lean_inc(x_2); x_10 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore), 10, 2); lean_closure_set(x_10, 0, x_1); lean_closure_set(x_10, 1, x_2); +lean_inc(x_2); lean_inc(x_4); -x_11 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_main___lambda__2), 10, 1); +x_11 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_main___lambda__2___boxed), 11, 2); lean_closure_set(x_11, 0, x_4); +lean_closure_set(x_11, 1, x_2); x_12 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); lean_closure_set(x_12, 0, x_10); lean_closure_set(x_12, 1, x_11); @@ -4504,109 +4340,32 @@ lean_dec(x_2); return x_13; } } -LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_10; -x_10 = l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_main___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_object* x_13; +x_13 = l_Lean_Meta_Grind_main___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); lean_dec(x_1); -return x_10; +return x_13; } } -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} -LEAN_EXPORT lean_object* l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; -x_12 = l_List_filterMapM_loop___at_Lean_Meta_Grind_main___spec__2___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); +x_12 = l_Lean_Meta_Grind_main___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); return x_12; } } -LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_main___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_10; -} -} -LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_11; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_main___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_Lean_Meta_Grind_main___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} lean_object* initialize_Init_Grind_Lemmas(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_RevertAll(uint8_t builtin, lean_object*); @@ -4726,9 +4485,41 @@ l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__3 lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__3); l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__4(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Main_0__Lean_Meta_Grind_initCore___closed__4); -l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__1(); -l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2(); -lean_mark_persistent(l_Lean_addTrace___at_Lean_Meta_Grind_main___spec__4___closed__2); +l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__1); +l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__1___closed__2); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__1); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__2(); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__3); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__4); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__5); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__6); +l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7 = _init_l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___lambda__2___closed__7); +l_Lean_Meta_Grind_Result_toMessageData___closed__1 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__1); +l_Lean_Meta_Grind_Result_toMessageData___closed__2 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__2); +l_Lean_Meta_Grind_Result_toMessageData___closed__3 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__3); +l_Lean_Meta_Grind_Result_toMessageData___closed__4 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__4); +l_Lean_Meta_Grind_Result_toMessageData___closed__5 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__5); +l_Lean_Meta_Grind_Result_toMessageData___closed__6 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__6(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__6); +l_Lean_Meta_Grind_Result_toMessageData___closed__7 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__7(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__7); +l_Lean_Meta_Grind_Result_toMessageData___closed__8 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__8(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__8); +l_Lean_Meta_Grind_Result_toMessageData___closed__9 = _init_l_Lean_Meta_Grind_Result_toMessageData___closed__9(); +lean_mark_persistent(l_Lean_Meta_Grind_Result_toMessageData___closed__9); l_Lean_Meta_Grind_main___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_main___lambda__2___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_main___lambda__2___closed__1); l_Lean_Meta_Grind_main___lambda__2___closed__2 = _init_l_Lean_Meta_Grind_main___lambda__2___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/MatchCond.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/MatchCond.c new file mode 100644 index 0000000000..d1051f83a6 --- /dev/null +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/MatchCond.c @@ -0,0 +1,8036 @@ +// Lean compiler output +// Module: Lean.Meta.Tactic.Grind.MatchCond +// Imports: Init.Grind Init.Simproc Lean.Meta.Tactic.Simp.Simproc Lean.Meta.Tactic.Grind.PropagatorAttr +#include +#if defined(__clang__) +#pragma clang diagnostic ignored "-Wunused-parameter" +#pragma clang diagnostic ignored "-Wunused-label" +#elif defined(__GNUC__) && !defined(__CLANG__) +#pragma GCC diagnostic ignored "-Wunused-parameter" +#pragma GCC diagnostic ignored "-Wunused-label" +#pragma GCC diagnostic ignored "-Wunused-but-set-variable" +#endif +#ifdef __cplusplus +extern "C" { +#endif +lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___lambda__1___boxed(lean_object*, lean_object*); +lean_object* l_Lean_mkAppN(lean_object*, lean_object*); +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1; +lean_object* l_Lean_Meta_mkNoConfusion(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2; +lean_object* l_Lean_Meta_mkEqTrueCore(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_replaceLhs_x3f(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_Expr_isApp(lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_sort___override(lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___boxed(lean_object**); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5; +lean_object* lean_array_push(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___lambda__1(lean_object*, lean_object*); +lean_object* lean_mk_array(lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6; +uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4; +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_fget(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7; +lean_object* l_Lean_Meta_normLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4; +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_stringToMessageData(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_propagateMatchCond___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_mkApp4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2; +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +size_t lean_ptr_addr(lean_object*); +lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_reduceMatchCond___closed__1; +static lean_object* l_Lean_Meta_Grind_markAsMatchCond___closed__3; +static lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markAsMatchCond(lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_instDecidableNot___rarg(uint8_t); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119_(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_expr_eqv(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_markAsMatchCond___closed__2; +lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1(lean_object*, lean_object*); +lean_object* l_Lean_Expr_forallE___override(lean_object*, lean_object*, lean_object*, uint8_t); +lean_object* l_outOfBounds___rarg(lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2; +lean_object* lean_st_ref_get(lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkDecideProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); +uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addMatchCond(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1; +extern lean_object* l_Lean_levelZero; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5; +lean_object* l_Lean_Meta_Simp_Simprocs_add(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_instInhabitedExpr; +lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_pushEqTrue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_name_eq(lean_object*, lean_object*); +lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2; +lean_object* l_Lean_mkNot(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_markAsMatchCond___closed__5; +lean_object* l_Lean_MessageData_ofExpr(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_name_append_index_after(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss(lean_object*); +lean_object* lean_grind_mk_eq_proof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_grind_mk_heq_proof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1; +static lean_object* l_Lean_Meta_Grind_propagateMatchCond___closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addMatchCond___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2(lean_object*); +lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938_(lean_object*); +lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_shareCommon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_markAsMatchCond___closed__1; +lean_object* l_Lean_Meta_Simp_registerBuiltinDSimproc(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1; +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_indentExpr(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2; +uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); +static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1; +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Tactic_Grind_PropagatorAttr_0__Lean_Meta_Grind_registerBuiltinPropagatorCore(lean_object*, uint8_t, lean_object*, lean_object*); +lean_object* lean_nat_sub(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_mk(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8; +size_t lean_usize_add(size_t, size_t); +lean_object* l_Lean_Meta_mkEqOfHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +lean_object* lean_array_uget(lean_object*, size_t); +size_t lean_array_size(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3; +lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1___boxed(lean_object**); +static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_mkHEqTrans(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_array_get_size(lean_object*); +lean_object* l_Lean_Meta_Grind_getRootENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3; +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t lean_usize_dec_lt(size_t, size_t); +lean_object* l_Lean_Meta_mkLambdaFVars(lean_object*, lean_object*, uint8_t, uint8_t, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_nat_add(lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9; +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_Proof_0__Lean_Meta_Grind_mkHCongrProof___spec__1___rarg(lean_object*, uint8_t, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_isConstructorApp_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_isLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingImp___rarg(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_markAsMatchCond___closed__4; +uint8_t l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(uint8_t, uint8_t); +static lean_object* _init_l_Lean_Meta_Grind_markAsMatchCond___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_markAsMatchCond___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Grind", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_markAsMatchCond___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("MatchCond", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_markAsMatchCond___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Meta_Grind_markAsMatchCond___closed__1; +x_2 = l_Lean_Meta_Grind_markAsMatchCond___closed__2; +x_3 = l_Lean_Meta_Grind_markAsMatchCond___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Meta_Grind_markAsMatchCond___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_3 = l_Lean_Expr_const___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markAsMatchCond(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; +x_2 = l_Lean_Meta_Grind_markAsMatchCond___closed__5; +x_3 = l_Lean_Expr_app___override(x_2, x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_11, 0, x_1); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_10); +return x_12; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_alloc_ctor(2, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; +x_10 = l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1; +x_11 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_11, 0, x_10); +lean_ctor_set(x_11, 1, x_9); +return x_11; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reduceMatchCond___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_reduceMatchCond___lambda__2___boxed), 9, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_inc(x_1); +x_10 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_1, x_5, x_6, x_7, x_8, x_9); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = l_Lean_Meta_Grind_reduceMatchCond___closed__1; +x_14 = l_Lean_Expr_cleanupAnnotations(x_11); +x_15 = l_Lean_Expr_isApp(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_14); +lean_dec(x_1); +x_16 = lean_box(0); +x_17 = lean_apply_9(x_13, x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_12); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; uint8_t x_20; +x_18 = l_Lean_Expr_appFnCleanup(x_14, lean_box(0)); +x_19 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_20 = l_Lean_Expr_isConstOf(x_18, x_19); +lean_dec(x_18); +if (x_20 == 0) +{ +lean_object* x_21; lean_object* x_22; +lean_dec(x_1); +x_21 = lean_box(0); +x_22 = lean_apply_9(x_13, x_21, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_12); +return x_22; +} +else +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_box(0); +x_24 = l_Lean_Meta_Grind_reduceMatchCond___lambda__1(x_1, x_23, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_24; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_Meta_Grind_reduceMatchCond___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reduceMatchCond___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Meta_Grind_reduceMatchCond___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_10; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Meta", 4, 4); +return x_1; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("reduceMatchCond", 15, 15); +return x_1; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_markAsMatchCond___closed__1; +x_2 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1; +x_3 = l_Lean_Meta_Grind_markAsMatchCond___closed__2; +x_4 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_2 = lean_unsigned_to_nat(1u); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(3); +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4; +x_2 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6; +x_2 = lean_array_mk(x_1); +return x_2; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_reduceMatchCond), 9, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119_(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_2 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3; +x_3 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7; +x_4 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8; +x_5 = l_Lean_Meta_Simp_registerBuiltinDSimproc(x_2, x_3, x_4, x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addMatchCond(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; uint8_t x_6; lean_object* x_7; +x_5 = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3; +x_6 = 0; +x_7 = l_Lean_Meta_Simp_Simprocs_add(x_1, x_5, x_6, x_2, x_3, x_4); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addMatchCond___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Lean_Meta_Grind_addMatchCond(x_1, x_2, x_3, x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_5; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Eq", 2, 2); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("HEq", 3, 3); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; +x_2 = l_Lean_Expr_cleanupAnnotations(x_1); +x_3 = l_Lean_Expr_isApp(x_2); +if (x_3 == 0) +{ +lean_object* x_4; +lean_dec(x_2); +x_4 = lean_box(0); +return x_4; +} +else +{ +lean_object* x_5; lean_object* x_6; uint8_t x_7; +x_5 = l_Lean_Expr_appArg(x_2, lean_box(0)); +x_6 = l_Lean_Expr_appFnCleanup(x_2, lean_box(0)); +x_7 = l_Lean_Expr_isApp(x_6); +if (x_7 == 0) +{ +lean_object* x_8; +lean_dec(x_6); +lean_dec(x_5); +x_8 = lean_box(0); +return x_8; +} +else +{ +lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_9 = l_Lean_Expr_appArg(x_6, lean_box(0)); +x_10 = l_Lean_Expr_appFnCleanup(x_6, lean_box(0)); +x_11 = l_Lean_Expr_isApp(x_10); +if (x_11 == 0) +{ +lean_object* x_12; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_5); +x_12 = lean_box(0); +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; +x_13 = l_Lean_Expr_appArg(x_10, lean_box(0)); +x_14 = l_Lean_Expr_appFnCleanup(x_10, lean_box(0)); +x_15 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2; +x_16 = l_Lean_Expr_isConstOf(x_14, x_15); +if (x_16 == 0) +{ +uint8_t x_17; +lean_dec(x_9); +x_17 = l_Lean_Expr_isApp(x_14); +if (x_17 == 0) +{ +lean_object* x_18; +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_5); +x_18 = lean_box(0); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = l_Lean_Expr_appFnCleanup(x_14, lean_box(0)); +x_20 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4; +x_21 = l_Lean_Expr_isConstOf(x_19, x_20); +lean_dec(x_19); +if (x_21 == 0) +{ +lean_object* x_22; +lean_dec(x_13); +lean_dec(x_5); +x_22 = lean_box(0); +return x_22; +} +else +{ +uint8_t x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_23 = 1; +x_24 = lean_box(x_23); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_5); +lean_ctor_set(x_25, 1, x_24); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_13); +lean_ctor_set(x_26, 1, x_25); +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_26); +return x_27; +} +} +} +else +{ +uint8_t x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_dec(x_14); +lean_dec(x_13); +x_28 = 0; +x_29 = lean_box(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_5); +lean_ctor_set(x_30, 1, x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_9); +lean_ctor_set(x_31, 1, x_30); +x_32 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_32, 0, x_31); +return x_32; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_6, 0, x_1); +lean_ctor_set(x_6, 1, x_4); +x_7 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_7, 0, x_2); +lean_ctor_set(x_7, 1, x_6); +x_8 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_8, 0, x_7); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; +x_3 = lean_ctor_get(x_2, 1); +lean_inc(x_3); +lean_dec(x_2); +x_4 = lean_ctor_get(x_3, 0); +lean_inc(x_4); +if (lean_obj_tag(x_4) == 7) +{ +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_5 = lean_ctor_get(x_3, 1); +lean_inc(x_5); +lean_dec(x_3); +x_6 = lean_ctor_get(x_4, 1); +lean_inc(x_6); +x_7 = lean_ctor_get(x_4, 2); +lean_inc(x_7); +x_8 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(x_6); +if (lean_obj_tag(x_8) == 0) +{ +lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_9 = lean_box(0); +lean_inc(x_1); +x_10 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(x_7, x_1, x_4, x_5, x_9); +lean_dec(x_4); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +lean_dec(x_10); +x_2 = x_11; +goto _start; +} +else +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +lean_dec(x_13); +x_15 = l_Lean_Expr_hasLooseBVars(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_16 = lean_array_push(x_5, x_14); +x_17 = lean_box(0); +lean_inc(x_1); +x_18 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(x_7, x_1, x_4, x_16, x_17); +lean_dec(x_4); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +lean_dec(x_18); +x_2 = x_19; +goto _start; +} +else +{ +lean_object* x_21; lean_object* x_22; lean_object* x_23; +lean_dec(x_14); +x_21 = lean_box(0); +lean_inc(x_1); +x_22 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(x_7, x_1, x_4, x_5, x_21); +lean_dec(x_4); +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +lean_dec(x_22); +x_2 = x_23; +goto _start; +} +} +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_dec(x_1); +x_25 = lean_ctor_get(x_3, 1); +lean_inc(x_25); +lean_dec(x_3); +lean_inc(x_25); +x_26 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_26, 0, x_25); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_4); +lean_ctor_set(x_27, 1, x_25); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___lambda__1(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_inc(x_1); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_2 = lean_box(0); +x_3 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1; +x_4 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_4, 0, x_1); +lean_ctor_set(x_4, 1, x_3); +x_5 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_5, 0, x_2); +lean_ctor_set(x_5, 1, x_4); +x_6 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1(x_2, x_5); +x_7 = lean_ctor_get(x_6, 0); +lean_inc(x_7); +lean_dec(x_6); +x_8 = lean_ctor_get(x_7, 0); +lean_inc(x_8); +lean_dec(x_7); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; +x_6 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5); +lean_dec(x_5); +lean_dec(x_3); +return x_6; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___lambda__1___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___lambda__1(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_replaceLhs_x3f(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; uint8_t x_4; +x_3 = l_Lean_Expr_cleanupAnnotations(x_1); +x_4 = l_Lean_Expr_isApp(x_3); +if (x_4 == 0) +{ +lean_object* x_5; +lean_dec(x_3); +lean_dec(x_2); +x_5 = lean_box(0); +return x_5; +} +else +{ +lean_object* x_6; lean_object* x_7; uint8_t x_8; +x_6 = l_Lean_Expr_appArg(x_3, lean_box(0)); +x_7 = l_Lean_Expr_appFnCleanup(x_3, lean_box(0)); +x_8 = l_Lean_Expr_isApp(x_7); +if (x_8 == 0) +{ +lean_object* x_9; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +x_9 = lean_box(0); +return x_9; +} +else +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_10 = l_Lean_Expr_appArg(x_7, lean_box(0)); +x_11 = l_Lean_Expr_appFnCleanup(x_7, lean_box(0)); +x_12 = l_Lean_Expr_isApp(x_11); +if (x_12 == 0) +{ +lean_object* x_13; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_6); +lean_dec(x_2); +x_13 = lean_box(0); +return x_13; +} +else +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_14 = l_Lean_Expr_appArg(x_11, lean_box(0)); +x_15 = l_Lean_Expr_appFnCleanup(x_11, lean_box(0)); +x_16 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2; +x_17 = l_Lean_Expr_isConstOf(x_15, x_16); +if (x_17 == 0) +{ +uint8_t x_18; +x_18 = l_Lean_Expr_isApp(x_15); +if (x_18 == 0) +{ +lean_object* x_19; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_6); +lean_dec(x_2); +x_19 = lean_box(0); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_20 = l_Lean_Expr_appArg(x_15, lean_box(0)); +x_21 = l_Lean_Expr_appFnCleanup(x_15, lean_box(0)); +x_22 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4; +x_23 = l_Lean_Expr_isConstOf(x_21, x_22); +if (x_23 == 0) +{ +lean_object* x_24; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_14); +lean_dec(x_10); +lean_dec(x_6); +lean_dec(x_2); +x_24 = lean_box(0); +return x_24; +} +else +{ +uint8_t x_25; +x_25 = l_Lean_Expr_hasLooseBVars(x_14); +lean_dec(x_14); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = l_Lean_mkApp4(x_21, x_20, x_2, x_10, x_6); +x_27 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_27, 0, x_26); +return x_27; +} +else +{ +lean_object* x_28; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_10); +lean_dec(x_6); +lean_dec(x_2); +x_28 = lean_box(0); +return x_28; +} +} +} +} +else +{ +uint8_t x_29; +x_29 = l_Lean_Expr_hasLooseBVars(x_10); +lean_dec(x_10); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +x_30 = l_Lean_mkApp3(x_15, x_14, x_2, x_6); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_30); +return x_31; +} +else +{ +lean_object* x_32; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_6); +lean_dec(x_2); +x_32 = lean_box(0); +return x_32; +} +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_2) == 7) +{ +lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; uint8_t x_9; +x_4 = lean_ctor_get(x_2, 0); +lean_inc(x_4); +x_5 = lean_ctor_get(x_2, 1); +lean_inc(x_5); +x_6 = lean_ctor_get(x_2, 2); +lean_inc(x_6); +x_7 = lean_ctor_get_uint8(x_2, sizeof(void*)*3 + 8); +x_8 = lean_array_get_size(x_1); +x_9 = lean_nat_dec_lt(x_3, x_8); +lean_dec(x_8); +if (x_9 == 0) +{ +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_2; +} +else +{ +lean_object* x_10; lean_object* x_11; +lean_dec(x_2); +x_10 = lean_array_fget(x_1, x_3); +lean_inc(x_5); +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_replaceLhs_x3f(x_5, x_10); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; size_t x_14; uint8_t x_15; +lean_inc(x_6); +x_12 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(x_1, x_6, x_3); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_13 = l_Lean_Expr_forallE___override(x_4, x_5, x_6, x_7); +x_14 = lean_ptr_addr(x_5); +x_15 = lean_usize_dec_eq(x_14, x_14); +if (x_15 == 0) +{ +lean_object* x_16; +lean_dec(x_13); +lean_dec(x_6); +x_16 = l_Lean_Expr_forallE___override(x_4, x_5, x_12, x_7); +return x_16; +} +else +{ +size_t x_17; size_t x_18; uint8_t x_19; +x_17 = lean_ptr_addr(x_6); +lean_dec(x_6); +x_18 = lean_ptr_addr(x_12); +x_19 = lean_usize_dec_eq(x_17, x_18); +if (x_19 == 0) +{ +lean_object* x_20; +lean_dec(x_13); +x_20 = l_Lean_Expr_forallE___override(x_4, x_5, x_12, x_7); +return x_20; +} +else +{ +uint8_t x_21; +x_21 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_7, x_7); +if (x_21 == 0) +{ +lean_object* x_22; +lean_dec(x_13); +x_22 = l_Lean_Expr_forallE___override(x_4, x_5, x_12, x_7); +return x_22; +} +else +{ +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_4); +return x_13; +} +} +} +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; size_t x_28; size_t x_29; uint8_t x_30; +x_23 = lean_ctor_get(x_11, 0); +lean_inc(x_23); +lean_dec(x_11); +x_24 = lean_unsigned_to_nat(1u); +x_25 = lean_nat_add(x_3, x_24); +lean_inc(x_6); +x_26 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(x_1, x_6, x_25); +lean_dec(x_25); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +x_27 = l_Lean_Expr_forallE___override(x_4, x_5, x_6, x_7); +x_28 = lean_ptr_addr(x_5); +lean_dec(x_5); +x_29 = lean_ptr_addr(x_23); +x_30 = lean_usize_dec_eq(x_28, x_29); +if (x_30 == 0) +{ +lean_object* x_31; +lean_dec(x_27); +lean_dec(x_6); +x_31 = l_Lean_Expr_forallE___override(x_4, x_23, x_26, x_7); +return x_31; +} +else +{ +size_t x_32; size_t x_33; uint8_t x_34; +x_32 = lean_ptr_addr(x_6); +lean_dec(x_6); +x_33 = lean_ptr_addr(x_26); +x_34 = lean_usize_dec_eq(x_32, x_33); +if (x_34 == 0) +{ +lean_object* x_35; +lean_dec(x_27); +x_35 = l_Lean_Expr_forallE___override(x_4, x_23, x_26, x_7); +return x_35; +} +else +{ +uint8_t x_36; +x_36 = l___private_Lean_Expr_0__Lean_beqBinderInfo____x40_Lean_Expr___hyg_406_(x_7, x_7); +if (x_36 == 0) +{ +lean_object* x_37; +lean_dec(x_27); +x_37 = l_Lean_Expr_forallE___override(x_4, x_23, x_26, x_7); +return x_37; +} +else +{ +lean_dec(x_26); +lean_dec(x_23); +lean_dec(x_4); +return x_27; +} +} +} +} +} +} +else +{ +return x_2; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_1); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_15 = lean_unsigned_to_nat(1u); +x_16 = lean_nat_add(x_1, x_15); +x_17 = lean_array_push(x_2, x_5); +x_18 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go(x_3, x_4, x_16, x_17, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +return x_18; +} +} +static lean_object* _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("x", 1, 1); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_array_get_size(x_2); +x_15 = lean_nat_dec_lt(x_3, x_14); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; uint8_t x_18; uint8_t x_19; uint8_t x_20; lean_object* x_21; +lean_dec(x_5); +lean_dec(x_3); +x_16 = lean_unsigned_to_nat(0u); +x_17 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go_replaceLhss(x_4, x_1, x_16); +x_18 = 0; +x_19 = 1; +x_20 = 1; +x_21 = l_Lean_Meta_mkLambdaFVars(x_4, x_17, x_18, x_19, x_18, x_20, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_mkAppN(x_22, x_2); +lean_dec(x_2); +x_25 = l_Lean_Meta_Grind_shareCommon(x_24, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_23); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +return x_25; +} +else +{ +uint8_t x_26; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +x_26 = !lean_is_exclusive(x_21); +if (x_26 == 0) +{ +return x_21; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_21, 0); +x_28 = lean_ctor_get(x_21, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_21); +x_29 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_29, 0, x_27); +lean_ctor_set(x_29, 1, x_28); +return x_29; +} +} +} +else +{ +lean_object* x_30; lean_object* x_31; +x_30 = lean_array_fget(x_2, x_3); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_31 = lean_infer_type(x_30, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_31) == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; uint8_t x_38; lean_object* x_39; +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_31, 1); +lean_inc(x_33); +lean_dec(x_31); +x_34 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2; +lean_inc(x_3); +x_35 = lean_name_append_index_after(x_34, x_3); +x_36 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1___boxed), 14, 4); +lean_closure_set(x_36, 0, x_3); +lean_closure_set(x_36, 1, x_4); +lean_closure_set(x_36, 2, x_1); +lean_closure_set(x_36, 3, x_2); +x_37 = 0; +x_38 = 0; +x_39 = l_Lean_Meta_withLocalDecl___at___private_Lean_Meta_Tactic_Grind_Proof_0__Lean_Meta_Grind_mkHCongrProof___spec__1___rarg(x_35, x_37, x_32, x_36, x_38, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_33); +return x_39; +} +else +{ +uint8_t x_40; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_40 = !lean_is_exclusive(x_31); +if (x_40 == 0) +{ +return x_31; +} +else +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; +x_41 = lean_ctor_get(x_31, 0); +x_42 = lean_ctor_get(x_31, 1); +lean_inc(x_42); +lean_inc(x_41); +lean_dec(x_31); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_41); +lean_ctor_set(x_43, 1, x_42); +return x_43; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14) { +_start: +{ +lean_object* x_15; +x_15 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14); +lean_dec(x_1); +return x_15; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss(x_1); +x_12 = lean_unsigned_to_nat(0u); +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1; +lean_inc(x_11); +x_14 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go(x_1, x_11, x_12, x_13, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_14, 0); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_11); +lean_ctor_set(x_17, 1, x_16); +lean_ctor_set(x_14, 0, x_17); +return x_14; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_18 = lean_ctor_get(x_14, 0); +x_19 = lean_ctor_get(x_14, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_14); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_11); +lean_ctor_set(x_20, 1, x_18); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +return x_21; +} +} +else +{ +uint8_t x_22; +lean_dec(x_11); +x_22 = !lean_is_exclusive(x_14); +if (x_22 == 0) +{ +return x_14; +} +else +{ +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_14, 0); +x_24 = lean_ctor_get(x_14, 1); +lean_inc(x_24); +lean_inc(x_23); +lean_dec(x_14); +x_25 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_25, 0, x_23); +lean_ctor_set(x_25, 1, x_24); +return x_25; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1; +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_1); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_11); +return x_14; +} +} +static lean_object* _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__1), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; uint8_t x_13; +x_11 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1; +lean_inc(x_1); +x_12 = l_Lean_Expr_cleanupAnnotations(x_1); +x_13 = l_Lean_Expr_isApp(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_12); +x_14 = lean_box(0); +x_15 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2(x_1, x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_15; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; +x_16 = l_Lean_Expr_appArg(x_12, lean_box(0)); +x_17 = l_Lean_Expr_appFnCleanup(x_12, lean_box(0)); +x_18 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_19 = l_Lean_Expr_isConstOf(x_17, x_18); +lean_dec(x_17); +if (x_19 == 0) +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_16); +x_20 = lean_box(0); +x_21 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2(x_1, x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_21; +} +else +{ +lean_object* x_22; +lean_dec(x_1); +x_22 = lean_apply_10(x_11, x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +return x_22; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_12; +} +} +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1() { +_start: +{ +uint8_t x_1; lean_object* x_2; lean_object* x_3; +x_1 = 1; +x_2 = lean_box(x_1); +x_3 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_3, 0, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1; +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2; +x_2 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17, lean_object* x_18) { +_start: +{ +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_5, 1); +x_20 = lean_nat_dec_lt(x_7, x_19); +if (x_20 == 0) +{ +lean_object* x_21; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_6); +lean_ctor_set(x_21, 1, x_18); +return x_21; +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_31; uint8_t x_32; lean_object* x_33; uint8_t x_34; +lean_dec(x_6); +x_31 = lean_array_get_size(x_1); +x_32 = lean_nat_dec_lt(x_7, x_31); +lean_dec(x_31); +x_33 = lean_array_get_size(x_2); +x_34 = lean_nat_dec_lt(x_7, x_33); +lean_dec(x_33); +if (x_32 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = l_Lean_instInhabitedExpr; +x_36 = l_outOfBounds___rarg(x_35); +if (x_34 == 0) +{ +lean_object* x_37; lean_object* x_38; +x_37 = l_outOfBounds___rarg(x_35); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_38 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(x_36, x_37, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; uint8_t x_40; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_unbox(x_39); +lean_dec(x_39); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; +x_41 = lean_ctor_get(x_38, 1); +lean_inc(x_41); +lean_dec(x_38); +lean_inc(x_4); +x_42 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_42, 0, x_4); +x_22 = x_42; +x_23 = x_41; +goto block_30; +} +else +{ +lean_object* x_43; lean_object* x_44; +x_43 = lean_ctor_get(x_38, 1); +lean_inc(x_43); +lean_dec(x_38); +x_44 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3; +x_22 = x_44; +x_23 = x_43; +goto block_30; +} +} +else +{ +uint8_t x_45; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_45 = !lean_is_exclusive(x_38); +if (x_45 == 0) +{ +return x_38; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_38, 0); +x_47 = lean_ctor_get(x_38, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_38); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +lean_object* x_49; lean_object* x_50; +x_49 = lean_array_fget(x_2, x_7); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_50 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(x_36, x_49, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; uint8_t x_52; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_unbox(x_51); +lean_dec(x_51); +if (x_52 == 0) +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_50, 1); +lean_inc(x_53); +lean_dec(x_50); +lean_inc(x_4); +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, x_4); +x_22 = x_54; +x_23 = x_53; +goto block_30; +} +else +{ +lean_object* x_55; lean_object* x_56; +x_55 = lean_ctor_get(x_50, 1); +lean_inc(x_55); +lean_dec(x_50); +x_56 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3; +x_22 = x_56; +x_23 = x_55; +goto block_30; +} +} +else +{ +uint8_t x_57; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_57 = !lean_is_exclusive(x_50); +if (x_57 == 0) +{ +return x_50; +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_58 = lean_ctor_get(x_50, 0); +x_59 = lean_ctor_get(x_50, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_50); +x_60 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_60, 0, x_58); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +} +} +} +else +{ +lean_object* x_61; +x_61 = lean_array_fget(x_1, x_7); +if (x_34 == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_62 = l_Lean_instInhabitedExpr; +x_63 = l_outOfBounds___rarg(x_62); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_64 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(x_61, x_63, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_64) == 0) +{ +lean_object* x_65; uint8_t x_66; +x_65 = lean_ctor_get(x_64, 0); +lean_inc(x_65); +x_66 = lean_unbox(x_65); +lean_dec(x_65); +if (x_66 == 0) +{ +lean_object* x_67; lean_object* x_68; +x_67 = lean_ctor_get(x_64, 1); +lean_inc(x_67); +lean_dec(x_64); +lean_inc(x_4); +x_68 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_68, 0, x_4); +x_22 = x_68; +x_23 = x_67; +goto block_30; +} +else +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_ctor_get(x_64, 1); +lean_inc(x_69); +lean_dec(x_64); +x_70 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3; +x_22 = x_70; +x_23 = x_69; +goto block_30; +} +} +else +{ +uint8_t x_71; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_71 = !lean_is_exclusive(x_64); +if (x_71 == 0) +{ +return x_64; +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_64, 0); +x_73 = lean_ctor_get(x_64, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_64); +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +return x_74; +} +} +} +else +{ +lean_object* x_75; lean_object* x_76; +x_75 = lean_array_fget(x_2, x_7); +lean_inc(x_17); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +x_76 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(x_61, x_75, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +if (lean_obj_tag(x_76) == 0) +{ +lean_object* x_77; uint8_t x_78; +x_77 = lean_ctor_get(x_76, 0); +lean_inc(x_77); +x_78 = lean_unbox(x_77); +lean_dec(x_77); +if (x_78 == 0) +{ +lean_object* x_79; lean_object* x_80; +x_79 = lean_ctor_get(x_76, 1); +lean_inc(x_79); +lean_dec(x_76); +lean_inc(x_4); +x_80 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_80, 0, x_4); +x_22 = x_80; +x_23 = x_79; +goto block_30; +} +else +{ +lean_object* x_81; lean_object* x_82; +x_81 = lean_ctor_get(x_76, 1); +lean_inc(x_81); +lean_dec(x_76); +x_82 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3; +x_22 = x_82; +x_23 = x_81; +goto block_30; +} +} +else +{ +uint8_t x_83; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_83 = !lean_is_exclusive(x_76); +if (x_83 == 0) +{ +return x_76; +} +else +{ +lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_84 = lean_ctor_get(x_76, 0); +x_85 = lean_ctor_get(x_76, 1); +lean_inc(x_85); +lean_inc(x_84); +lean_dec(x_76); +x_86 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_86, 0, x_84); +lean_ctor_set(x_86, 1, x_85); +return x_86; +} +} +} +} +block_30: +{ +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_17); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_7); +lean_dec(x_4); +x_24 = lean_ctor_get(x_22, 0); +lean_inc(x_24); +lean_dec(x_22); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +return x_25; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_22, 0); +lean_inc(x_26); +lean_dec(x_22); +x_27 = lean_ctor_get(x_5, 2); +x_28 = lean_nat_add(x_7, x_27); +lean_dec(x_7); +x_6 = x_26; +x_7 = x_28; +x_8 = lean_box(0); +x_9 = lean_box(0); +x_18 = x_23; +goto _start; +} +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_ctor_get(x_1, 0); +lean_inc(x_13); +lean_dec(x_1); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +x_14 = l_Lean_Meta_normLitValue(x_13, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = l_Lean_Meta_normLitValue(x_2, x_8, x_9, x_10, x_11, x_16); +if (lean_obj_tag(x_17) == 0) +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +lean_object* x_19; uint8_t x_20; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_expr_eqv(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +if (x_20 == 0) +{ +uint8_t x_21; lean_object* x_22; +x_21 = 1; +x_22 = lean_box(x_21); +lean_ctor_set(x_17, 0, x_22); +return x_17; +} +else +{ +uint8_t x_23; lean_object* x_24; +x_23 = 0; +x_24 = lean_box(x_23); +lean_ctor_set(x_17, 0, x_24); +return x_17; +} +} +else +{ +lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_25 = lean_ctor_get(x_17, 0); +x_26 = lean_ctor_get(x_17, 1); +lean_inc(x_26); +lean_inc(x_25); +lean_dec(x_17); +x_27 = lean_expr_eqv(x_15, x_25); +lean_dec(x_25); +lean_dec(x_15); +if (x_27 == 0) +{ +uint8_t x_28; lean_object* x_29; lean_object* x_30; +x_28 = 1; +x_29 = lean_box(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_26); +return x_30; +} +else +{ +uint8_t x_31; lean_object* x_32; lean_object* x_33; +x_31 = 0; +x_32 = lean_box(x_31); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_26); +return x_33; +} +} +} +else +{ +uint8_t x_34; +lean_dec(x_15); +x_34 = !lean_is_exclusive(x_17); +if (x_34 == 0) +{ +return x_17; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_35 = lean_ctor_get(x_17, 0); +x_36 = lean_ctor_get(x_17, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_17); +x_37 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_37, 0, x_35); +lean_ctor_set(x_37, 1, x_36); +return x_37; +} +} +} +else +{ +uint8_t x_38; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +x_38 = !lean_is_exclusive(x_14); +if (x_38 == 0) +{ +return x_14; +} +else +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_14, 0); +x_40 = lean_ctor_get(x_14, 1); +lean_inc(x_40); +lean_inc(x_39); +lean_dec(x_14); +x_41 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_41, 0, x_39); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_1); +x_13 = l_Lean_Meta_isLitValue(x_1, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_unbox(x_14); +lean_dec(x_14); +if (x_15 == 0) +{ +uint8_t x_16; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_16 = !lean_is_exclusive(x_13); +if (x_16 == 0) +{ +lean_object* x_17; uint8_t x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_13, 0); +lean_dec(x_17); +x_18 = 0; +x_19 = lean_box(x_18); +lean_ctor_set(x_13, 0, x_19); +return x_13; +} +else +{ +lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_dec(x_13); +x_21 = 0; +x_22 = lean_box(x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_20); +return x_23; +} +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_13, 1); +lean_inc(x_24); +lean_dec(x_13); +x_25 = lean_box(0); +x_26 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1(x_2, x_1, x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_24); +return x_26; +} +} +else +{ +uint8_t x_27; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_13); +if (x_27 == 0) +{ +return x_13; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_13, 0); +x_29 = lean_ctor_get(x_13, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_13); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +uint8_t x_11; lean_object* x_12; lean_object* x_13; +x_11 = 0; +x_12 = lean_box(x_11); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_10); +return x_13; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_levelZero; +x_2 = l_Lean_Expr_sort___override(x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = lean_box(0); +x_3 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3___boxed), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_14 = lean_unsigned_to_nat(0u); +x_15 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_1, x_14); +x_16 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1; +lean_inc(x_15); +x_17 = lean_mk_array(x_15, x_16); +x_18 = lean_unsigned_to_nat(1u); +x_19 = lean_nat_sub(x_15, x_18); +lean_dec(x_15); +x_20 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_1, x_17, x_19); +x_21 = l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(x_2, x_14); +lean_inc(x_21); +x_22 = lean_mk_array(x_21, x_16); +x_23 = lean_nat_sub(x_21, x_18); +lean_dec(x_21); +x_24 = l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(x_2, x_22, x_23); +x_25 = lean_ctor_get(x_3, 3); +lean_inc(x_25); +x_26 = lean_ctor_get(x_3, 4); +lean_inc(x_26); +lean_dec(x_3); +x_27 = lean_nat_add(x_25, x_26); +lean_dec(x_26); +lean_inc(x_25); +x_28 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_28, 0, x_25); +lean_ctor_set(x_28, 1, x_27); +lean_ctor_set(x_28, 2, x_18); +x_29 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +x_30 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1(x_20, x_24, x_28, x_29, x_28, x_29, x_25, lean_box(0), lean_box(0), x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_28); +lean_dec(x_24); +lean_dec(x_20); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_ctor_get(x_31, 0); +lean_inc(x_32); +lean_dec(x_31); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_33 = lean_ctor_get(x_30, 1); +lean_inc(x_33); +lean_dec(x_30); +x_34 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3; +x_35 = lean_box(0); +x_36 = lean_apply_10(x_34, x_35, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_33); +return x_36; +} +else +{ +uint8_t x_37; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_37 = !lean_is_exclusive(x_30); +if (x_37 == 0) +{ +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_30, 0); +lean_dec(x_38); +x_39 = lean_ctor_get(x_32, 0); +lean_inc(x_39); +lean_dec(x_32); +lean_ctor_set(x_30, 0, x_39); +return x_30; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_30, 1); +lean_inc(x_40); +lean_dec(x_30); +x_41 = lean_ctor_get(x_32, 0); +lean_inc(x_41); +lean_dec(x_32); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_40); +return x_42; +} +} +} +else +{ +uint8_t x_43; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_43 = !lean_is_exclusive(x_30); +if (x_43 == 0) +{ +return x_30; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_30, 0); +x_45 = lean_ctor_get(x_30, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_30); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Meta_Grind_getRootENode(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*11 + 2); +if (x_15 == 0) +{ +uint8_t x_16; +x_16 = lean_ctor_get_uint8(x_14, sizeof(void*)*11 + 1); +if (x_16 == 0) +{ +uint8_t x_17; +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_17 = !lean_is_exclusive(x_13); +if (x_17 == 0) +{ +lean_object* x_18; uint8_t x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 0); +lean_dec(x_18); +x_19 = 0; +x_20 = lean_box(x_19); +lean_ctor_set(x_13, 0, x_20); +return x_13; +} +else +{ +lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; +x_21 = lean_ctor_get(x_13, 1); +lean_inc(x_21); +lean_dec(x_13); +x_22 = 0; +x_23 = lean_box(x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_21); +return x_24; +} +} +else +{ +uint8_t x_25; +x_25 = !lean_is_exclusive(x_13); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; uint8_t x_28; +x_26 = lean_ctor_get(x_13, 1); +x_27 = lean_ctor_get(x_13, 0); +lean_dec(x_27); +x_28 = l_Lean_Expr_hasLooseBVars(x_2); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +lean_free_object(x_13); +x_29 = lean_box(0); +x_30 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2(x_2, x_14, x_29, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_26); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_30; +} +else +{ +uint8_t x_31; lean_object* x_32; +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_31 = 0; +x_32 = lean_box(x_31); +lean_ctor_set(x_13, 0, x_32); +return x_13; +} +} +else +{ +lean_object* x_33; uint8_t x_34; +x_33 = lean_ctor_get(x_13, 1); +lean_inc(x_33); +lean_dec(x_13); +x_34 = l_Lean_Expr_hasLooseBVars(x_2); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +x_35 = lean_box(0); +x_36 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2(x_2, x_14, x_35, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_33); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_36; +} +else +{ +uint8_t x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_14); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_37 = 0; +x_38 = lean_box(x_37); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_33); +return x_39; +} +} +} +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_13, 1); +lean_inc(x_40); +lean_dec(x_13); +x_41 = lean_ctor_get(x_14, 0); +lean_inc(x_41); +lean_dec(x_14); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_41); +x_42 = l_Lean_Meta_isConstructorApp_x3f(x_41, x_8, x_9, x_10, x_11, x_40); +if (lean_obj_tag(x_42) == 0) +{ +lean_object* x_43; +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +if (lean_obj_tag(x_43) == 0) +{ +uint8_t x_44; +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_44 = !lean_is_exclusive(x_42); +if (x_44 == 0) +{ +lean_object* x_45; uint8_t x_46; lean_object* x_47; +x_45 = lean_ctor_get(x_42, 0); +lean_dec(x_45); +x_46 = 0; +x_47 = lean_box(x_46); +lean_ctor_set(x_42, 0, x_47); +return x_42; +} +else +{ +lean_object* x_48; uint8_t x_49; lean_object* x_50; lean_object* x_51; +x_48 = lean_ctor_get(x_42, 1); +lean_inc(x_48); +lean_dec(x_42); +x_49 = 0; +x_50 = lean_box(x_49); +x_51 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_51, 0, x_50); +lean_ctor_set(x_51, 1, x_48); +return x_51; +} +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_42, 1); +lean_inc(x_52); +lean_dec(x_42); +x_53 = lean_ctor_get(x_43, 0); +lean_inc(x_53); +lean_dec(x_43); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_2); +x_54 = l_Lean_Meta_isConstructorApp_x3f(x_2, x_8, x_9, x_10, x_11, x_52); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +if (lean_obj_tag(x_55) == 0) +{ +uint8_t x_56; +lean_dec(x_53); +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_56 = !lean_is_exclusive(x_54); +if (x_56 == 0) +{ +lean_object* x_57; uint8_t x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_54, 0); +lean_dec(x_57); +x_58 = 0; +x_59 = lean_box(x_58); +lean_ctor_set(x_54, 0, x_59); +return x_54; +} +else +{ +lean_object* x_60; uint8_t x_61; lean_object* x_62; lean_object* x_63; +x_60 = lean_ctor_get(x_54, 1); +lean_inc(x_60); +lean_dec(x_54); +x_61 = 0; +x_62 = lean_box(x_61); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_60); +return x_63; +} +} +else +{ +uint8_t x_64; +x_64 = !lean_is_exclusive(x_54); +if (x_64 == 0) +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; uint8_t x_73; +x_65 = lean_ctor_get(x_54, 1); +x_66 = lean_ctor_get(x_54, 0); +lean_dec(x_66); +x_67 = lean_ctor_get(x_55, 0); +lean_inc(x_67); +lean_dec(x_55); +x_68 = lean_ctor_get(x_53, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +lean_dec(x_68); +x_70 = lean_ctor_get(x_67, 0); +lean_inc(x_70); +lean_dec(x_67); +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +lean_dec(x_70); +x_72 = lean_name_eq(x_69, x_71); +lean_dec(x_71); +lean_dec(x_69); +x_73 = l_instDecidableNot___rarg(x_72); +if (x_73 == 0) +{ +lean_object* x_74; lean_object* x_75; +lean_free_object(x_54); +x_74 = lean_box(0); +x_75 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4(x_41, x_2, x_53, x_74, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_65); +return x_75; +} +else +{ +uint8_t x_76; lean_object* x_77; +lean_dec(x_53); +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_76 = 1; +x_77 = lean_box(x_76); +lean_ctor_set(x_54, 0, x_77); +return x_54; +} +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; uint8_t x_84; uint8_t x_85; +x_78 = lean_ctor_get(x_54, 1); +lean_inc(x_78); +lean_dec(x_54); +x_79 = lean_ctor_get(x_55, 0); +lean_inc(x_79); +lean_dec(x_55); +x_80 = lean_ctor_get(x_53, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_80, 0); +lean_inc(x_81); +lean_dec(x_80); +x_82 = lean_ctor_get(x_79, 0); +lean_inc(x_82); +lean_dec(x_79); +x_83 = lean_ctor_get(x_82, 0); +lean_inc(x_83); +lean_dec(x_82); +x_84 = lean_name_eq(x_81, x_83); +lean_dec(x_83); +lean_dec(x_81); +x_85 = l_instDecidableNot___rarg(x_84); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; +x_86 = lean_box(0); +x_87 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4(x_41, x_2, x_53, x_86, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_78); +return x_87; +} +else +{ +uint8_t x_88; lean_object* x_89; lean_object* x_90; +lean_dec(x_53); +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_88 = 1; +x_89 = lean_box(x_88); +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_90, 1, x_78); +return x_90; +} +} +} +} +else +{ +uint8_t x_91; +lean_dec(x_53); +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_91 = !lean_is_exclusive(x_54); +if (x_91 == 0) +{ +return x_54; +} +else +{ +lean_object* x_92; lean_object* x_93; lean_object* x_94; +x_92 = lean_ctor_get(x_54, 0); +x_93 = lean_ctor_get(x_54, 1); +lean_inc(x_93); +lean_inc(x_92); +lean_dec(x_54); +x_94 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_94, 0, x_92); +lean_ctor_set(x_94, 1, x_93); +return x_94; +} +} +} +} +else +{ +uint8_t x_95; +lean_dec(x_41); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_95 = !lean_is_exclusive(x_42); +if (x_95 == 0) +{ +return x_42; +} +else +{ +lean_object* x_96; lean_object* x_97; lean_object* x_98; +x_96 = lean_ctor_get(x_42, 0); +x_97 = lean_ctor_get(x_42, 1); +lean_inc(x_97); +lean_inc(x_96); +lean_dec(x_42); +x_98 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_98, 0, x_96); +lean_ctor_set(x_98, 1, x_97); +return x_98; +} +} +} +} +else +{ +uint8_t x_99; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +x_99 = !lean_is_exclusive(x_13); +if (x_99 == 0) +{ +return x_13; +} +else +{ +lean_object* x_100; lean_object* x_101; lean_object* x_102; +x_100 = lean_ctor_get(x_13, 0); +x_101 = lean_ctor_get(x_13, 1); +lean_inc(x_101); +lean_inc(x_100); +lean_dec(x_13); +x_102 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_102, 0, x_100); +lean_ctor_set(x_102, 1, x_101); +return x_102; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +uint8_t x_12; +x_12 = l_Lean_Expr_hasLooseBVars(x_1); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_box(0); +x_14 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5(x_1, x_2, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_14; +} +else +{ +uint8_t x_15; lean_object* x_16; lean_object* x_17; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_15 = 0; +x_16 = lean_box(x_15); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_11); +return x_17; +} +} +} +LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +lean_object* x_18 = _args[17]; +_start: +{ +lean_object* x_19; +x_19 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17, x_18); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_19; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +return x_14; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(x_1); +if (lean_obj_tag(x_11) == 0) +{ +uint8_t x_12; lean_object* x_13; lean_object* x_14; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_12 = 0; +x_13 = lean_box(x_12); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_13); +lean_ctor_set(x_14, 1, x_10); +return x_14; +} +else +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_15 = lean_ctor_get(x_11, 0); +lean_inc(x_15); +lean_dec(x_11); +x_16 = lean_ctor_get(x_15, 1); +lean_inc(x_16); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +lean_dec(x_15); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +lean_dec(x_16); +x_19 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse(x_17, x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +return x_19; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_1); +lean_ctor_set(x_14, 1, x_2); +x_15 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_15, 0, x_14); +x_16 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_16, 0, x_15); +lean_ctor_set(x_16, 1, x_13); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_12 = l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1; +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_1); +x_14 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_14, 0, x_13); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_11); +return x_15; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("grind", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("debug", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("matchCond", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1; +x_2 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2; +x_3 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("satifised", 9, 9); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("\nthe following equality is false", 32, 32); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; lean_object* x_19; +x_19 = lean_ctor_get(x_2, 1); +lean_inc(x_19); +lean_dec(x_2); +if (lean_obj_tag(x_19) == 7) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_19, 1); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 2); +lean_inc(x_21); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +lean_inc(x_20); +x_22 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp(x_20, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; uint8_t x_24; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +x_24 = lean_unbox(x_23); +lean_dec(x_23); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_dec(x_20); +x_25 = lean_ctor_get(x_22, 1); +lean_inc(x_25); +lean_dec(x_22); +x_26 = lean_box(0); +lean_inc(x_1); +x_27 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1(x_1, x_21, x_19, x_26, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_25); +lean_dec(x_19); +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_12 = x_28; +x_13 = x_29; +goto block_18; +} +else +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; +lean_dec(x_21); +x_30 = lean_ctor_get(x_22, 1); +lean_inc(x_30); +lean_dec(x_22); +x_31 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4; +x_32 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_31, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_unbox(x_33); +lean_dec(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_20); +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_dec(x_32); +x_36 = lean_box(0); +x_37 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(x_19, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_35); +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_12 = x_38; +x_13 = x_39; +goto block_18; +} +else +{ +uint8_t x_40; +x_40 = !lean_is_exclusive(x_32); +if (x_40 == 0) +{ +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_41 = lean_ctor_get(x_32, 1); +x_42 = lean_ctor_get(x_32, 0); +lean_dec(x_42); +lean_inc(x_19); +x_43 = l_Lean_indentExpr(x_19); +x_44 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6; +lean_ctor_set_tag(x_32, 7); +lean_ctor_set(x_32, 1, x_43); +lean_ctor_set(x_32, 0, x_44); +x_45 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8; +x_46 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_46, 0, x_32); +lean_ctor_set(x_46, 1, x_45); +x_47 = l_Lean_indentExpr(x_20); +x_48 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +x_49 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_50 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +x_51 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_31, x_50, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_41); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(x_19, x_52, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_53); +lean_dec(x_52); +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_54, 1); +lean_inc(x_56); +lean_dec(x_54); +x_12 = x_55; +x_13 = x_56; +goto block_18; +} +else +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_57 = lean_ctor_get(x_32, 1); +lean_inc(x_57); +lean_dec(x_32); +lean_inc(x_19); +x_58 = l_Lean_indentExpr(x_19); +x_59 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6; +x_60 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_60, 0, x_59); +lean_ctor_set(x_60, 1, x_58); +x_61 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8; +x_62 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_62, 0, x_60); +lean_ctor_set(x_62, 1, x_61); +x_63 = l_Lean_indentExpr(x_20); +x_64 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_64, 0, x_62); +lean_ctor_set(x_64, 1, x_63); +x_65 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_66 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_65); +x_67 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_31, x_66, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_57); +x_68 = lean_ctor_get(x_67, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_67, 1); +lean_inc(x_69); +lean_dec(x_67); +x_70 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(x_19, x_68, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_69); +lean_dec(x_68); +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +lean_dec(x_70); +x_12 = x_71; +x_13 = x_72; +goto block_18; +} +} +} +} +else +{ +uint8_t x_73; +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_19); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_73 = !lean_is_exclusive(x_22); +if (x_73 == 0) +{ +return x_22; +} +else +{ +lean_object* x_74; lean_object* x_75; lean_object* x_76; +x_74 = lean_ctor_get(x_22, 0); +x_75 = lean_ctor_get(x_22, 1); +lean_inc(x_75); +lean_inc(x_74); +lean_dec(x_22); +x_76 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_76, 0, x_74); +lean_ctor_set(x_76, 1, x_75); +return x_76; +} +} +} +else +{ +lean_object* x_77; lean_object* x_78; +lean_inc(x_1); +x_77 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_77, 0, x_1); +lean_ctor_set(x_77, 1, x_19); +x_78 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_78, 0, x_77); +x_12 = x_78; +x_13 = x_11; +goto block_18; +} +block_18: +{ +if (lean_obj_tag(x_12) == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +lean_dec(x_12); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_13); +return x_15; +} +else +{ +lean_object* x_16; +x_16 = lean_ctor_get(x_12, 0); +lean_inc(x_16); +lean_dec(x_12); +x_2 = x_16; +x_11 = x_13; +goto _start; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_box(0); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_1); +x_13 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1(x_11, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; lean_object* x_15; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +lean_dec(x_14); +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; +x_16 = !lean_is_exclusive(x_13); +if (x_16 == 0) +{ +lean_object* x_17; uint8_t x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_13, 0); +lean_dec(x_17); +x_18 = 0; +x_19 = lean_box(x_18); +lean_ctor_set(x_13, 0, x_19); +return x_13; +} +else +{ +lean_object* x_20; uint8_t x_21; lean_object* x_22; lean_object* x_23; +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_dec(x_13); +x_21 = 0; +x_22 = lean_box(x_21); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_20); +return x_23; +} +} +else +{ +uint8_t x_24; +x_24 = !lean_is_exclusive(x_13); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_ctor_get(x_13, 0); +lean_dec(x_25); +x_26 = lean_ctor_get(x_15, 0); +lean_inc(x_26); +lean_dec(x_15); +lean_ctor_set(x_13, 0, x_26); +return x_13; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_13, 1); +lean_inc(x_27); +lean_dec(x_13); +x_28 = lean_ctor_get(x_15, 0); +lean_inc(x_28); +lean_dec(x_15); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_27); +return x_29; +} +} +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_13); +if (x_30 == 0) +{ +return x_13; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_13, 0); +x_32 = lean_ctor_get(x_13, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_13); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___lambda__1), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; uint8_t x_12; +x_11 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_1, x_6, x_7, x_8, x_9, x_10); +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +x_15 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1; +x_16 = l_Lean_Expr_cleanupAnnotations(x_13); +x_17 = l_Lean_Expr_isApp(x_16); +if (x_17 == 0) +{ +uint8_t x_18; lean_object* x_19; +lean_dec(x_16); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_18 = 0; +x_19 = lean_box(x_18); +lean_ctor_set(x_11, 0, x_19); +return x_11; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_20 = l_Lean_Expr_appArg(x_16, lean_box(0)); +x_21 = l_Lean_Expr_appFnCleanup(x_16, lean_box(0)); +x_22 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_23 = l_Lean_Expr_isConstOf(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +uint8_t x_24; lean_object* x_25; +lean_dec(x_20); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_24 = 0; +x_25 = lean_box(x_24); +lean_ctor_set(x_11, 0, x_25); +return x_11; +} +else +{ +lean_object* x_26; +lean_free_object(x_11); +x_26 = lean_apply_10(x_15, x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_14); +return x_26; +} +} +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; uint8_t x_31; +x_27 = lean_ctor_get(x_11, 0); +x_28 = lean_ctor_get(x_11, 1); +lean_inc(x_28); +lean_inc(x_27); +lean_dec(x_11); +x_29 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1; +x_30 = l_Lean_Expr_cleanupAnnotations(x_27); +x_31 = l_Lean_Expr_isApp(x_30); +if (x_31 == 0) +{ +uint8_t x_32; lean_object* x_33; lean_object* x_34; +lean_dec(x_30); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_32 = 0; +x_33 = lean_box(x_32); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_34, 1, x_28); +return x_34; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; +x_35 = l_Lean_Expr_appArg(x_30, lean_box(0)); +x_36 = l_Lean_Expr_appFnCleanup(x_30, lean_box(0)); +x_37 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_38 = l_Lean_Expr_isConstOf(x_36, x_37); +lean_dec(x_36); +if (x_38 == 0) +{ +uint8_t x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_35); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_39 = 0; +x_40 = lean_box(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_28); +return x_41; +} +else +{ +lean_object* x_42; +x_42 = lean_apply_10(x_29, x_35, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_28); +return x_42; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, size_t x_6, size_t x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16, lean_object* x_17) { +_start: +{ +uint8_t x_18; +x_18 = lean_usize_dec_lt(x_7, x_6); +if (x_18 == 0) +{ +lean_object* x_19; +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_1); +x_19 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_19, 0, x_8); +lean_ctor_set(x_19, 1, x_17); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; +lean_dec(x_8); +x_20 = lean_array_uget(x_5, x_7); +lean_inc(x_16); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_21 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f(x_20, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +if (lean_obj_tag(x_22) == 0) +{ +lean_object* x_23; size_t x_24; size_t x_25; +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = 1; +x_25 = lean_usize_add(x_7, x_24); +lean_inc(x_4); +{ +size_t _tmp_6 = x_25; +lean_object* _tmp_7 = x_4; +lean_object* _tmp_16 = x_23; +x_7 = _tmp_6; +x_8 = _tmp_7; +x_17 = _tmp_16; +} +goto _start; +} +else +{ +lean_object* x_27; uint8_t x_28; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_27 = lean_ctor_get(x_21, 1); +lean_inc(x_27); +lean_dec(x_21); +x_28 = !lean_is_exclusive(x_22); +if (x_28 == 0) +{ +lean_object* x_29; uint8_t x_30; uint8_t x_31; uint8_t x_32; lean_object* x_33; +x_29 = lean_ctor_get(x_22, 0); +x_30 = 0; +x_31 = 1; +x_32 = 1; +x_33 = l_Lean_Meta_mkLambdaFVars(x_2, x_29, x_30, x_31, x_30, x_32, x_13, x_14, x_15, x_16, x_27); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +if (lean_obj_tag(x_33) == 0) +{ +uint8_t x_34; +x_34 = !lean_is_exclusive(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_35 = lean_ctor_get(x_33, 0); +x_36 = l_Lean_Expr_app___override(x_1, x_35); +lean_ctor_set(x_22, 0, x_36); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_22); +x_38 = lean_box(0); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +lean_ctor_set(x_33, 0, x_39); +return x_33; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_40 = lean_ctor_get(x_33, 0); +x_41 = lean_ctor_get(x_33, 1); +lean_inc(x_41); +lean_inc(x_40); +lean_dec(x_33); +x_42 = l_Lean_Expr_app___override(x_1, x_40); +lean_ctor_set(x_22, 0, x_42); +x_43 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_43, 0, x_22); +x_44 = lean_box(0); +x_45 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +x_46 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_46, 0, x_45); +lean_ctor_set(x_46, 1, x_41); +return x_46; +} +} +else +{ +uint8_t x_47; +lean_free_object(x_22); +lean_dec(x_1); +x_47 = !lean_is_exclusive(x_33); +if (x_47 == 0) +{ +return x_33; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_33, 0); +x_49 = lean_ctor_get(x_33, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_33); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; +} +} +} +else +{ +lean_object* x_51; uint8_t x_52; uint8_t x_53; uint8_t x_54; lean_object* x_55; +x_51 = lean_ctor_get(x_22, 0); +lean_inc(x_51); +lean_dec(x_22); +x_52 = 0; +x_53 = 1; +x_54 = 1; +x_55 = l_Lean_Meta_mkLambdaFVars(x_2, x_51, x_52, x_53, x_52, x_54, x_13, x_14, x_15, x_16, x_27); +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +if (lean_obj_tag(x_55) == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_56 = lean_ctor_get(x_55, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_55, 1); +lean_inc(x_57); +if (lean_is_exclusive(x_55)) { + lean_ctor_release(x_55, 0); + lean_ctor_release(x_55, 1); + x_58 = x_55; +} else { + lean_dec_ref(x_55); + x_58 = lean_box(0); +} +x_59 = l_Lean_Expr_app___override(x_1, x_56); +x_60 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_60, 0, x_59); +x_61 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_61, 0, x_60); +x_62 = lean_box(0); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_62); +if (lean_is_scalar(x_58)) { + x_64 = lean_alloc_ctor(0, 2, 0); +} else { + x_64 = x_58; +} +lean_ctor_set(x_64, 0, x_63); +lean_ctor_set(x_64, 1, x_57); +return x_64; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_1); +x_65 = lean_ctor_get(x_55, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_55, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_55)) { + lean_ctor_release(x_55, 0); + lean_ctor_release(x_55, 1); + x_67 = x_55; +} else { + lean_dec_ref(x_55); + x_67 = lean_box(0); +} +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(1, 2, 0); +} else { + x_68 = x_67; +} +lean_ctor_set(x_68, 0, x_65); +lean_ctor_set(x_68, 1, x_66); +return x_68; +} +} +} +} +else +{ +uint8_t x_69; +lean_dec(x_16); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_1); +x_69 = !lean_is_exclusive(x_21); +if (x_69 == 0) +{ +return x_21; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_21, 0); +x_71 = lean_ctor_get(x_21, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_21); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +return x_72; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = lean_apply_11(x_1, x_6, x_7, x_2, x_3, x_4, x_5, x_8, x_9, x_10, x_11, x_12); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(lean_object* x_1, lean_object* x_2, uint8_t x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; +x_13 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___lambda__1), 12, 5); +lean_closure_set(x_13, 0, x_2); +lean_closure_set(x_13, 1, x_4); +lean_closure_set(x_13, 2, x_5); +lean_closure_set(x_13, 3, x_6); +lean_closure_set(x_13, 4, x_7); +x_14 = l___private_Lean_Meta_Basic_0__Lean_Meta_forallTelescopeReducingImp___rarg(x_1, x_13, x_3, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +return x_14; +} +else +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 0); +x_17 = lean_ctor_get(x_14, 1); +lean_inc(x_17); +lean_inc(x_16); +lean_dec(x_14); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_16); +lean_ctor_set(x_18, 1, x_17); +return x_18; +} +} +else +{ +uint8_t x_19; +x_19 = !lean_is_exclusive(x_14); +if (x_19 == 0) +{ +return x_14; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_14, 0); +x_21 = lean_ctor_get(x_14, 1); +lean_inc(x_21); +lean_inc(x_20); +lean_dec(x_14); +x_22 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_22, 0, x_20); +lean_ctor_set(x_22, 1, x_21); +return x_22; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___boxed), 12, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_1); +lean_ctor_set(x_12, 1, x_11); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; size_t x_15; size_t x_16; lean_object* x_17; lean_object* x_18; +x_13 = lean_box(0); +x_14 = lean_box(0); +x_15 = lean_array_size(x_2); +x_16 = 0; +x_17 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2; +x_18 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1(x_1, x_2, x_13, x_17, x_2, x_15, x_16, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +lean_dec(x_19); +if (lean_obj_tag(x_20) == 0) +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_18); +if (x_21 == 0) +{ +lean_object* x_22; +x_22 = lean_ctor_get(x_18, 0); +lean_dec(x_22); +lean_ctor_set(x_18, 0, x_14); +return x_18; +} +else +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_18, 1); +lean_inc(x_23); +lean_dec(x_18); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_14); +lean_ctor_set(x_24, 1, x_23); +return x_24; +} +} +else +{ +uint8_t x_25; +x_25 = !lean_is_exclusive(x_18); +if (x_25 == 0) +{ +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_18, 0); +lean_dec(x_26); +x_27 = lean_ctor_get(x_20, 0); +lean_inc(x_27); +lean_dec(x_20); +lean_ctor_set(x_18, 0, x_27); +return x_18; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_18, 1); +lean_inc(x_28); +lean_dec(x_18); +x_29 = lean_ctor_get(x_20, 0); +lean_inc(x_29); +lean_dec(x_20); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_29); +lean_ctor_set(x_30, 1, x_28); +return x_30; +} +} +} +else +{ +uint8_t x_31; +x_31 = !lean_is_exclusive(x_18); +if (x_31 == 0) +{ +return x_18; +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_32 = lean_ctor_get(x_18, 0); +x_33 = lean_ctor_get(x_18, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_18); +x_34 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +return x_34; +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +uint8_t x_14; +x_14 = lean_ctor_get_uint8(x_1, sizeof(void*)*11 + 2); +if (x_14 == 0) +{ +uint8_t x_15; +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +x_15 = lean_ctor_get_uint8(x_1, sizeof(void*)*11 + 1); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_16 = lean_box(0); +x_17 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_17, 0, x_16); +lean_ctor_set(x_17, 1, x_13); +return x_17; +} +else +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_1, 0); +lean_inc(x_18); +lean_dec(x_1); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_18); +x_19 = l_Lean_Meta_normLitValue(x_18, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_2); +x_22 = l_Lean_Meta_normLitValue(x_2, x_9, x_10, x_11, x_12, x_21); +if (lean_obj_tag(x_22) == 0) +{ +uint8_t x_23; +x_23 = !lean_is_exclusive(x_22); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; uint8_t x_26; +x_24 = lean_ctor_get(x_22, 0); +x_25 = lean_ctor_get(x_22, 1); +x_26 = lean_expr_eqv(x_20, x_24); +lean_dec(x_24); +lean_dec(x_20); +if (x_26 == 0) +{ +lean_object* x_27; +lean_free_object(x_22); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_27 = l_Lean_Meta_mkEq(x_18, x_2, x_9, x_10, x_11, x_12, x_25); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +x_30 = l_Lean_mkNot(x_28); +x_31 = l_Lean_Meta_mkDecideProof(x_30, x_9, x_10, x_11, x_12, x_29); +if (lean_obj_tag(x_31) == 0) +{ +uint8_t x_32; +x_32 = !lean_is_exclusive(x_31); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_31, 0); +x_34 = l_Lean_Expr_app___override(x_33, x_4); +x_35 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_31, 0, x_35); +return x_31; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +x_36 = lean_ctor_get(x_31, 0); +x_37 = lean_ctor_get(x_31, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_31); +x_38 = l_Lean_Expr_app___override(x_36, x_4); +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_37); +return x_40; +} +} +else +{ +uint8_t x_41; +lean_dec(x_4); +x_41 = !lean_is_exclusive(x_31); +if (x_41 == 0) +{ +return x_31; +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_31, 0); +x_43 = lean_ctor_get(x_31, 1); +lean_inc(x_43); +lean_inc(x_42); +lean_dec(x_31); +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; +} +} +} +else +{ +uint8_t x_45; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_45 = !lean_is_exclusive(x_27); +if (x_45 == 0) +{ +return x_27; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_27, 0); +x_47 = lean_ctor_get(x_27, 1); +lean_inc(x_47); +lean_inc(x_46); +lean_dec(x_27); +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; +} +} +} +else +{ +lean_object* x_49; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_2); +x_49 = lean_box(0); +lean_ctor_set(x_22, 0, x_49); +return x_22; +} +} +else +{ +lean_object* x_50; lean_object* x_51; uint8_t x_52; +x_50 = lean_ctor_get(x_22, 0); +x_51 = lean_ctor_get(x_22, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_22); +x_52 = lean_expr_eqv(x_20, x_50); +lean_dec(x_50); +lean_dec(x_20); +if (x_52 == 0) +{ +lean_object* x_53; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_53 = l_Lean_Meta_mkEq(x_18, x_2, x_9, x_10, x_11, x_12, x_51); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +x_56 = l_Lean_mkNot(x_54); +x_57 = l_Lean_Meta_mkDecideProof(x_56, x_9, x_10, x_11, x_12, x_55); +if (lean_obj_tag(x_57) == 0) +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_ctor_get(x_57, 1); +lean_inc(x_59); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + lean_ctor_release(x_57, 1); + x_60 = x_57; +} else { + lean_dec_ref(x_57); + x_60 = lean_box(0); +} +x_61 = l_Lean_Expr_app___override(x_58, x_4); +x_62 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_62, 0, x_61); +if (lean_is_scalar(x_60)) { + x_63 = lean_alloc_ctor(0, 2, 0); +} else { + x_63 = x_60; +} +lean_ctor_set(x_63, 0, x_62); +lean_ctor_set(x_63, 1, x_59); +return x_63; +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; +lean_dec(x_4); +x_64 = lean_ctor_get(x_57, 0); +lean_inc(x_64); +x_65 = lean_ctor_get(x_57, 1); +lean_inc(x_65); +if (lean_is_exclusive(x_57)) { + lean_ctor_release(x_57, 0); + lean_ctor_release(x_57, 1); + x_66 = x_57; +} else { + lean_dec_ref(x_57); + x_66 = lean_box(0); +} +if (lean_is_scalar(x_66)) { + x_67 = lean_alloc_ctor(1, 2, 0); +} else { + x_67 = x_66; +} +lean_ctor_set(x_67, 0, x_64); +lean_ctor_set(x_67, 1, x_65); +return x_67; +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +x_68 = lean_ctor_get(x_53, 0); +lean_inc(x_68); +x_69 = lean_ctor_get(x_53, 1); +lean_inc(x_69); +if (lean_is_exclusive(x_53)) { + lean_ctor_release(x_53, 0); + lean_ctor_release(x_53, 1); + x_70 = x_53; +} else { + lean_dec_ref(x_53); + x_70 = lean_box(0); +} +if (lean_is_scalar(x_70)) { + x_71 = lean_alloc_ctor(1, 2, 0); +} else { + x_71 = x_70; +} +lean_ctor_set(x_71, 0, x_68); +lean_ctor_set(x_71, 1, x_69); +return x_71; +} +} +else +{ +lean_object* x_72; lean_object* x_73; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_2); +x_72 = lean_box(0); +x_73 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_73, 0, x_72); +lean_ctor_set(x_73, 1, x_51); +return x_73; +} +} +} +else +{ +uint8_t x_74; +lean_dec(x_20); +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_2); +x_74 = !lean_is_exclusive(x_22); +if (x_74 == 0) +{ +return x_22; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_22, 0); +x_76 = lean_ctor_get(x_22, 1); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_22); +x_77 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +return x_77; +} +} +} +else +{ +uint8_t x_78; +lean_dec(x_18); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_4); +lean_dec(x_2); +x_78 = !lean_is_exclusive(x_19); +if (x_78 == 0) +{ +return x_19; +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_19, 0); +x_80 = lean_ctor_get(x_19, 1); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_19); +x_81 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_79); +lean_ctor_set(x_81, 1, x_80); +return x_81; +} +} +} +} +else +{ +lean_object* x_82; lean_object* x_83; +x_82 = lean_ctor_get(x_1, 0); +lean_inc(x_82); +lean_dec(x_1); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_83 = l_Lean_Meta_isConstructorApp_x3f(x_82, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_83) == 0) +{ +lean_object* x_84; +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +if (lean_obj_tag(x_84) == 0) +{ +uint8_t x_85; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_85 = !lean_is_exclusive(x_83); +if (x_85 == 0) +{ +lean_object* x_86; lean_object* x_87; +x_86 = lean_ctor_get(x_83, 0); +lean_dec(x_86); +x_87 = lean_box(0); +lean_ctor_set(x_83, 0, x_87); +return x_83; +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; +x_88 = lean_ctor_get(x_83, 1); +lean_inc(x_88); +lean_dec(x_83); +x_89 = lean_box(0); +x_90 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_90, 0, x_89); +lean_ctor_set(x_90, 1, x_88); +return x_90; +} +} +else +{ +lean_object* x_91; lean_object* x_92; lean_object* x_93; +x_91 = lean_ctor_get(x_83, 1); +lean_inc(x_91); +lean_dec(x_83); +x_92 = lean_ctor_get(x_84, 0); +lean_inc(x_92); +lean_dec(x_84); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_93 = l_Lean_Meta_isConstructorApp_x3f(x_2, x_9, x_10, x_11, x_12, x_91); +if (lean_obj_tag(x_93) == 0) +{ +lean_object* x_94; +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +if (lean_obj_tag(x_94) == 0) +{ +uint8_t x_95; +lean_dec(x_92); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_95 = !lean_is_exclusive(x_93); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; +x_96 = lean_ctor_get(x_93, 0); +lean_dec(x_96); +x_97 = lean_box(0); +lean_ctor_set(x_93, 0, x_97); +return x_93; +} +else +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_93, 1); +lean_inc(x_98); +lean_dec(x_93); +x_99 = lean_box(0); +x_100 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_100, 0, x_99); +lean_ctor_set(x_100, 1, x_98); +return x_100; +} +} +else +{ +lean_object* x_101; uint8_t x_102; +x_101 = lean_ctor_get(x_93, 1); +lean_inc(x_101); +lean_dec(x_93); +x_102 = !lean_is_exclusive(x_94); +if (x_102 == 0) +{ +lean_object* x_103; lean_object* x_104; +x_103 = lean_ctor_get(x_94, 0); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_104 = l_Lean_Meta_mkNoConfusion(x_3, x_4, x_9, x_10, x_11, x_12, x_101); +if (lean_obj_tag(x_104) == 0) +{ +uint8_t x_105; +x_105 = !lean_is_exclusive(x_104); +if (x_105 == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; uint8_t x_113; +x_106 = lean_ctor_get(x_104, 0); +x_107 = lean_ctor_get(x_104, 1); +x_108 = lean_ctor_get(x_92, 0); +lean_inc(x_108); +lean_dec(x_92); +x_109 = lean_ctor_get(x_108, 0); +lean_inc(x_109); +lean_dec(x_108); +x_110 = lean_ctor_get(x_103, 0); +lean_inc(x_110); +lean_dec(x_103); +x_111 = lean_ctor_get(x_110, 0); +lean_inc(x_111); +lean_dec(x_110); +x_112 = lean_name_eq(x_109, x_111); +lean_dec(x_111); +lean_dec(x_109); +x_113 = l_instDecidableNot___rarg(x_112); +if (x_113 == 0) +{ +lean_object* x_114; +lean_free_object(x_104); +lean_free_object(x_94); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_106); +x_114 = lean_infer_type(x_106, x_9, x_10, x_11, x_12, x_107); +if (lean_obj_tag(x_114) == 0) +{ +lean_object* x_115; lean_object* x_116; lean_object* x_117; +x_115 = lean_ctor_get(x_114, 0); +lean_inc(x_115); +x_116 = lean_ctor_get(x_114, 1); +lean_inc(x_116); +lean_dec(x_114); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_117 = l_Lean_Meta_whnfD(x_115, x_9, x_10, x_11, x_12, x_116); +if (lean_obj_tag(x_117) == 0) +{ +lean_object* x_118; +x_118 = lean_ctor_get(x_117, 0); +lean_inc(x_118); +if (lean_obj_tag(x_118) == 7) +{ +lean_object* x_119; lean_object* x_120; lean_object* x_121; uint8_t x_122; lean_object* x_123; +x_119 = lean_ctor_get(x_117, 1); +lean_inc(x_119); +lean_dec(x_117); +x_120 = lean_ctor_get(x_118, 1); +lean_inc(x_120); +lean_dec(x_118); +x_121 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2___boxed), 12, 1); +lean_closure_set(x_121, 0, x_106); +x_122 = 0; +x_123 = l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(x_120, x_121, x_122, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_119); +return x_123; +} +else +{ +uint8_t x_124; +lean_dec(x_118); +lean_dec(x_106); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_124 = !lean_is_exclusive(x_117); +if (x_124 == 0) +{ +lean_object* x_125; lean_object* x_126; +x_125 = lean_ctor_get(x_117, 0); +lean_dec(x_125); +x_126 = lean_box(0); +lean_ctor_set(x_117, 0, x_126); +return x_117; +} +else +{ +lean_object* x_127; lean_object* x_128; lean_object* x_129; +x_127 = lean_ctor_get(x_117, 1); +lean_inc(x_127); +lean_dec(x_117); +x_128 = lean_box(0); +x_129 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_129, 0, x_128); +lean_ctor_set(x_129, 1, x_127); +return x_129; +} +} +} +else +{ +uint8_t x_130; +lean_dec(x_106); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_130 = !lean_is_exclusive(x_117); +if (x_130 == 0) +{ +return x_117; +} +else +{ +lean_object* x_131; lean_object* x_132; lean_object* x_133; +x_131 = lean_ctor_get(x_117, 0); +x_132 = lean_ctor_get(x_117, 1); +lean_inc(x_132); +lean_inc(x_131); +lean_dec(x_117); +x_133 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_133, 0, x_131); +lean_ctor_set(x_133, 1, x_132); +return x_133; +} +} +} +else +{ +uint8_t x_134; +lean_dec(x_106); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_134 = !lean_is_exclusive(x_114); +if (x_134 == 0) +{ +return x_114; +} +else +{ +lean_object* x_135; lean_object* x_136; lean_object* x_137; +x_135 = lean_ctor_get(x_114, 0); +x_136 = lean_ctor_get(x_114, 1); +lean_inc(x_136); +lean_inc(x_135); +lean_dec(x_114); +x_137 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_137, 0, x_135); +lean_ctor_set(x_137, 1, x_136); +return x_137; +} +} +} +else +{ +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_ctor_set(x_94, 0, x_106); +lean_ctor_set(x_104, 0, x_94); +return x_104; +} +} +else +{ +lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; uint8_t x_144; uint8_t x_145; +x_138 = lean_ctor_get(x_104, 0); +x_139 = lean_ctor_get(x_104, 1); +lean_inc(x_139); +lean_inc(x_138); +lean_dec(x_104); +x_140 = lean_ctor_get(x_92, 0); +lean_inc(x_140); +lean_dec(x_92); +x_141 = lean_ctor_get(x_140, 0); +lean_inc(x_141); +lean_dec(x_140); +x_142 = lean_ctor_get(x_103, 0); +lean_inc(x_142); +lean_dec(x_103); +x_143 = lean_ctor_get(x_142, 0); +lean_inc(x_143); +lean_dec(x_142); +x_144 = lean_name_eq(x_141, x_143); +lean_dec(x_143); +lean_dec(x_141); +x_145 = l_instDecidableNot___rarg(x_144); +if (x_145 == 0) +{ +lean_object* x_146; +lean_free_object(x_94); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_138); +x_146 = lean_infer_type(x_138, x_9, x_10, x_11, x_12, x_139); +if (lean_obj_tag(x_146) == 0) +{ +lean_object* x_147; lean_object* x_148; lean_object* x_149; +x_147 = lean_ctor_get(x_146, 0); +lean_inc(x_147); +x_148 = lean_ctor_get(x_146, 1); +lean_inc(x_148); +lean_dec(x_146); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_149 = l_Lean_Meta_whnfD(x_147, x_9, x_10, x_11, x_12, x_148); +if (lean_obj_tag(x_149) == 0) +{ +lean_object* x_150; +x_150 = lean_ctor_get(x_149, 0); +lean_inc(x_150); +if (lean_obj_tag(x_150) == 7) +{ +lean_object* x_151; lean_object* x_152; lean_object* x_153; uint8_t x_154; lean_object* x_155; +x_151 = lean_ctor_get(x_149, 1); +lean_inc(x_151); +lean_dec(x_149); +x_152 = lean_ctor_get(x_150, 1); +lean_inc(x_152); +lean_dec(x_150); +x_153 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2___boxed), 12, 1); +lean_closure_set(x_153, 0, x_138); +x_154 = 0; +x_155 = l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(x_152, x_153, x_154, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_151); +return x_155; +} +else +{ +lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; +lean_dec(x_150); +lean_dec(x_138); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_156 = lean_ctor_get(x_149, 1); +lean_inc(x_156); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_157 = x_149; +} else { + lean_dec_ref(x_149); + x_157 = lean_box(0); +} +x_158 = lean_box(0); +if (lean_is_scalar(x_157)) { + x_159 = lean_alloc_ctor(0, 2, 0); +} else { + x_159 = x_157; +} +lean_ctor_set(x_159, 0, x_158); +lean_ctor_set(x_159, 1, x_156); +return x_159; +} +} +else +{ +lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; +lean_dec(x_138); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_160 = lean_ctor_get(x_149, 0); +lean_inc(x_160); +x_161 = lean_ctor_get(x_149, 1); +lean_inc(x_161); +if (lean_is_exclusive(x_149)) { + lean_ctor_release(x_149, 0); + lean_ctor_release(x_149, 1); + x_162 = x_149; +} else { + lean_dec_ref(x_149); + x_162 = lean_box(0); +} +if (lean_is_scalar(x_162)) { + x_163 = lean_alloc_ctor(1, 2, 0); +} else { + x_163 = x_162; +} +lean_ctor_set(x_163, 0, x_160); +lean_ctor_set(x_163, 1, x_161); +return x_163; +} +} +else +{ +lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; +lean_dec(x_138); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_164 = lean_ctor_get(x_146, 0); +lean_inc(x_164); +x_165 = lean_ctor_get(x_146, 1); +lean_inc(x_165); +if (lean_is_exclusive(x_146)) { + lean_ctor_release(x_146, 0); + lean_ctor_release(x_146, 1); + x_166 = x_146; +} else { + lean_dec_ref(x_146); + x_166 = lean_box(0); +} +if (lean_is_scalar(x_166)) { + x_167 = lean_alloc_ctor(1, 2, 0); +} else { + x_167 = x_166; +} +lean_ctor_set(x_167, 0, x_164); +lean_ctor_set(x_167, 1, x_165); +return x_167; +} +} +else +{ +lean_object* x_168; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_ctor_set(x_94, 0, x_138); +x_168 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_168, 0, x_94); +lean_ctor_set(x_168, 1, x_139); +return x_168; +} +} +} +else +{ +uint8_t x_169; +lean_free_object(x_94); +lean_dec(x_103); +lean_dec(x_92); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_169 = !lean_is_exclusive(x_104); +if (x_169 == 0) +{ +return x_104; +} +else +{ +lean_object* x_170; lean_object* x_171; lean_object* x_172; +x_170 = lean_ctor_get(x_104, 0); +x_171 = lean_ctor_get(x_104, 1); +lean_inc(x_171); +lean_inc(x_170); +lean_dec(x_104); +x_172 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_172, 0, x_170); +lean_ctor_set(x_172, 1, x_171); +return x_172; +} +} +} +else +{ +lean_object* x_173; lean_object* x_174; +x_173 = lean_ctor_get(x_94, 0); +lean_inc(x_173); +lean_dec(x_94); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_174 = l_Lean_Meta_mkNoConfusion(x_3, x_4, x_9, x_10, x_11, x_12, x_101); +if (lean_obj_tag(x_174) == 0) +{ +lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; uint8_t x_182; uint8_t x_183; +x_175 = lean_ctor_get(x_174, 0); +lean_inc(x_175); +x_176 = lean_ctor_get(x_174, 1); +lean_inc(x_176); +if (lean_is_exclusive(x_174)) { + lean_ctor_release(x_174, 0); + lean_ctor_release(x_174, 1); + x_177 = x_174; +} else { + lean_dec_ref(x_174); + x_177 = lean_box(0); +} +x_178 = lean_ctor_get(x_92, 0); +lean_inc(x_178); +lean_dec(x_92); +x_179 = lean_ctor_get(x_178, 0); +lean_inc(x_179); +lean_dec(x_178); +x_180 = lean_ctor_get(x_173, 0); +lean_inc(x_180); +lean_dec(x_173); +x_181 = lean_ctor_get(x_180, 0); +lean_inc(x_181); +lean_dec(x_180); +x_182 = lean_name_eq(x_179, x_181); +lean_dec(x_181); +lean_dec(x_179); +x_183 = l_instDecidableNot___rarg(x_182); +if (x_183 == 0) +{ +lean_object* x_184; +lean_dec(x_177); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_175); +x_184 = lean_infer_type(x_175, x_9, x_10, x_11, x_12, x_176); +if (lean_obj_tag(x_184) == 0) +{ +lean_object* x_185; lean_object* x_186; lean_object* x_187; +x_185 = lean_ctor_get(x_184, 0); +lean_inc(x_185); +x_186 = lean_ctor_get(x_184, 1); +lean_inc(x_186); +lean_dec(x_184); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_187 = l_Lean_Meta_whnfD(x_185, x_9, x_10, x_11, x_12, x_186); +if (lean_obj_tag(x_187) == 0) +{ +lean_object* x_188; +x_188 = lean_ctor_get(x_187, 0); +lean_inc(x_188); +if (lean_obj_tag(x_188) == 7) +{ +lean_object* x_189; lean_object* x_190; lean_object* x_191; uint8_t x_192; lean_object* x_193; +x_189 = lean_ctor_get(x_187, 1); +lean_inc(x_189); +lean_dec(x_187); +x_190 = lean_ctor_get(x_188, 1); +lean_inc(x_190); +lean_dec(x_188); +x_191 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2___boxed), 12, 1); +lean_closure_set(x_191, 0, x_175); +x_192 = 0; +x_193 = l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(x_190, x_191, x_192, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_189); +return x_193; +} +else +{ +lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; +lean_dec(x_188); +lean_dec(x_175); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_194 = lean_ctor_get(x_187, 1); +lean_inc(x_194); +if (lean_is_exclusive(x_187)) { + lean_ctor_release(x_187, 0); + lean_ctor_release(x_187, 1); + x_195 = x_187; +} else { + lean_dec_ref(x_187); + x_195 = lean_box(0); +} +x_196 = lean_box(0); +if (lean_is_scalar(x_195)) { + x_197 = lean_alloc_ctor(0, 2, 0); +} else { + x_197 = x_195; +} +lean_ctor_set(x_197, 0, x_196); +lean_ctor_set(x_197, 1, x_194); +return x_197; +} +} +else +{ +lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; +lean_dec(x_175); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_198 = lean_ctor_get(x_187, 0); +lean_inc(x_198); +x_199 = lean_ctor_get(x_187, 1); +lean_inc(x_199); +if (lean_is_exclusive(x_187)) { + lean_ctor_release(x_187, 0); + lean_ctor_release(x_187, 1); + x_200 = x_187; +} else { + lean_dec_ref(x_187); + x_200 = lean_box(0); +} +if (lean_is_scalar(x_200)) { + x_201 = lean_alloc_ctor(1, 2, 0); +} else { + x_201 = x_200; +} +lean_ctor_set(x_201, 0, x_198); +lean_ctor_set(x_201, 1, x_199); +return x_201; +} +} +else +{ +lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; +lean_dec(x_175); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_202 = lean_ctor_get(x_184, 0); +lean_inc(x_202); +x_203 = lean_ctor_get(x_184, 1); +lean_inc(x_203); +if (lean_is_exclusive(x_184)) { + lean_ctor_release(x_184, 0); + lean_ctor_release(x_184, 1); + x_204 = x_184; +} else { + lean_dec_ref(x_184); + x_204 = lean_box(0); +} +if (lean_is_scalar(x_204)) { + x_205 = lean_alloc_ctor(1, 2, 0); +} else { + x_205 = x_204; +} +lean_ctor_set(x_205, 0, x_202); +lean_ctor_set(x_205, 1, x_203); +return x_205; +} +} +else +{ +lean_object* x_206; lean_object* x_207; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_206 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_206, 0, x_175); +if (lean_is_scalar(x_177)) { + x_207 = lean_alloc_ctor(0, 2, 0); +} else { + x_207 = x_177; +} +lean_ctor_set(x_207, 0, x_206); +lean_ctor_set(x_207, 1, x_176); +return x_207; +} +} +else +{ +lean_object* x_208; lean_object* x_209; lean_object* x_210; lean_object* x_211; +lean_dec(x_173); +lean_dec(x_92); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_208 = lean_ctor_get(x_174, 0); +lean_inc(x_208); +x_209 = lean_ctor_get(x_174, 1); +lean_inc(x_209); +if (lean_is_exclusive(x_174)) { + lean_ctor_release(x_174, 0); + lean_ctor_release(x_174, 1); + x_210 = x_174; +} else { + lean_dec_ref(x_174); + x_210 = lean_box(0); +} +if (lean_is_scalar(x_210)) { + x_211 = lean_alloc_ctor(1, 2, 0); +} else { + x_211 = x_210; +} +lean_ctor_set(x_211, 0, x_208); +lean_ctor_set(x_211, 1, x_209); +return x_211; +} +} +} +} +else +{ +uint8_t x_212; +lean_dec(x_92); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_212 = !lean_is_exclusive(x_93); +if (x_212 == 0) +{ +return x_93; +} +else +{ +lean_object* x_213; lean_object* x_214; lean_object* x_215; +x_213 = lean_ctor_get(x_93, 0); +x_214 = lean_ctor_get(x_93, 1); +lean_inc(x_214); +lean_inc(x_213); +lean_dec(x_93); +x_215 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_215, 0, x_213); +lean_ctor_set(x_215, 1, x_214); +return x_215; +} +} +} +} +else +{ +uint8_t x_216; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_216 = !lean_is_exclusive(x_83); +if (x_216 == 0) +{ +return x_83; +} +else +{ +lean_object* x_217; lean_object* x_218; lean_object* x_219; +x_217 = lean_ctor_get(x_83, 0); +x_218 = lean_ctor_get(x_83, 1); +lean_inc(x_218); +lean_inc(x_217); +lean_dec(x_83); +x_219 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_219, 0, x_217); +lean_ctor_set(x_219, 1, x_218); +return x_219; +} +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_1); +x_12 = lean_infer_type(x_1, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_12) == 0) +{ +uint8_t x_13; +x_13 = !lean_is_exclusive(x_12); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_14 = lean_ctor_get(x_12, 0); +x_15 = lean_ctor_get(x_12, 1); +x_16 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(x_14); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_17 = lean_box(0); +lean_ctor_set(x_12, 0, x_17); +return x_12; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_free_object(x_12); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_19, 1); +lean_inc(x_22); +lean_dec(x_19); +x_23 = lean_st_ref_get(x_3, x_15); +x_24 = lean_ctor_get(x_23, 0); +lean_inc(x_24); +x_25 = lean_ctor_get(x_23, 1); +lean_inc(x_25); +lean_dec(x_23); +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +lean_dec(x_24); +x_27 = l_Lean_MVarId_getType(x_26, x_7, x_8, x_9, x_10, x_25); +if (lean_obj_tag(x_27) == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_27, 0); +lean_inc(x_28); +x_29 = lean_ctor_get(x_27, 1); +lean_inc(x_29); +lean_dec(x_27); +lean_inc(x_20); +x_30 = l_Lean_Meta_Grind_getRootENode(x_20, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_29); +if (lean_obj_tag(x_30) == 0) +{ +uint8_t x_31; +x_31 = lean_unbox(x_22); +lean_dec(x_22); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_32 = lean_ctor_get(x_30, 0); +lean_inc(x_32); +x_33 = lean_ctor_get(x_30, 1); +lean_inc(x_33); +lean_dec(x_30); +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_35 = lean_grind_mk_eq_proof(x_34, x_20, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_33); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_38 = l_Lean_Meta_mkEqTrans(x_36, x_1, x_7, x_8, x_9, x_10, x_37); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +lean_dec(x_38); +x_41 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(x_32, x_21, x_28, x_39, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_40); +return x_41; +} +else +{ +uint8_t x_42; +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_42 = !lean_is_exclusive(x_38); +if (x_42 == 0) +{ +return x_38; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_38, 0); +x_44 = lean_ctor_get(x_38, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_38); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; +} +} +} +else +{ +uint8_t x_46; +lean_dec(x_32); +lean_dec(x_28); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_46 = !lean_is_exclusive(x_35); +if (x_46 == 0) +{ +return x_35; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_35, 0); +x_48 = lean_ctor_get(x_35, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_35); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); +return x_49; +} +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_50 = lean_ctor_get(x_30, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_30, 1); +lean_inc(x_51); +lean_dec(x_30); +x_52 = lean_ctor_get(x_50, 0); +lean_inc(x_52); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_53 = lean_grind_mk_heq_proof(x_52, x_20, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_51); +if (lean_obj_tag(x_53) == 0) +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_53, 1); +lean_inc(x_55); +lean_dec(x_53); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_56 = l_Lean_Meta_mkHEqTrans(x_54, x_1, x_7, x_8, x_9, x_10, x_55); +if (lean_obj_tag(x_56) == 0) +{ +lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +x_58 = lean_ctor_get(x_56, 1); +lean_inc(x_58); +lean_dec(x_56); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_59 = l_Lean_Meta_mkEqOfHEq(x_57, x_7, x_8, x_9, x_10, x_58); +if (lean_obj_tag(x_59) == 0) +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); +lean_dec(x_59); +x_62 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(x_50, x_21, x_28, x_60, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_61); +return x_62; +} +else +{ +uint8_t x_63; +lean_dec(x_50); +lean_dec(x_28); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_63 = !lean_is_exclusive(x_59); +if (x_63 == 0) +{ +return x_59; +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_59, 0); +x_65 = lean_ctor_get(x_59, 1); +lean_inc(x_65); +lean_inc(x_64); +lean_dec(x_59); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_65); +return x_66; +} +} +} +else +{ +uint8_t x_67; +lean_dec(x_50); +lean_dec(x_28); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_67 = !lean_is_exclusive(x_56); +if (x_67 == 0) +{ +return x_56; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_56, 0); +x_69 = lean_ctor_get(x_56, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_56); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +return x_70; +} +} +} +else +{ +uint8_t x_71; +lean_dec(x_50); +lean_dec(x_28); +lean_dec(x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_71 = !lean_is_exclusive(x_53); +if (x_71 == 0) +{ +return x_53; +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; +x_72 = lean_ctor_get(x_53, 0); +x_73 = lean_ctor_get(x_53, 1); +lean_inc(x_73); +lean_inc(x_72); +lean_dec(x_53); +x_74 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_74, 0, x_72); +lean_ctor_set(x_74, 1, x_73); +return x_74; +} +} +} +} +else +{ +uint8_t x_75; +lean_dec(x_28); +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_75 = !lean_is_exclusive(x_30); +if (x_75 == 0) +{ +return x_30; +} +else +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_ctor_get(x_30, 0); +x_77 = lean_ctor_get(x_30, 1); +lean_inc(x_77); +lean_inc(x_76); +lean_dec(x_30); +x_78 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_78, 0, x_76); +lean_ctor_set(x_78, 1, x_77); +return x_78; +} +} +} +else +{ +uint8_t x_79; +lean_dec(x_22); +lean_dec(x_21); +lean_dec(x_20); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_79 = !lean_is_exclusive(x_27); +if (x_79 == 0) +{ +return x_27; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; +x_80 = lean_ctor_get(x_27, 0); +x_81 = lean_ctor_get(x_27, 1); +lean_inc(x_81); +lean_inc(x_80); +lean_dec(x_27); +x_82 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +return x_82; +} +} +} +} +else +{ +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_12, 0); +x_84 = lean_ctor_get(x_12, 1); +lean_inc(x_84); +lean_inc(x_83); +lean_dec(x_12); +x_85 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f(x_83); +if (lean_obj_tag(x_85) == 0) +{ +lean_object* x_86; lean_object* x_87; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_86 = lean_box(0); +x_87 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_87, 0, x_86); +lean_ctor_set(x_87, 1, x_84); +return x_87; +} +else +{ +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; +x_88 = lean_ctor_get(x_85, 0); +lean_inc(x_88); +lean_dec(x_85); +x_89 = lean_ctor_get(x_88, 1); +lean_inc(x_89); +x_90 = lean_ctor_get(x_88, 0); +lean_inc(x_90); +lean_dec(x_88); +x_91 = lean_ctor_get(x_89, 0); +lean_inc(x_91); +x_92 = lean_ctor_get(x_89, 1); +lean_inc(x_92); +lean_dec(x_89); +x_93 = lean_st_ref_get(x_3, x_84); +x_94 = lean_ctor_get(x_93, 0); +lean_inc(x_94); +x_95 = lean_ctor_get(x_93, 1); +lean_inc(x_95); +lean_dec(x_93); +x_96 = lean_ctor_get(x_94, 0); +lean_inc(x_96); +lean_dec(x_94); +x_97 = l_Lean_MVarId_getType(x_96, x_7, x_8, x_9, x_10, x_95); +if (lean_obj_tag(x_97) == 0) +{ +lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_98 = lean_ctor_get(x_97, 0); +lean_inc(x_98); +x_99 = lean_ctor_get(x_97, 1); +lean_inc(x_99); +lean_dec(x_97); +lean_inc(x_90); +x_100 = l_Lean_Meta_Grind_getRootENode(x_90, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_99); +if (lean_obj_tag(x_100) == 0) +{ +uint8_t x_101; +x_101 = lean_unbox(x_92); +lean_dec(x_92); +if (x_101 == 0) +{ +lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; +x_102 = lean_ctor_get(x_100, 0); +lean_inc(x_102); +x_103 = lean_ctor_get(x_100, 1); +lean_inc(x_103); +lean_dec(x_100); +x_104 = lean_ctor_get(x_102, 0); +lean_inc(x_104); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_105 = lean_grind_mk_eq_proof(x_104, x_90, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_103); +if (lean_obj_tag(x_105) == 0) +{ +lean_object* x_106; lean_object* x_107; lean_object* x_108; +x_106 = lean_ctor_get(x_105, 0); +lean_inc(x_106); +x_107 = lean_ctor_get(x_105, 1); +lean_inc(x_107); +lean_dec(x_105); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_108 = l_Lean_Meta_mkEqTrans(x_106, x_1, x_7, x_8, x_9, x_10, x_107); +if (lean_obj_tag(x_108) == 0) +{ +lean_object* x_109; lean_object* x_110; lean_object* x_111; +x_109 = lean_ctor_get(x_108, 0); +lean_inc(x_109); +x_110 = lean_ctor_get(x_108, 1); +lean_inc(x_110); +lean_dec(x_108); +x_111 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(x_102, x_91, x_98, x_109, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_110); +return x_111; +} +else +{ +lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; +lean_dec(x_102); +lean_dec(x_98); +lean_dec(x_91); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_112 = lean_ctor_get(x_108, 0); +lean_inc(x_112); +x_113 = lean_ctor_get(x_108, 1); +lean_inc(x_113); +if (lean_is_exclusive(x_108)) { + lean_ctor_release(x_108, 0); + lean_ctor_release(x_108, 1); + x_114 = x_108; +} else { + lean_dec_ref(x_108); + x_114 = lean_box(0); +} +if (lean_is_scalar(x_114)) { + x_115 = lean_alloc_ctor(1, 2, 0); +} else { + x_115 = x_114; +} +lean_ctor_set(x_115, 0, x_112); +lean_ctor_set(x_115, 1, x_113); +return x_115; +} +} +else +{ +lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; +lean_dec(x_102); +lean_dec(x_98); +lean_dec(x_91); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_116 = lean_ctor_get(x_105, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_105, 1); +lean_inc(x_117); +if (lean_is_exclusive(x_105)) { + lean_ctor_release(x_105, 0); + lean_ctor_release(x_105, 1); + x_118 = x_105; +} else { + lean_dec_ref(x_105); + x_118 = lean_box(0); +} +if (lean_is_scalar(x_118)) { + x_119 = lean_alloc_ctor(1, 2, 0); +} else { + x_119 = x_118; +} +lean_ctor_set(x_119, 0, x_116); +lean_ctor_set(x_119, 1, x_117); +return x_119; +} +} +else +{ +lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; +x_120 = lean_ctor_get(x_100, 0); +lean_inc(x_120); +x_121 = lean_ctor_get(x_100, 1); +lean_inc(x_121); +lean_dec(x_100); +x_122 = lean_ctor_get(x_120, 0); +lean_inc(x_122); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_3); +x_123 = lean_grind_mk_heq_proof(x_122, x_90, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_121); +if (lean_obj_tag(x_123) == 0) +{ +lean_object* x_124; lean_object* x_125; lean_object* x_126; +x_124 = lean_ctor_get(x_123, 0); +lean_inc(x_124); +x_125 = lean_ctor_get(x_123, 1); +lean_inc(x_125); +lean_dec(x_123); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_126 = l_Lean_Meta_mkHEqTrans(x_124, x_1, x_7, x_8, x_9, x_10, x_125); +if (lean_obj_tag(x_126) == 0) +{ +lean_object* x_127; lean_object* x_128; lean_object* x_129; +x_127 = lean_ctor_get(x_126, 0); +lean_inc(x_127); +x_128 = lean_ctor_get(x_126, 1); +lean_inc(x_128); +lean_dec(x_126); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_129 = l_Lean_Meta_mkEqOfHEq(x_127, x_7, x_8, x_9, x_10, x_128); +if (lean_obj_tag(x_129) == 0) +{ +lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_130 = lean_ctor_get(x_129, 0); +lean_inc(x_130); +x_131 = lean_ctor_get(x_129, 1); +lean_inc(x_131); +lean_dec(x_129); +x_132 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__3(x_120, x_91, x_98, x_130, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_131); +return x_132; +} +else +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; +lean_dec(x_120); +lean_dec(x_98); +lean_dec(x_91); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_133 = lean_ctor_get(x_129, 0); +lean_inc(x_133); +x_134 = lean_ctor_get(x_129, 1); +lean_inc(x_134); +if (lean_is_exclusive(x_129)) { + lean_ctor_release(x_129, 0); + lean_ctor_release(x_129, 1); + x_135 = x_129; +} else { + lean_dec_ref(x_129); + x_135 = lean_box(0); +} +if (lean_is_scalar(x_135)) { + x_136 = lean_alloc_ctor(1, 2, 0); +} else { + x_136 = x_135; +} +lean_ctor_set(x_136, 0, x_133); +lean_ctor_set(x_136, 1, x_134); +return x_136; +} +} +else +{ +lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; +lean_dec(x_120); +lean_dec(x_98); +lean_dec(x_91); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_137 = lean_ctor_get(x_126, 0); +lean_inc(x_137); +x_138 = lean_ctor_get(x_126, 1); +lean_inc(x_138); +if (lean_is_exclusive(x_126)) { + lean_ctor_release(x_126, 0); + lean_ctor_release(x_126, 1); + x_139 = x_126; +} else { + lean_dec_ref(x_126); + x_139 = lean_box(0); +} +if (lean_is_scalar(x_139)) { + x_140 = lean_alloc_ctor(1, 2, 0); +} else { + x_140 = x_139; +} +lean_ctor_set(x_140, 0, x_137); +lean_ctor_set(x_140, 1, x_138); +return x_140; +} +} +else +{ +lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_dec(x_120); +lean_dec(x_98); +lean_dec(x_91); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_141 = lean_ctor_get(x_123, 0); +lean_inc(x_141); +x_142 = lean_ctor_get(x_123, 1); +lean_inc(x_142); +if (lean_is_exclusive(x_123)) { + lean_ctor_release(x_123, 0); + lean_ctor_release(x_123, 1); + x_143 = x_123; +} else { + lean_dec_ref(x_123); + x_143 = lean_box(0); +} +if (lean_is_scalar(x_143)) { + x_144 = lean_alloc_ctor(1, 2, 0); +} else { + x_144 = x_143; +} +lean_ctor_set(x_144, 0, x_141); +lean_ctor_set(x_144, 1, x_142); +return x_144; +} +} +} +else +{ +lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; +lean_dec(x_98); +lean_dec(x_92); +lean_dec(x_91); +lean_dec(x_90); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_145 = lean_ctor_get(x_100, 0); +lean_inc(x_145); +x_146 = lean_ctor_get(x_100, 1); +lean_inc(x_146); +if (lean_is_exclusive(x_100)) { + lean_ctor_release(x_100, 0); + lean_ctor_release(x_100, 1); + x_147 = x_100; +} else { + lean_dec_ref(x_100); + x_147 = lean_box(0); +} +if (lean_is_scalar(x_147)) { + x_148 = lean_alloc_ctor(1, 2, 0); +} else { + x_148 = x_147; +} +lean_ctor_set(x_148, 0, x_145); +lean_ctor_set(x_148, 1, x_146); +return x_148; +} +} +else +{ +lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; +lean_dec(x_92); +lean_dec(x_91); +lean_dec(x_90); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_149 = lean_ctor_get(x_97, 0); +lean_inc(x_149); +x_150 = lean_ctor_get(x_97, 1); +lean_inc(x_150); +if (lean_is_exclusive(x_97)) { + lean_ctor_release(x_97, 0); + lean_ctor_release(x_97, 1); + x_151 = x_97; +} else { + lean_dec_ref(x_97); + x_151 = lean_box(0); +} +if (lean_is_scalar(x_151)) { + x_152 = lean_alloc_ctor(1, 2, 0); +} else { + x_152 = x_151; +} +lean_ctor_set(x_152, 0, x_149); +lean_ctor_set(x_152, 1, x_150); +return x_152; +} +} +} +} +else +{ +uint8_t x_153; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_153 = !lean_is_exclusive(x_12); +if (x_153 == 0) +{ +return x_12; +} +else +{ +lean_object* x_154; lean_object* x_155; lean_object* x_156; +x_154 = lean_ctor_get(x_12, 0); +x_155 = lean_ctor_get(x_12, 1); +lean_inc(x_155); +lean_inc(x_154); +lean_dec(x_12); +x_156 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_156, 0, x_154); +lean_ctor_set(x_156, 1, x_155); +return x_156; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("go\?: ", 5, 5); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_11 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4; +x_12 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_unbox(x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_dec(x_12); +x_16 = lean_box(0); +x_17 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(x_1, x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); +return x_17; +} +else +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_12); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_12, 1); +x_20 = lean_ctor_get(x_12, 0); +lean_dec(x_20); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_21 = lean_infer_type(x_1, x_6, x_7, x_8, x_9, x_19); +if (lean_obj_tag(x_21) == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_ctor_get(x_21, 1); +lean_inc(x_23); +lean_dec(x_21); +x_24 = l_Lean_MessageData_ofExpr(x_22); +x_25 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2; +lean_ctor_set_tag(x_12, 7); +lean_ctor_set(x_12, 1, x_24); +lean_ctor_set(x_12, 0, x_25); +x_26 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_27 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_27, 0, x_12); +lean_ctor_set(x_27, 1, x_26); +x_28 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_11, x_27, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_23); +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(x_1, x_29, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_30); +lean_dec(x_29); +return x_31; +} +else +{ +uint8_t x_32; +lean_free_object(x_12); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_32 = !lean_is_exclusive(x_21); +if (x_32 == 0) +{ +return x_21; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_21, 0); +x_34 = lean_ctor_get(x_21, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_21); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +else +{ +lean_object* x_36; lean_object* x_37; +x_36 = lean_ctor_get(x_12, 1); +lean_inc(x_36); +lean_dec(x_12); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_37 = lean_infer_type(x_1, x_6, x_7, x_8, x_9, x_36); +if (lean_obj_tag(x_37) == 0) +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Lean_MessageData_ofExpr(x_38); +x_41 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2; +x_42 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_40); +x_43 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_44 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +x_45 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_11, x_44, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_39); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_45, 1); +lean_inc(x_47); +lean_dec(x_45); +x_48 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(x_1, x_46, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_47); +lean_dec(x_46); +return x_48; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_49 = lean_ctor_get(x_37, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_37, 1); +lean_inc(x_50); +if (lean_is_exclusive(x_37)) { + lean_ctor_release(x_37, 0); + lean_ctor_release(x_37, 1); + x_51 = x_37; +} else { + lean_dec_ref(x_37); + x_51 = lean_box(0); +} +if (lean_is_scalar(x_51)) { + x_52 = lean_alloc_ctor(1, 2, 0); +} else { + x_52 = x_51; +} +lean_ctor_set(x_52, 0, x_49); +lean_ctor_set(x_52, 1, x_50); +return x_52; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1___boxed(lean_object** _args) { +lean_object* x_1 = _args[0]; +lean_object* x_2 = _args[1]; +lean_object* x_3 = _args[2]; +lean_object* x_4 = _args[3]; +lean_object* x_5 = _args[4]; +lean_object* x_6 = _args[5]; +lean_object* x_7 = _args[6]; +lean_object* x_8 = _args[7]; +lean_object* x_9 = _args[8]; +lean_object* x_10 = _args[9]; +lean_object* x_11 = _args[10]; +lean_object* x_12 = _args[11]; +lean_object* x_13 = _args[12]; +lean_object* x_14 = _args[13]; +lean_object* x_15 = _args[14]; +lean_object* x_16 = _args[15]; +lean_object* x_17 = _args[16]; +_start: +{ +size_t x_18; size_t x_19; lean_object* x_20; +x_18 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_19 = lean_unbox_usize(x_7); +lean_dec(x_7); +x_20 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__1(x_1, x_2, x_3, x_4, x_5, x_18, x_19, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16, x_17); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +return x_20; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +uint8_t x_13; lean_object* x_14; +x_13 = lean_unbox(x_3); +lean_dec(x_3); +x_14 = l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(x_1, x_2, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_14; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +lean_dec(x_2); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); +return x_12; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +x_14 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f(x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +uint8_t x_16; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +x_16 = !lean_is_exclusive(x_14); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_14, 0); +lean_dec(x_17); +x_18 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_18, 0, x_2); +lean_ctor_set(x_14, 0, x_18); +return x_14; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_14, 1); +lean_inc(x_19); +lean_dec(x_14); +x_20 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_20, 0, x_2); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +return x_21; +} +} +else +{ +lean_object* x_22; uint8_t x_23; +lean_dec(x_2); +x_22 = lean_ctor_get(x_14, 1); +lean_inc(x_22); +lean_dec(x_14); +x_23 = !lean_is_exclusive(x_15); +if (x_23 == 0) +{ +lean_object* x_24; uint8_t x_25; uint8_t x_26; uint8_t x_27; lean_object* x_28; +x_24 = lean_ctor_get(x_15, 0); +x_25 = 0; +x_26 = 1; +x_27 = 1; +x_28 = l_Lean_Meta_mkLambdaFVars(x_3, x_24, x_25, x_26, x_25, x_27, x_9, x_10, x_11, x_12, x_22); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +if (lean_obj_tag(x_28) == 0) +{ +uint8_t x_29; +x_29 = !lean_is_exclusive(x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; +x_30 = lean_ctor_get(x_28, 0); +lean_ctor_set(x_15, 0, x_30); +x_31 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_31, 0, x_15); +x_32 = lean_box(0); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +x_34 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_34, 0, x_33); +lean_ctor_set(x_28, 0, x_34); +return x_28; +} +else +{ +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_35 = lean_ctor_get(x_28, 0); +x_36 = lean_ctor_get(x_28, 1); +lean_inc(x_36); +lean_inc(x_35); +lean_dec(x_28); +lean_ctor_set(x_15, 0, x_35); +x_37 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_37, 0, x_15); +x_38 = lean_box(0); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_37); +lean_ctor_set(x_39, 1, x_38); +x_40 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_40, 0, x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_36); +return x_41; +} +} +else +{ +uint8_t x_42; +lean_free_object(x_15); +x_42 = !lean_is_exclusive(x_28); +if (x_42 == 0) +{ +return x_28; +} +else +{ +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_28, 0); +x_44 = lean_ctor_get(x_28, 1); +lean_inc(x_44); +lean_inc(x_43); +lean_dec(x_28); +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; +} +} +} +else +{ +lean_object* x_46; uint8_t x_47; uint8_t x_48; uint8_t x_49; lean_object* x_50; +x_46 = lean_ctor_get(x_15, 0); +lean_inc(x_46); +lean_dec(x_15); +x_47 = 0; +x_48 = 1; +x_49 = 1; +x_50 = l_Lean_Meta_mkLambdaFVars(x_3, x_46, x_47, x_48, x_47, x_49, x_9, x_10, x_11, x_12, x_22); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +if (lean_obj_tag(x_50) == 0) +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_51 = lean_ctor_get(x_50, 0); +lean_inc(x_51); +x_52 = lean_ctor_get(x_50, 1); +lean_inc(x_52); +if (lean_is_exclusive(x_50)) { + lean_ctor_release(x_50, 0); + lean_ctor_release(x_50, 1); + x_53 = x_50; +} else { + lean_dec_ref(x_50); + x_53 = lean_box(0); +} +x_54 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_54, 0, x_51); +x_55 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_55, 0, x_54); +x_56 = lean_box(0); +x_57 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +x_58 = lean_alloc_ctor(0, 1, 0); +lean_ctor_set(x_58, 0, x_57); +if (lean_is_scalar(x_53)) { + x_59 = lean_alloc_ctor(0, 2, 0); +} else { + x_59 = x_53; +} +lean_ctor_set(x_59, 0, x_58); +lean_ctor_set(x_59, 1, x_52); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_60 = lean_ctor_get(x_50, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_50, 1); +lean_inc(x_61); +if (lean_is_exclusive(x_50)) { + lean_ctor_release(x_50, 0); + lean_ctor_release(x_50, 1); + x_62 = x_50; +} else { + lean_dec_ref(x_50); + x_62 = lean_box(0); +} +if (lean_is_scalar(x_62)) { + x_63 = lean_alloc_ctor(1, 2, 0); +} else { + x_63 = x_62; +} +lean_ctor_set(x_63, 0, x_60); +lean_ctor_set(x_63, 1, x_61); +return x_63; +} +} +} +} +else +{ +uint8_t x_64; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_2); +x_64 = !lean_is_exclusive(x_14); +if (x_64 == 0) +{ +return x_14; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_14, 0); +x_66 = lean_ctor_get(x_14, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_14); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; +} +} +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked(">>> ", 4, 4); +return x_1; +} +} +static lean_object* _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, size_t x_5, size_t x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +uint8_t x_17; +x_17 = lean_usize_dec_lt(x_6, x_5); +if (x_17 == 0) +{ +lean_object* x_18; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_7); +lean_ctor_set(x_18, 1, x_16); +return x_18; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_29; +lean_dec(x_7); +x_19 = lean_array_uget(x_4, x_6); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_19); +x_29 = lean_infer_type(x_19, x_12, x_13, x_14, x_15, x_16); +if (lean_obj_tag(x_29) == 0) +{ +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_30); +x_32 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp(x_30, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_31); +if (lean_obj_tag(x_32) == 0) +{ +lean_object* x_33; uint8_t x_34; +x_33 = lean_ctor_get(x_32, 0); +lean_inc(x_33); +x_34 = lean_unbox(x_33); +lean_dec(x_33); +if (x_34 == 0) +{ +lean_object* x_35; lean_object* x_36; +lean_dec(x_30); +lean_dec(x_19); +x_35 = lean_ctor_get(x_32, 1); +lean_inc(x_35); +lean_dec(x_32); +lean_inc(x_3); +x_36 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_36, 0, x_3); +x_20 = x_36; +x_21 = x_35; +goto block_28; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; uint8_t x_41; +x_37 = lean_ctor_get(x_32, 1); +lean_inc(x_37); +lean_dec(x_32); +x_38 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4; +x_39 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_38, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_37); +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_unbox(x_40); +lean_dec(x_40); +if (x_41 == 0) +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; +lean_dec(x_30); +x_42 = lean_ctor_get(x_39, 1); +lean_inc(x_42); +lean_dec(x_39); +x_43 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_3); +x_44 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(x_19, x_3, x_1, x_43, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_42); +if (lean_obj_tag(x_44) == 0) +{ +lean_object* x_45; lean_object* x_46; +x_45 = lean_ctor_get(x_44, 0); +lean_inc(x_45); +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_dec(x_44); +x_20 = x_45; +x_21 = x_46; +goto block_28; +} +else +{ +uint8_t x_47; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_47 = !lean_is_exclusive(x_44); +if (x_47 == 0) +{ +return x_44; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_44, 0); +x_49 = lean_ctor_get(x_44, 1); +lean_inc(x_49); +lean_inc(x_48); +lean_dec(x_44); +x_50 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_50, 0, x_48); +lean_ctor_set(x_50, 1, x_49); +return x_50; +} +} +} +else +{ +uint8_t x_51; +x_51 = !lean_is_exclusive(x_39); +if (x_51 == 0) +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; +x_52 = lean_ctor_get(x_39, 1); +x_53 = lean_ctor_get(x_39, 0); +lean_dec(x_53); +x_54 = l_Lean_MessageData_ofExpr(x_30); +x_55 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2; +lean_ctor_set_tag(x_39, 7); +lean_ctor_set(x_39, 1, x_54); +lean_ctor_set(x_39, 0, x_55); +x_56 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_57 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_57, 0, x_39); +lean_ctor_set(x_57, 1, x_56); +x_58 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_38, x_57, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_52); +x_59 = lean_ctor_get(x_58, 0); +lean_inc(x_59); +x_60 = lean_ctor_get(x_58, 1); +lean_inc(x_60); +lean_dec(x_58); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_3); +x_61 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(x_19, x_3, x_1, x_59, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_60); +lean_dec(x_59); +if (lean_obj_tag(x_61) == 0) +{ +lean_object* x_62; lean_object* x_63; +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +lean_dec(x_61); +x_20 = x_62; +x_21 = x_63; +goto block_28; +} +else +{ +uint8_t x_64; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_64 = !lean_is_exclusive(x_61); +if (x_64 == 0) +{ +return x_61; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; +x_65 = lean_ctor_get(x_61, 0); +x_66 = lean_ctor_get(x_61, 1); +lean_inc(x_66); +lean_inc(x_65); +lean_dec(x_61); +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_65); +lean_ctor_set(x_67, 1, x_66); +return x_67; +} +} +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_68 = lean_ctor_get(x_39, 1); +lean_inc(x_68); +lean_dec(x_39); +x_69 = l_Lean_MessageData_ofExpr(x_30); +x_70 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2; +x_71 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set(x_71, 1, x_69); +x_72 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_73 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_73, 0, x_71); +lean_ctor_set(x_73, 1, x_72); +x_74 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_38, x_73, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_68); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_ctor_get(x_74, 1); +lean_inc(x_76); +lean_dec(x_74); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_3); +x_77 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(x_19, x_3, x_1, x_75, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_76); +lean_dec(x_75); +if (lean_obj_tag(x_77) == 0) +{ +lean_object* x_78; lean_object* x_79; +x_78 = lean_ctor_get(x_77, 0); +lean_inc(x_78); +x_79 = lean_ctor_get(x_77, 1); +lean_inc(x_79); +lean_dec(x_77); +x_20 = x_78; +x_21 = x_79; +goto block_28; +} +else +{ +lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_80 = lean_ctor_get(x_77, 0); +lean_inc(x_80); +x_81 = lean_ctor_get(x_77, 1); +lean_inc(x_81); +if (lean_is_exclusive(x_77)) { + lean_ctor_release(x_77, 0); + lean_ctor_release(x_77, 1); + x_82 = x_77; +} else { + lean_dec_ref(x_77); + x_82 = lean_box(0); +} +if (lean_is_scalar(x_82)) { + x_83 = lean_alloc_ctor(1, 2, 0); +} else { + x_83 = x_82; +} +lean_ctor_set(x_83, 0, x_80); +lean_ctor_set(x_83, 1, x_81); +return x_83; +} +} +} +} +} +else +{ +uint8_t x_84; +lean_dec(x_30); +lean_dec(x_19); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_84 = !lean_is_exclusive(x_32); +if (x_84 == 0) +{ +return x_32; +} +else +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_32, 0); +x_86 = lean_ctor_get(x_32, 1); +lean_inc(x_86); +lean_inc(x_85); +lean_dec(x_32); +x_87 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +return x_87; +} +} +} +else +{ +uint8_t x_88; +lean_dec(x_19); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_88 = !lean_is_exclusive(x_29); +if (x_88 == 0) +{ +return x_29; +} +else +{ +lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_89 = lean_ctor_get(x_29, 0); +x_90 = lean_ctor_get(x_29, 1); +lean_inc(x_90); +lean_inc(x_89); +lean_dec(x_29); +x_91 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_91, 0, x_89); +lean_ctor_set(x_91, 1, x_90); +return x_91; +} +} +block_28: +{ +if (lean_obj_tag(x_20) == 0) +{ +lean_object* x_22; lean_object* x_23; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_3); +x_22 = lean_ctor_get(x_20, 0); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_22); +lean_ctor_set(x_23, 1, x_21); +return x_23; +} +else +{ +lean_object* x_24; size_t x_25; size_t x_26; +x_24 = lean_ctor_get(x_20, 0); +lean_inc(x_24); +lean_dec(x_20); +x_25 = 1; +x_26 = lean_usize_add(x_6, x_25); +x_6 = x_26; +x_7 = x_24; +x_16 = x_21; +goto _start; +} +} +} +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; lean_object* x_13; size_t x_14; size_t x_15; lean_object* x_16; lean_object* x_17; +x_12 = lean_box(0); +x_13 = lean_box(0); +x_14 = lean_array_size(x_1); +x_15 = 0; +x_16 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2; +x_17 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1(x_1, x_12, x_16, x_1, x_14, x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_17) == 0) +{ +lean_object* x_18; lean_object* x_19; +x_18 = lean_ctor_get(x_17, 0); +lean_inc(x_18); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +lean_dec(x_18); +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_20; +x_20 = !lean_is_exclusive(x_17); +if (x_20 == 0) +{ +lean_object* x_21; +x_21 = lean_ctor_get(x_17, 0); +lean_dec(x_21); +lean_ctor_set(x_17, 0, x_13); +return x_17; +} +else +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_17, 1); +lean_inc(x_22); +lean_dec(x_17); +x_23 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_23, 0, x_13); +lean_ctor_set(x_23, 1, x_22); +return x_23; +} +} +else +{ +uint8_t x_24; +x_24 = !lean_is_exclusive(x_17); +if (x_24 == 0) +{ +lean_object* x_25; lean_object* x_26; +x_25 = lean_ctor_get(x_17, 0); +lean_dec(x_25); +x_26 = lean_ctor_get(x_19, 0); +lean_inc(x_26); +lean_dec(x_19); +lean_ctor_set(x_17, 0, x_26); +return x_17; +} +else +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_27 = lean_ctor_get(x_17, 1); +lean_inc(x_27); +lean_dec(x_17); +x_28 = lean_ctor_get(x_19, 0); +lean_inc(x_28); +lean_dec(x_19); +x_29 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_27); +return x_29; +} +} +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_17); +if (x_30 == 0) +{ +return x_17; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_17, 0); +x_32 = lean_ctor_get(x_17, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_17); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1___boxed), 11, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; uint8_t x_12; lean_object* x_13; +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1; +x_12 = 0; +x_13 = l_Lean_Meta_forallTelescopeReducing___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___spec__2___rarg(x_1, x_11, x_12, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +return x_13; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; +x_11 = lean_box(0); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_11); +lean_ctor_set(x_12, 1, x_10); +return x_12; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2), 10, 0); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3___boxed), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_11 = l_Lean_Meta_instantiateMVarsIfMVarApp(x_1, x_6, x_7, x_8, x_9, x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_11, 1); +lean_inc(x_13); +lean_dec(x_11); +x_14 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1; +x_15 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2; +x_16 = l_Lean_Expr_cleanupAnnotations(x_12); +x_17 = l_Lean_Expr_isApp(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; +lean_dec(x_16); +x_18 = lean_box(0); +x_19 = lean_apply_10(x_15, x_18, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +return x_19; +} +else +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; +x_20 = l_Lean_Expr_appArg(x_16, lean_box(0)); +x_21 = l_Lean_Expr_appFnCleanup(x_16, lean_box(0)); +x_22 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_23 = l_Lean_Expr_isConstOf(x_21, x_22); +lean_dec(x_21); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; +lean_dec(x_20); +x_24 = lean_box(0); +x_25 = lean_apply_10(x_15, x_24, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +return x_25; +} +else +{ +lean_object* x_26; +x_26 = lean_apply_10(x_14, x_20, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +return x_26; +} +} +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_4); +lean_dec(x_3); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13, lean_object* x_14, lean_object* x_15, lean_object* x_16) { +_start: +{ +size_t x_17; size_t x_18; lean_object* x_19; +x_17 = lean_unbox_usize(x_5); +lean_dec(x_5); +x_18 = lean_unbox_usize(x_6); +lean_dec(x_6); +x_19 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1(x_1, x_2, x_3, x_4, x_17, x_18, x_7, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_16); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +return x_19; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); +lean_dec(x_1); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; +lean_inc(x_1); +x_13 = l_Lean_Meta_mkEqTrueCore(x_1, x_2); +x_14 = l_Lean_Meta_Grind_pushEqTrue(x_1, x_13, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_14; +} +} +static lean_object* _init_l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("failed to construct proof for", 29, 29); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +lean_dec(x_4); +lean_dec(x_2); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = l_Lean_indentExpr(x_1); +x_17 = l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2; +x_18 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_16); +x_19 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_20 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_20, 0, x_18); +lean_ctor_set(x_20, 1, x_19); +x_21 = l_Lean_Meta_Grind_reportIssue(x_20, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_15); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_22 = !lean_is_exclusive(x_21); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_21, 0); +lean_dec(x_23); +x_24 = lean_box(0); +lean_ctor_set(x_21, 0, x_24); +return x_21; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +x_25 = lean_ctor_get(x_21, 1); +lean_inc(x_25); +lean_dec(x_21); +x_26 = lean_box(0); +x_27 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_25); +return x_27; +} +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; +x_28 = lean_ctor_get(x_13, 1); +lean_inc(x_28); +lean_dec(x_13); +x_29 = lean_ctor_get(x_14, 0); +lean_inc(x_29); +lean_dec(x_14); +lean_inc(x_2); +x_30 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_28); +x_31 = lean_ctor_get(x_30, 0); +lean_inc(x_31); +x_32 = lean_unbox(x_31); +lean_dec(x_31); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_dec(x_2); +x_33 = lean_ctor_get(x_30, 1); +lean_inc(x_33); +lean_dec(x_30); +x_34 = lean_box(0); +x_35 = l_Lean_Meta_Grind_propagateMatchCond___lambda__1(x_1, x_29, x_34, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_33); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +return x_35; +} +else +{ +uint8_t x_36; +x_36 = !lean_is_exclusive(x_30); +if (x_36 == 0) +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; +x_37 = lean_ctor_get(x_30, 1); +x_38 = lean_ctor_get(x_30, 0); +lean_dec(x_38); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_29); +x_39 = lean_infer_type(x_29, x_8, x_9, x_10, x_11, x_37); +if (lean_obj_tag(x_39) == 0) +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_40 = lean_ctor_get(x_39, 0); +lean_inc(x_40); +x_41 = lean_ctor_get(x_39, 1); +lean_inc(x_41); +lean_dec(x_39); +x_42 = l_Lean_MessageData_ofExpr(x_40); +x_43 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +lean_ctor_set_tag(x_30, 7); +lean_ctor_set(x_30, 1, x_42); +lean_ctor_set(x_30, 0, x_43); +x_44 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_44, 0, x_30); +lean_ctor_set(x_44, 1, x_43); +x_45 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_2, x_44, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_41); +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_45, 1); +lean_inc(x_47); +lean_dec(x_45); +x_48 = l_Lean_Meta_Grind_propagateMatchCond___lambda__1(x_1, x_29, x_46, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_47); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_46); +return x_48; +} +else +{ +uint8_t x_49; +lean_free_object(x_30); +lean_dec(x_29); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_49 = !lean_is_exclusive(x_39); +if (x_49 == 0) +{ +return x_39; +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_50 = lean_ctor_get(x_39, 0); +x_51 = lean_ctor_get(x_39, 1); +lean_inc(x_51); +lean_inc(x_50); +lean_dec(x_39); +x_52 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_52, 0, x_50); +lean_ctor_set(x_52, 1, x_51); +return x_52; +} +} +} +else +{ +lean_object* x_53; lean_object* x_54; +x_53 = lean_ctor_get(x_30, 1); +lean_inc(x_53); +lean_dec(x_30); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_29); +x_54 = lean_infer_type(x_29, x_8, x_9, x_10, x_11, x_53); +if (lean_obj_tag(x_54) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_55 = lean_ctor_get(x_54, 0); +lean_inc(x_55); +x_56 = lean_ctor_get(x_54, 1); +lean_inc(x_56); +lean_dec(x_54); +x_57 = l_Lean_MessageData_ofExpr(x_55); +x_58 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_59 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_59, 0, x_58); +lean_ctor_set(x_59, 1, x_57); +x_60 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_60, 0, x_59); +lean_ctor_set(x_60, 1, x_58); +x_61 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_2, x_60, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_56); +x_62 = lean_ctor_get(x_61, 0); +lean_inc(x_62); +x_63 = lean_ctor_get(x_61, 1); +lean_inc(x_63); +lean_dec(x_61); +x_64 = l_Lean_Meta_Grind_propagateMatchCond___lambda__1(x_1, x_29, x_62, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_63); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_62); +return x_64; +} +else +{ +lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +lean_dec(x_29); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_65 = lean_ctor_get(x_54, 0); +lean_inc(x_65); +x_66 = lean_ctor_get(x_54, 1); +lean_inc(x_66); +if (lean_is_exclusive(x_54)) { + lean_ctor_release(x_54, 0); + lean_ctor_release(x_54, 1); + x_67 = x_54; +} else { + lean_dec_ref(x_54); + x_67 = lean_box(0); +} +if (lean_is_scalar(x_67)) { + x_68 = lean_alloc_ctor(1, 2, 0); +} else { + x_68 = x_67; +} +lean_ctor_set(x_68, 0, x_65); +lean_ctor_set(x_68, 1, x_66); +return x_68; +} +} +} +} +} +else +{ +uint8_t x_69; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_69 = !lean_is_exclusive(x_13); +if (x_69 == 0) +{ +return x_13; +} +else +{ +lean_object* x_70; lean_object* x_71; lean_object* x_72; +x_70 = lean_ctor_get(x_13, 0); +x_71 = lean_ctor_get(x_13, 1); +lean_inc(x_71); +lean_inc(x_70); +lean_dec(x_13); +x_72 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_72, 0, x_70); +lean_ctor_set(x_72, 1, x_71); +return x_72; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); +lean_inc(x_1); +x_13 = l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied(x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; uint8_t x_15; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_unbox(x_14); +lean_dec(x_14); +if (x_15 == 0) +{ +uint8_t x_16; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_16 = !lean_is_exclusive(x_13); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; +x_17 = lean_ctor_get(x_13, 0); +lean_dec(x_17); +x_18 = lean_box(0); +lean_ctor_set(x_13, 0, x_18); +return x_13; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_13, 1); +lean_inc(x_19); +lean_dec(x_13); +x_20 = lean_box(0); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_20); +lean_ctor_set(x_21, 1, x_19); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_22 = lean_ctor_get(x_13, 1); +lean_inc(x_22); +lean_dec(x_13); +x_23 = lean_box(0); +x_24 = l_Lean_Meta_Grind_propagateMatchCond___lambda__2(x_1, x_2, x_23, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_22); +return x_24; +} +} +else +{ +uint8_t x_25; +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_2); +lean_dec(x_1); +x_25 = !lean_is_exclusive(x_13); +if (x_25 == 0) +{ +return x_13; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_26 = lean_ctor_get(x_13, 0); +x_27 = lean_ctor_get(x_13, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_13); +x_28 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_28, 0, x_26); +lean_ctor_set(x_28, 1, x_27); +return x_28; +} +} +} +} +static lean_object* _init_l_Lean_Meta_Grind_propagateMatchCond___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("visiting", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_propagateMatchCond___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_Grind_propagateMatchCond___closed__1; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_11 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4; +x_12 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_unbox(x_13); +lean_dec(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_12, 1); +lean_inc(x_15); +lean_dec(x_12); +x_16 = lean_box(0); +x_17 = l_Lean_Meta_Grind_propagateMatchCond___lambda__3(x_1, x_11, x_16, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_15); +return x_17; +} +else +{ +uint8_t x_18; +x_18 = !lean_is_exclusive(x_12); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_19 = lean_ctor_get(x_12, 1); +x_20 = lean_ctor_get(x_12, 0); +lean_dec(x_20); +lean_inc(x_1); +x_21 = l_Lean_indentExpr(x_1); +x_22 = l_Lean_Meta_Grind_propagateMatchCond___closed__2; +lean_ctor_set_tag(x_12, 7); +lean_ctor_set(x_12, 1, x_21); +lean_ctor_set(x_12, 0, x_22); +x_23 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_24 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_24, 0, x_12); +lean_ctor_set(x_24, 1, x_23); +x_25 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_11, x_24, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_19); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_ctor_get(x_25, 1); +lean_inc(x_27); +lean_dec(x_25); +x_28 = l_Lean_Meta_Grind_propagateMatchCond___lambda__3(x_1, x_11, x_26, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_27); +lean_dec(x_26); +return x_28; +} +else +{ +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_29 = lean_ctor_get(x_12, 1); +lean_inc(x_29); +lean_dec(x_12); +lean_inc(x_1); +x_30 = l_Lean_indentExpr(x_1); +x_31 = l_Lean_Meta_Grind_propagateMatchCond___closed__2; +x_32 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_32, 0, x_31); +lean_ctor_set(x_32, 1, x_30); +x_33 = l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10; +x_34 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_34, 0, x_32); +lean_ctor_set(x_34, 1, x_33); +x_35 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(x_11, x_34, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_29); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_ctor_get(x_35, 1); +lean_inc(x_37); +lean_dec(x_35); +x_38 = l_Lean_Meta_Grind_propagateMatchCond___lambda__3(x_1, x_11, x_36, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_37); +lean_dec(x_36); +return x_38; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Meta_Grind_propagateMatchCond___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Meta_Grind_propagateMatchCond___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateMatchCond___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Meta_Grind_propagateMatchCond___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_3); +return x_13; +} +} +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_propagateMatchCond), 10, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938_(lean_object* x_1) { +_start: +{ +lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_2 = l_Lean_Meta_Grind_markAsMatchCond___closed__4; +x_3 = 1; +x_4 = l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1; +x_5 = l___private_Lean_Meta_Tactic_Grind_PropagatorAttr_0__Lean_Meta_Grind_registerBuiltinPropagatorCore(x_2, x_3, x_4, x_1); +return x_5; +} +} +lean_object* initialize_Init_Grind(uint8_t builtin, lean_object*); +lean_object* initialize_Init_Simproc(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Simp_Simproc(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_PropagatorAttr(uint8_t builtin, lean_object*); +static bool _G_initialized = false; +LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object* w) { +lean_object * res; +if (_G_initialized) return lean_io_result_mk_ok(lean_box(0)); +_G_initialized = true; +res = initialize_Init_Grind(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Init_Simproc(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Simp_Simproc(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_PropagatorAttr(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +l_Lean_Meta_Grind_markAsMatchCond___closed__1 = _init_l_Lean_Meta_Grind_markAsMatchCond___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_markAsMatchCond___closed__1); +l_Lean_Meta_Grind_markAsMatchCond___closed__2 = _init_l_Lean_Meta_Grind_markAsMatchCond___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_markAsMatchCond___closed__2); +l_Lean_Meta_Grind_markAsMatchCond___closed__3 = _init_l_Lean_Meta_Grind_markAsMatchCond___closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_markAsMatchCond___closed__3); +l_Lean_Meta_Grind_markAsMatchCond___closed__4 = _init_l_Lean_Meta_Grind_markAsMatchCond___closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_markAsMatchCond___closed__4); +l_Lean_Meta_Grind_markAsMatchCond___closed__5 = _init_l_Lean_Meta_Grind_markAsMatchCond___closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_markAsMatchCond___closed__5); +l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_reduceMatchCond___lambda__2___closed__1); +l_Lean_Meta_Grind_reduceMatchCond___closed__1 = _init_l_Lean_Meta_Grind_reduceMatchCond___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_reduceMatchCond___closed__1); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__1); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__2); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__3); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__4); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__5); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__6); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__7); +l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8 = _init_l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119____closed__8); +if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_reduceMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_119_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__2); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__3); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isEqHEq_x3f___closed__4); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_collectMatchCondLhss___closed__1); +l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1 = _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__1); +l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2 = _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract_go___closed__2); +l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1 = _init_l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_collectMatchCondLhssAndAbstract___closed__1); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__1); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__2); +l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3 = _init_l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3(); +lean_mark_persistent(l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___spec__1___closed__3); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__2); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isMatchCondFalseHyp_isFalse___lambda__4___closed__3); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__1); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__2); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__3); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__4); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__5); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__6); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__7); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__8); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__9); +l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10 = _init_l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___spec__1___closed__10); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_isStatisfied___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f_go_x3f___closed__2); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__1); +l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2 = _init_l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2(); +lean_mark_persistent(l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___spec__1___closed__2); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___lambda__2___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__1); +l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_MatchCond_0__Lean_Meta_Grind_mkMatchCondProof_x3f___closed__2); +l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1 = _init_l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__1); +l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2 = _init_l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_propagateMatchCond___lambda__2___closed__2); +l_Lean_Meta_Grind_propagateMatchCond___closed__1 = _init_l_Lean_Meta_Grind_propagateMatchCond___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_propagateMatchCond___closed__1); +l_Lean_Meta_Grind_propagateMatchCond___closed__2 = _init_l_Lean_Meta_Grind_propagateMatchCond___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_propagateMatchCond___closed__2); +l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938____closed__1); +if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_propagateMatchCond_declare__1____x40_Lean_Meta_Tactic_Grind_MatchCond___hyg_5938_(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}return lean_io_result_mk_ok(lean_box(0)); +} +#ifdef __cplusplus +} +#endif diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/PP.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/PP.c index ad6fb276c6..61913dcc42 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/PP.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/PP.c @@ -16,11 +16,11 @@ extern "C" { lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___closed__1; lean_object* l_Lean_Meta_ppExpr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_goalsToMessageData(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_ppENodeRef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkNatLit(lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__3___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -73,7 +73,6 @@ lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppActiveTheorems___closed__2; LEAN_EXPORT lean_object* l_List_filterTR_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__1(lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_Goal_ppState___spec__1___closed__3; -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6; static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__3___closed__5; static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__1; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_Goal_ppState___spec__1___closed__1; @@ -87,7 +86,6 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppT static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__2___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__3___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4; static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__3___closed__4; lean_object* l_Lean_Meta_Grind_Goal_getENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_filterTR_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__2(lean_object*, lean_object*); @@ -101,11 +99,11 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppActiveTheorems___closed__6; static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__3___closed__2; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppActiveTheorems___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEMatchTheorem___closed__7; static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Goal_ppState___spec__3___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___spec__1___closed__1; static lean_object* l_Lean_Meta_Grind_Goal_ppENodeRef___closed__9; -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__2___closed__1; @@ -142,7 +140,6 @@ static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Goal_ppState___sp static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_pushMsg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_goalToMessageData___lambda__1___closed__2; -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_goalsToMessageData___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppExprArray___spec__1___closed__2; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___spec__1___closed__3; @@ -161,7 +158,6 @@ LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_G LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__3___closed__8; static lean_object* l_Lean_Meta_Grind_goalToMessageData_go___closed__1; -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_List_forIn_x27_loop___at_Lean_Meta_Grind_Goal_ppState___spec__3___closed__9; static lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__3___closed__10; @@ -192,7 +188,6 @@ static lean_object* l_Lean_Meta_Grind_goalToMessageData___lambda__1___closed__4; lean_object* l_Lean_Meta_Grind_Goal_getEqcs(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__5___closed__2; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__1(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__3___closed__8; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEMatchTheorem(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -231,7 +226,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ppENodeRef___boxed(lean_object*, lean size_t lean_usize_add(size_t, size_t); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1; static lean_object* l_Lean_Meta_Grind_Goal_ppState___closed__2; uint8_t l_Lean_PersistentArray_isEmpty___rarg(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__4___closed__1; @@ -253,7 +247,6 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppE uint8_t l_Lean_Expr_isConst(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDecl___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_goalToMessageData___lambda__1___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___spec__1___closed__3; @@ -266,7 +259,6 @@ lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); lean_object* l_Lean_Meta_isLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppEqcs___lambda__1___closed__1; lean_object* l_Lean_Meta_isProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2; static lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_Goal_ppENodeDeclValue___spec__1___closed__2; uint8_t l_Array_isEmpty___rarg(lean_object*); static lean_object* _init_l_Lean_Meta_Grind_Goal_ppENodeRef___closed__1() { @@ -5297,7 +5289,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grin _start: { lean_object* x_8; lean_object* x_9; size_t x_10; size_t x_11; lean_object* x_12; -x_8 = lean_ctor_get(x_1, 10); +x_8 = lean_ctor_get(x_1, 11); x_9 = l_Lean_PersistentArray_toArray___rarg(x_8); x_10 = lean_array_size(x_9); x_11 = 0; @@ -5319,7 +5311,7 @@ lean_inc(x_15); x_16 = lean_ctor_get(x_13, 1); lean_inc(x_16); lean_dec(x_13); -x_17 = lean_ctor_get(x_1, 11); +x_17 = lean_ctor_get(x_1, 12); x_18 = l_Lean_PersistentArray_toArray___rarg(x_17); x_19 = lean_array_size(x_18); lean_inc(x_6); @@ -5765,6 +5757,35 @@ return x_2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { +lean_object* x_10; size_t x_11; size_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_10 = lean_box(0); +x_11 = lean_array_size(x_1); +x_12 = 0; +x_13 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppExprArray___spec__1___closed__2; +x_14 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___spec__1(x_1, x_13, x_10, x_1, x_11, x_12, x_13, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +x_15 = lean_ctor_get(x_14, 0); +lean_inc(x_15); +x_16 = lean_ctor_get(x_14, 1); +lean_inc(x_16); +lean_dec(x_14); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_15, 1); +lean_inc(x_18); +lean_dec(x_15); +x_19 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__3; +x_20 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__6; +x_21 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_20); +lean_ctor_set(x_21, 2, x_17); +x_22 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_pushMsg(x_21, x_3, x_18, x_5, x_6, x_7, x_8, x_16); +return x_22; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ lean_object* x_10; lean_inc(x_8); lean_inc(x_7); @@ -5773,66 +5794,108 @@ lean_inc(x_5); x_10 = l_Lean_Meta_Grind_Arith_Offset_mkModel(x_1, x_5, x_6, x_7, x_8, x_9); if (lean_obj_tag(x_10) == 0) { -lean_object* x_11; lean_object* x_12; lean_object* x_13; size_t x_14; size_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_11 = lean_ctor_get(x_10, 0); -lean_inc(x_11); -x_12 = lean_ctor_get(x_10, 1); -lean_inc(x_12); -lean_dec(x_10); -x_13 = lean_box(0); -x_14 = lean_array_size(x_11); -x_15 = 0; -x_16 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppExprArray___spec__1___closed__2; -x_17 = l_Array_forIn_x27Unsafe_loop___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___spec__1(x_11, x_16, x_13, x_11, x_14, x_15, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_12); -lean_dec(x_11); -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); -x_19 = lean_ctor_get(x_17, 1); -lean_inc(x_19); -lean_dec(x_17); -x_20 = lean_ctor_get(x_18, 0); -lean_inc(x_20); -x_21 = lean_ctor_get(x_18, 1); -lean_inc(x_21); -lean_dec(x_18); -x_22 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__3; -x_23 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__6; -x_24 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_24, 0, x_22); -lean_ctor_set(x_24, 1, x_23); -lean_ctor_set(x_24, 2, x_20); -x_25 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_pushMsg(x_24, x_3, x_21, x_5, x_6, x_7, x_8, x_19); +uint8_t x_11; +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_ctor_get(x_10, 1); +x_14 = l_Array_isEmpty___rarg(x_12); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; +lean_free_object(x_10); +x_15 = lean_box(0); +x_16 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1(x_12, x_15, x_3, x_4, x_5, x_6, x_7, x_8, x_13); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -return x_25; +lean_dec(x_12); +return x_16; } else { -uint8_t x_26; +lean_object* x_17; lean_object* x_18; +lean_dec(x_12); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_17 = lean_box(0); +x_18 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_18, 0, x_17); +lean_ctor_set(x_18, 1, x_4); +lean_ctor_set(x_10, 0, x_18); +return x_10; +} +} +else +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_10, 0); +x_20 = lean_ctor_get(x_10, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_10); +x_21 = l_Array_isEmpty___rarg(x_19); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_box(0); +x_23 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1(x_19, x_22, x_3, x_4, x_5, x_6, x_7, x_8, x_20); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_19); +return x_23; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_dec(x_19); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +x_24 = lean_box(0); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_4); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_20); +return x_26; +} +} +} +else +{ +uint8_t x_27; lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_26 = !lean_is_exclusive(x_10); -if (x_26 == 0) +x_27 = !lean_is_exclusive(x_10); +if (x_27 == 0) { return x_10; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_10, 0); -x_28 = lean_ctor_get(x_10, 1); +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_10, 0); +x_29 = lean_ctor_get(x_10, 1); +lean_inc(x_29); lean_inc(x_28); -lean_inc(x_27); lean_dec(x_10); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } } @@ -5853,7 +5916,7 @@ if (x_10 == 0) lean_object* x_11; lean_object* x_12; x_11 = lean_box(0); lean_inc(x_1); -x_12 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1(x_1, x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_12 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2(x_1, x_11, x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_1); return x_12; } @@ -5901,121 +5964,24 @@ _start: { lean_object* x_10; x_10 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); +lean_dec(x_1); return x_10; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1() { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("issues", 6, 6); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3() { -_start: -{ -lean_object* x_1; double x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; -x_1 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2; -x_2 = l_Array_mapMUnsafe_map___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppExprArray___spec__1___closed__1; -x_3 = 1; -x_4 = l_Lean_Meta_Grind_Goal_ppENodeRef___closed__8; -x_5 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_4); -lean_ctor_set_float(x_5, sizeof(void*)*2, x_2); -lean_ctor_set_float(x_5, sizeof(void*)*2 + 8, x_2); -lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 16, x_3); -return x_5; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Issues", 6, 6); -return x_1; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4; -x_2 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_2, 0, x_1); -return x_2; -} -} -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5; -x_2 = l_Lean_MessageData_ofFormat(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; uint8_t x_9; -x_8 = lean_ctor_get(x_1, 23); -lean_inc(x_8); -x_9 = l_List_isEmpty___rarg(x_8); -if (x_9 == 0) -{ -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; -x_10 = l_List_reverse___rarg(x_8); -x_11 = lean_array_mk(x_10); -x_12 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3; -x_13 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6; -x_14 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_14, 0, x_12); -lean_ctor_set(x_14, 1, x_13); -lean_ctor_set(x_14, 2, x_11); -x_15 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_pushMsg(x_14, x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_1); -return x_15; -} -else -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; -lean_dec(x_8); -lean_dec(x_1); -x_16 = lean_box(0); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_2); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_7); -return x_18; -} -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); +lean_object* x_10; +x_10 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); lean_dec(x_3); -return x_8; +lean_dec(x_2); +return x_10; } } LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlM___at___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -6283,7 +6249,7 @@ _start: lean_object* x_14; lean_object* x_15; uint8_t x_16; x_14 = lean_ctor_get(x_1, 0); lean_inc(x_14); -x_15 = lean_ctor_get(x_4, 19); +x_15 = lean_ctor_get(x_4, 20); x_16 = lean_nat_dec_le(x_14, x_15); if (x_16 == 0) { @@ -6344,7 +6310,7 @@ _start: lean_object* x_14; lean_object* x_15; uint8_t x_16; x_14 = lean_ctor_get(x_1, 1); lean_inc(x_14); -x_15 = lean_ctor_get(x_4, 14); +x_15 = lean_ctor_get(x_4, 15); x_16 = lean_nat_dec_le(x_14, x_15); if (x_16 == 0) { @@ -6419,7 +6385,7 @@ x_12 = l_Lean_PersistentHashMap_foldlMAux___at_Lean_MetavarContext_getExprAssign lean_dec(x_9); x_13 = lean_ctor_get(x_1, 3); lean_inc(x_13); -x_14 = lean_ctor_get(x_2, 13); +x_14 = lean_ctor_get(x_2, 14); lean_inc(x_14); x_15 = lean_nat_dec_le(x_13, x_14); lean_dec(x_14); @@ -6562,7 +6528,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_goalToMessageData_go(lean_object* x_1 _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_10 = lean_ctor_get(x_1, 22); +x_10 = lean_ctor_get(x_1, 23); x_11 = l_Lean_PersistentArray_toArray___rarg(x_10); x_12 = l_Lean_Meta_Grind_goalToMessageData_go___closed__2; x_13 = l_Lean_Meta_Grind_goalToMessageData_go___closed__3; @@ -6627,30 +6593,38 @@ lean_dec(x_28); x_31 = lean_ctor_get(x_29, 1); lean_inc(x_31); lean_dec(x_29); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_3); x_32 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds(x_2, x_3, x_31, x_5, x_6, x_7, x_8, x_30); -if (lean_obj_tag(x_32) == 0) +return x_32; +} +else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_33 = lean_ctor_get(x_32, 0); -lean_inc(x_33); -x_34 = lean_ctor_get(x_32, 1); -lean_inc(x_34); -lean_dec(x_32); -x_35 = lean_ctor_get(x_33, 1); -lean_inc(x_35); -lean_dec(x_33); -x_36 = l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues(x_3, x_35, x_5, x_6, x_7, x_8, x_34); +uint8_t x_33; lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_2); +x_33 = !lean_is_exclusive(x_28); +if (x_33 == 0) +{ +return x_28; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_28, 0); +x_35 = lean_ctor_get(x_28, 1); +lean_inc(x_35); +lean_inc(x_34); +lean_dec(x_28); +x_36 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_36, 0, x_34); +lean_ctor_set(x_36, 1, x_35); return x_36; } +} +} else { uint8_t x_37; @@ -6659,19 +6633,20 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); -x_37 = !lean_is_exclusive(x_32); +lean_dec(x_2); +x_37 = !lean_is_exclusive(x_24); if (x_37 == 0) { -return x_32; +return x_24; } else { lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_38 = lean_ctor_get(x_32, 0); -x_39 = lean_ctor_get(x_32, 1); +x_38 = lean_ctor_get(x_24, 0); +x_39 = lean_ctor_get(x_24, 1); lean_inc(x_39); lean_inc(x_38); -lean_dec(x_32); +lean_dec(x_24); x_40 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_40, 0, x_38); lean_ctor_set(x_40, 1, x_39); @@ -6688,81 +6663,23 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_3); lean_dec(x_2); -x_41 = !lean_is_exclusive(x_28); +x_41 = !lean_is_exclusive(x_20); if (x_41 == 0) { -return x_28; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_28, 0); -x_43 = lean_ctor_get(x_28, 1); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_28); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; -} -} -} -else -{ -uint8_t x_45; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_45 = !lean_is_exclusive(x_24); -if (x_45 == 0) -{ -return x_24; -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; -x_46 = lean_ctor_get(x_24, 0); -x_47 = lean_ctor_get(x_24, 1); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_24); -x_48 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_48, 0, x_46); -lean_ctor_set(x_48, 1, x_47); -return x_48; -} -} -} -else -{ -uint8_t x_49; -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_3); -lean_dec(x_2); -x_49 = !lean_is_exclusive(x_20); -if (x_49 == 0) -{ return x_20; } else { -lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_50 = lean_ctor_get(x_20, 0); -x_51 = lean_ctor_get(x_20, 1); -lean_inc(x_51); -lean_inc(x_50); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_20, 0); +x_43 = lean_ctor_get(x_20, 1); +lean_inc(x_43); +lean_inc(x_42); lean_dec(x_20); -x_52 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_52, 0, x_50); -lean_ctor_set(x_52, 1, x_51); -return x_52; +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; } } } @@ -6984,213 +6901,6 @@ x_11 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_ return x_11; } } -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_goalsToMessageData___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { -_start: -{ -if (lean_obj_tag(x_2) == 0) -{ -lean_object* x_9; lean_object* x_10; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_1); -x_9 = l_List_reverse___rarg(x_3); -x_10 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_10, 0, x_9); -lean_ctor_set(x_10, 1, x_8); -return x_10; -} -else -{ -uint8_t x_11; -x_11 = !lean_is_exclusive(x_2); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_2, 0); -x_13 = lean_ctor_get(x_2, 1); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_1); -x_14 = l_Lean_Meta_Grind_goalToMessageData(x_12, x_1, x_4, x_5, x_6, x_7, x_8); -if (lean_obj_tag(x_14) == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -lean_ctor_set(x_2, 1, x_3); -lean_ctor_set(x_2, 0, x_15); -{ -lean_object* _tmp_1 = x_13; -lean_object* _tmp_2 = x_2; -lean_object* _tmp_7 = x_16; -x_2 = _tmp_1; -x_3 = _tmp_2; -x_8 = _tmp_7; -} -goto _start; -} -else -{ -uint8_t x_18; -lean_free_object(x_2); -lean_dec(x_13); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_18 = !lean_is_exclusive(x_14); -if (x_18 == 0) -{ -return x_14; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_14, 0); -x_20 = lean_ctor_get(x_14, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_14); -x_21 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -} -else -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_2, 0); -x_23 = lean_ctor_get(x_2, 1); -lean_inc(x_23); -lean_inc(x_22); -lean_dec(x_2); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_1); -x_24 = l_Lean_Meta_Grind_goalToMessageData(x_22, x_1, x_4, x_5, x_6, x_7, x_8); -if (lean_obj_tag(x_24) == 0) -{ -lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_25 = lean_ctor_get(x_24, 0); -lean_inc(x_25); -x_26 = lean_ctor_get(x_24, 1); -lean_inc(x_26); -lean_dec(x_24); -x_27 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_3); -x_2 = x_23; -x_3 = x_27; -x_8 = x_26; -goto _start; -} -else -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; -lean_dec(x_23); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_29 = lean_ctor_get(x_24, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_24, 1); -lean_inc(x_30); -if (lean_is_exclusive(x_24)) { - lean_ctor_release(x_24, 0); - lean_ctor_release(x_24, 1); - x_31 = x_24; -} else { - lean_dec_ref(x_24); - x_31 = lean_box(0); -} -if (lean_is_scalar(x_31)) { - x_32 = lean_alloc_ctor(1, 2, 0); -} else { - x_32 = x_31; -} -lean_ctor_set(x_32, 0, x_29); -lean_ctor_set(x_32, 1, x_30); -return x_32; -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_goalsToMessageData(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; lean_object* x_9; -x_8 = lean_box(0); -x_9 = l_List_mapM_loop___at_Lean_Meta_Grind_goalsToMessageData___spec__1(x_2, x_1, x_8, x_3, x_4, x_5, x_6, x_7); -if (lean_obj_tag(x_9) == 0) -{ -uint8_t x_10; -x_10 = !lean_is_exclusive(x_9); -if (x_10 == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_11 = lean_ctor_get(x_9, 0); -x_12 = l_Lean_Meta_Grind_goalToMessageData___lambda__1___closed__7; -x_13 = l_Lean_MessageData_joinSep(x_11, x_12); -lean_ctor_set(x_9, 0, x_13); -return x_9; -} -else -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_14 = lean_ctor_get(x_9, 0); -x_15 = lean_ctor_get(x_9, 1); -lean_inc(x_15); -lean_inc(x_14); -lean_dec(x_9); -x_16 = l_Lean_Meta_Grind_goalToMessageData___lambda__1___closed__7; -x_17 = l_Lean_MessageData_joinSep(x_14, x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_15); -return x_18; -} -} -else -{ -uint8_t x_19; -x_19 = !lean_is_exclusive(x_9); -if (x_19 == 0) -{ -return x_9; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_20 = lean_ctor_get(x_9, 0); -x_21 = lean_ctor_get(x_9, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_9); -x_22 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_22, 0, x_20); -lean_ctor_set(x_22, 1, x_21); -return x_22; -} -} -} -} lean_object* initialize_Init_Grind_Util(uint8_t builtin, lean_object*); lean_object* initialize_Init_Grind_PP(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Types(uint8_t builtin, lean_object*); @@ -7379,18 +7089,6 @@ l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___ lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__5); l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__6(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppOffset___lambda__1___closed__6); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__1); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__2); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__3); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__4); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__5); -l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppIssues___closed__6); l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__1(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__1); l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_PP_0__Lean_Meta_Grind_ppThresholds___lambda__2___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Propagate.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Propagate.c index 018e8ca09f..4461f1bbd9 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Propagate.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Propagate.c @@ -22,7 +22,6 @@ static lean_object* l_Lean_Meta_Grind_propagateNotDown___lambda__1___closed__3; static lean_object* l_Lean_Meta_Grind_propagateDIte___lambda__1___closed__4; static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateAndUp_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_383____closed__1; static lean_object* l_Lean_Meta_Grind_propagateOrUp___lambda__1___closed__11; -static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1; static lean_object* l_Lean_Meta_Grind_propagateOrDown___lambda__1___closed__4; static lean_object* l_Lean_Meta_Grind_propagateAndDown___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateAndUp___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -101,7 +100,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateEqUp___lambda__1(lean_object lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_propagateEqDown___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateNotUp___lambda__1___closed__9; -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateEqDown___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateOrUp___lambda__1___closed__6; static lean_object* l_Lean_Meta_Grind_propagateNotUp___lambda__1___closed__2; @@ -120,6 +118,7 @@ static lean_object* l_Lean_Meta_Grind_propagateOrDown___lambda__1___closed__1; static lean_object* l_Lean_Meta_Grind_propagateOrUp___lambda__1___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateDIte___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateAndUp___lambda__1___closed__8; +static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getGeneration(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateEqDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -132,6 +131,7 @@ static lean_object* l_Lean_Meta_Grind_propagateNotDown___lambda__1___closed__5; static lean_object* l_Lean_Meta_Grind_propagateIte___lambda__1___closed__1; static lean_object* l_Lean_Meta_Grind_propagateDIte___closed__2; static lean_object* l_Lean_Meta_Grind_propagateAndUp___lambda__1___closed__9; +static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateNotUp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateEqDown___lambda__2___closed__2; static lean_object* l_Lean_Meta_Grind_propagateOrUp___lambda__1___closed__3; @@ -151,6 +151,7 @@ static lean_object* l_Lean_Meta_Grind_propagateDIte___closed__1; static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateNotUp_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_1486____closed__1; static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateEqDown_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_2746____closed__1; static lean_object* l_Lean_Meta_Grind_propagateIte___lambda__1___closed__4; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989_(lean_object*); lean_object* l_Lean_Expr_app___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateHEqDown_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3279_(lean_object*); lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); @@ -169,6 +170,7 @@ lean_object* l_Lean_Meta_Grind_isEqv(lean_object*, lean_object*, lean_object*, l lean_object* l___private_Lean_Meta_Tactic_Grind_PropagatorAttr_0__Lean_Meta_Grind_registerBuiltinPropagatorCore(lean_object*, uint8_t, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_mkEqTrueProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkOfEqTrueCore(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateAndUp___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_propagateEqDown___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateIte(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -188,7 +190,6 @@ lean_object* l_Lean_Meta_Grind_isEqTrue(lean_object*, lean_object*, lean_object* static lean_object* l_Lean_Meta_Grind_propagateAndUp___lambda__1___closed__12; static lean_object* l_Lean_Meta_Grind_propagateNotUp___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateEqDown___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461_(lean_object*); static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateEqUp_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_2114____closed__1; lean_object* l_Lean_Meta_Grind_getRootENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_lt(size_t, size_t); @@ -203,7 +204,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateHEqUp(lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateHEqDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_internalize(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateNotDown_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_1766_(lean_object*); -static lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1; uint8_t l_Array_isEmpty___rarg(lean_object*); static lean_object* _init_l_Lean_Meta_Grind_propagateAndUp___lambda__1___closed__1() { _start: @@ -7020,126 +7020,33 @@ return x_29; } else { -lean_object* x_30; lean_object* x_31; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; x_30 = lean_ctor_get(x_21, 1); lean_inc(x_30); lean_dec(x_21); -lean_inc(x_15); -lean_inc(x_14); -lean_inc(x_13); -lean_inc(x_12); -lean_inc(x_11); -lean_inc(x_10); -lean_inc(x_9); -lean_inc(x_8); -lean_inc(x_4); -x_31 = l_Lean_Meta_Grind_mkEqFalseProof(x_4, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_30); -if (lean_obj_tag(x_31) == 0) -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; lean_object* x_39; +x_31 = l_Lean_Meta_Grind_getGeneration(x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_30); x_32 = lean_ctor_get(x_31, 0); lean_inc(x_32); x_33 = lean_ctor_get(x_31, 1); lean_inc(x_33); lean_dec(x_31); -x_34 = l_Lean_Expr_constLevels_x21(x_2); -x_35 = l_Lean_Meta_Grind_propagateIte___lambda__1___closed__2; -x_36 = l_Lean_Expr_const___override(x_35, x_34); +x_34 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); lean_inc(x_7); -x_37 = l_Lean_mkApp6(x_36, x_3, x_4, x_5, x_6, x_7, x_32); -x_38 = 0; -x_39 = l_Lean_Meta_Grind_pushEqCore(x_1, x_7, x_37, x_38, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_33); -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -return x_39; -} -else +x_35 = l_Lean_Meta_Grind_internalize(x_7, x_32, x_34, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_33); +if (lean_obj_tag(x_35) == 0) { -uint8_t x_40; -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_40 = !lean_is_exclusive(x_31); -if (x_40 == 0) -{ -return x_31; -} -else -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_31, 0); -x_42 = lean_ctor_get(x_31, 1); -lean_inc(x_42); -lean_inc(x_41); -lean_dec(x_31); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -return x_43; -} -} -} -} -else -{ -uint8_t x_44; -lean_dec(x_15); -lean_dec(x_14); -lean_dec(x_13); -lean_dec(x_12); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -x_44 = !lean_is_exclusive(x_21); -if (x_44 == 0) -{ -return x_21; -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_21, 0); -x_46 = lean_ctor_get(x_21, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_21); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; -} -} -} -else -{ -lean_object* x_48; lean_object* x_49; -x_48 = lean_ctor_get(x_17, 1); -lean_inc(x_48); -lean_dec(x_17); +lean_object* x_36; lean_object* x_37; +x_36 = lean_ctor_get(x_35, 1); +lean_inc(x_36); +lean_dec(x_35); lean_inc(x_15); lean_inc(x_14); lean_inc(x_13); @@ -7149,22 +7056,22 @@ lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_4); -x_49 = l_Lean_Meta_Grind_mkEqTrueProof(x_4, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_48); -if (lean_obj_tag(x_49) == 0) +x_37 = l_Lean_Meta_Grind_mkEqFalseProof(x_4, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_36); +if (lean_obj_tag(x_37) == 0) { -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; uint8_t x_56; lean_object* x_57; -x_50 = lean_ctor_get(x_49, 0); -lean_inc(x_50); -x_51 = lean_ctor_get(x_49, 1); -lean_inc(x_51); -lean_dec(x_49); -x_52 = l_Lean_Expr_constLevels_x21(x_2); -x_53 = l_Lean_Meta_Grind_propagateIte___lambda__1___closed__4; -x_54 = l_Lean_Expr_const___override(x_53, x_52); -lean_inc(x_6); -x_55 = l_Lean_mkApp6(x_54, x_3, x_4, x_5, x_6, x_7, x_50); -x_56 = 0; -x_57 = l_Lean_Meta_Grind_pushEqCore(x_1, x_6, x_55, x_56, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_51); +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; lean_object* x_45; +x_38 = lean_ctor_get(x_37, 0); +lean_inc(x_38); +x_39 = lean_ctor_get(x_37, 1); +lean_inc(x_39); +lean_dec(x_37); +x_40 = l_Lean_Expr_constLevels_x21(x_2); +x_41 = l_Lean_Meta_Grind_propagateIte___lambda__1___closed__2; +x_42 = l_Lean_Expr_const___override(x_41, x_40); +lean_inc(x_7); +x_43 = l_Lean_mkApp6(x_42, x_3, x_4, x_5, x_6, x_7, x_38); +x_44 = 0; +x_45 = l_Lean_Meta_Grind_pushEqCore(x_1, x_7, x_43, x_44, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_39); lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -7173,11 +7080,11 @@ lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); -return x_57; +return x_45; } else { -uint8_t x_58; +uint8_t x_46; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -7192,30 +7099,29 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_58 = !lean_is_exclusive(x_49); -if (x_58 == 0) +x_46 = !lean_is_exclusive(x_37); +if (x_46 == 0) { +return x_37; +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_47 = lean_ctor_get(x_37, 0); +x_48 = lean_ctor_get(x_37, 1); +lean_inc(x_48); +lean_inc(x_47); +lean_dec(x_37); +x_49 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_49, 0, x_47); +lean_ctor_set(x_49, 1, x_48); return x_49; } -else -{ -lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_59 = lean_ctor_get(x_49, 0); -x_60 = lean_ctor_get(x_49, 1); -lean_inc(x_60); -lean_inc(x_59); -lean_dec(x_49); -x_61 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_60); -return x_61; -} -} } } else { -uint8_t x_62; +uint8_t x_50; lean_dec(x_15); lean_dec(x_14); lean_dec(x_13); @@ -7230,23 +7136,237 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); -x_62 = !lean_is_exclusive(x_17); -if (x_62 == 0) +x_50 = !lean_is_exclusive(x_35); +if (x_50 == 0) +{ +return x_35; +} +else +{ +lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_51 = lean_ctor_get(x_35, 0); +x_52 = lean_ctor_get(x_35, 1); +lean_inc(x_52); +lean_inc(x_51); +lean_dec(x_35); +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_51); +lean_ctor_set(x_53, 1, x_52); +return x_53; +} +} +} +} +else +{ +uint8_t x_54; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_54 = !lean_is_exclusive(x_21); +if (x_54 == 0) +{ +return x_21; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; +x_55 = lean_ctor_get(x_21, 0); +x_56 = lean_ctor_get(x_21, 1); +lean_inc(x_56); +lean_inc(x_55); +lean_dec(x_21); +x_57 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_57, 0, x_55); +lean_ctor_set(x_57, 1, x_56); +return x_57; +} +} +} +else +{ +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_58 = lean_ctor_get(x_17, 1); +lean_inc(x_58); +lean_dec(x_17); +x_59 = l_Lean_Meta_Grind_getGeneration(x_1, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_58); +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_ctor_get(x_59, 1); +lean_inc(x_61); +lean_dec(x_59); +x_62 = lean_box(0); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_6); +x_63 = l_Lean_Meta_Grind_internalize(x_6, x_60, x_62, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_61); +if (lean_obj_tag(x_63) == 0) +{ +lean_object* x_64; lean_object* x_65; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +lean_inc(x_15); +lean_inc(x_14); +lean_inc(x_13); +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_4); +x_65 = l_Lean_Meta_Grind_mkEqTrueProof(x_4, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_64); +if (lean_obj_tag(x_65) == 0) +{ +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; +x_66 = lean_ctor_get(x_65, 0); +lean_inc(x_66); +x_67 = lean_ctor_get(x_65, 1); +lean_inc(x_67); +lean_dec(x_65); +x_68 = l_Lean_Expr_constLevels_x21(x_2); +x_69 = l_Lean_Meta_Grind_propagateIte___lambda__1___closed__4; +x_70 = l_Lean_Expr_const___override(x_69, x_68); +lean_inc(x_6); +x_71 = l_Lean_mkApp6(x_70, x_3, x_4, x_5, x_6, x_7, x_66); +x_72 = 0; +x_73 = l_Lean_Meta_Grind_pushEqCore(x_1, x_6, x_71, x_72, x_8, x_9, x_10, x_11, x_12, x_13, x_14, x_15, x_67); +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +return x_73; +} +else +{ +uint8_t x_74; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_74 = !lean_is_exclusive(x_65); +if (x_74 == 0) +{ +return x_65; +} +else +{ +lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_75 = lean_ctor_get(x_65, 0); +x_76 = lean_ctor_get(x_65, 1); +lean_inc(x_76); +lean_inc(x_75); +lean_dec(x_65); +x_77 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_77, 0, x_75); +lean_ctor_set(x_77, 1, x_76); +return x_77; +} +} +} +else +{ +uint8_t x_78; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_78 = !lean_is_exclusive(x_63); +if (x_78 == 0) +{ +return x_63; +} +else +{ +lean_object* x_79; lean_object* x_80; lean_object* x_81; +x_79 = lean_ctor_get(x_63, 0); +x_80 = lean_ctor_get(x_63, 1); +lean_inc(x_80); +lean_inc(x_79); +lean_dec(x_63); +x_81 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_81, 0, x_79); +lean_ctor_set(x_81, 1, x_80); +return x_81; +} +} +} +} +else +{ +uint8_t x_82; +lean_dec(x_15); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_82 = !lean_is_exclusive(x_17); +if (x_82 == 0) { return x_17; } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; -x_63 = lean_ctor_get(x_17, 0); -x_64 = lean_ctor_get(x_17, 1); -lean_inc(x_64); -lean_inc(x_63); +lean_object* x_83; lean_object* x_84; lean_object* x_85; +x_83 = lean_ctor_get(x_17, 0); +x_84 = lean_ctor_get(x_17, 1); +lean_inc(x_84); +lean_inc(x_83); lean_dec(x_17); -x_65 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_65, 0, x_63); -lean_ctor_set(x_65, 1, x_64); -return x_65; +x_85 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_85, 0, x_83); +lean_ctor_set(x_85, 1, x_84); +return x_85; } } } @@ -7459,7 +7579,7 @@ lean_dec(x_2); return x_17; } } -static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1() { +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1() { _start: { lean_object* x_1; @@ -7467,13 +7587,13 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_propagateIte), 10, 0); return x_1; } } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Meta_Grind_propagateIte___closed__2; x_3 = 1; -x_4 = l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1; +x_4 = l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1; x_5 = l___private_Lean_Meta_Tactic_Grind_PropagatorAttr_0__Lean_Meta_Grind_registerBuiltinPropagatorCore(x_2, x_3, x_4, x_1); return x_5; } @@ -8408,7 +8528,7 @@ lean_dec(x_2); return x_17; } } -static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1() { +static lean_object* _init_l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1() { _start: { lean_object* x_1; @@ -8416,13 +8536,13 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Meta_Grind_propagateDIte), 10, 0); return x_1; } } -LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461_(lean_object* x_1) { +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Lean_Meta_Grind_propagateDIte___closed__2; x_3 = 1; -x_4 = l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1; +x_4 = l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1; x_5 = l___private_Lean_Meta_Tactic_Grind_PropagatorAttr_0__Lean_Meta_Grind_registerBuiltinPropagatorCore(x_2, x_3, x_4, x_1); return x_5; } @@ -8671,9 +8791,9 @@ l_Lean_Meta_Grind_propagateIte___closed__1 = _init_l_Lean_Meta_Grind_propagateIt lean_mark_persistent(l_Lean_Meta_Grind_propagateIte___closed__1); l_Lean_Meta_Grind_propagateIte___closed__2 = _init_l_Lean_Meta_Grind_propagateIte___closed__2(); lean_mark_persistent(l_Lean_Meta_Grind_propagateIte___closed__2); -l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1(); -lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917____closed__1); -if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3917_(lean_io_mk_world()); +l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989____closed__1); +if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_propagateIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_3989_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }l_Lean_Meta_Grind_propagateDIte___lambda__1___closed__1 = _init_l_Lean_Meta_Grind_propagateDIte___lambda__1___closed__1(); @@ -8694,9 +8814,9 @@ l_Lean_Meta_Grind_propagateDIte___closed__1 = _init_l_Lean_Meta_Grind_propagateD lean_mark_persistent(l_Lean_Meta_Grind_propagateDIte___closed__1); l_Lean_Meta_Grind_propagateDIte___closed__2 = _init_l_Lean_Meta_Grind_propagateDIte___closed__2(); lean_mark_persistent(l_Lean_Meta_Grind_propagateDIte___closed__2); -l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1(); -lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461____closed__1); -if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4461_(lean_io_mk_world()); +l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1 = _init_l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533____closed__1); +if (builtin) {res = l___regBuiltin_Lean_Meta_Grind_propagateDIte_declare__1____x40_Lean_Meta_Tactic_Grind_Propagate___hyg_4533_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Simp.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Simp.c index 4b18c06b81..b2ca3ec311 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Simp.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Simp.c @@ -133,7 +133,7 @@ return x_31; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; x_32 = lean_ctor_get(x_23, 0); x_33 = lean_ctor_get(x_23, 1); x_34 = lean_ctor_get(x_23, 2); @@ -141,6 +141,8 @@ x_35 = lean_ctor_get(x_23, 4); x_36 = lean_ctor_get(x_23, 5); x_37 = lean_ctor_get(x_23, 6); x_38 = lean_ctor_get(x_23, 7); +x_39 = lean_ctor_get(x_23, 8); +lean_inc(x_39); lean_inc(x_38); lean_inc(x_37); lean_inc(x_36); @@ -149,56 +151,57 @@ lean_inc(x_34); lean_inc(x_33); lean_inc(x_32); lean_dec(x_23); -x_39 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_39, 0, x_32); -lean_ctor_set(x_39, 1, x_33); -lean_ctor_set(x_39, 2, x_34); -lean_ctor_set(x_39, 3, x_21); -lean_ctor_set(x_39, 4, x_35); -lean_ctor_set(x_39, 5, x_36); -lean_ctor_set(x_39, 6, x_37); -lean_ctor_set(x_39, 7, x_38); -x_40 = lean_st_ref_set(x_4, x_39, x_24); -x_41 = lean_ctor_get(x_40, 1); -lean_inc(x_41); -if (lean_is_exclusive(x_40)) { - lean_ctor_release(x_40, 0); - lean_ctor_release(x_40, 1); - x_42 = x_40; +x_40 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_40, 0, x_32); +lean_ctor_set(x_40, 1, x_33); +lean_ctor_set(x_40, 2, x_34); +lean_ctor_set(x_40, 3, x_21); +lean_ctor_set(x_40, 4, x_35); +lean_ctor_set(x_40, 5, x_36); +lean_ctor_set(x_40, 6, x_37); +lean_ctor_set(x_40, 7, x_38); +lean_ctor_set(x_40, 8, x_39); +x_41 = lean_st_ref_set(x_4, x_40, x_24); +x_42 = lean_ctor_get(x_41, 1); +lean_inc(x_42); +if (lean_is_exclusive(x_41)) { + lean_ctor_release(x_41, 0); + lean_ctor_release(x_41, 1); + x_43 = x_41; } else { - lean_dec_ref(x_40); - x_42 = lean_box(0); + lean_dec_ref(x_41); + x_43 = lean_box(0); } -if (lean_is_scalar(x_42)) { - x_43 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_43)) { + x_44 = lean_alloc_ctor(0, 2, 0); } else { - x_43 = x_42; + x_44 = x_43; } -lean_ctor_set(x_43, 0, x_20); -lean_ctor_set(x_43, 1, x_41); -return x_43; +lean_ctor_set(x_44, 0, x_20); +lean_ctor_set(x_44, 1, x_42); +return x_44; } } else { -uint8_t x_44; -x_44 = !lean_is_exclusive(x_17); -if (x_44 == 0) +uint8_t x_45; +x_45 = !lean_is_exclusive(x_17); +if (x_45 == 0) { return x_17; } else { -lean_object* x_45; lean_object* x_46; lean_object* x_47; -x_45 = lean_ctor_get(x_17, 0); -x_46 = lean_ctor_get(x_17, 1); +lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_46 = lean_ctor_get(x_17, 0); +x_47 = lean_ctor_get(x_17, 1); +lean_inc(x_47); lean_inc(x_46); -lean_inc(x_45); lean_dec(x_17); -x_47 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_47, 0, x_45); -lean_ctor_set(x_47, 1, x_46); -return x_47; +x_48 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_47); +return x_48; } } } diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/SimpUtil.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/SimpUtil.c index 8d34b45311..1947bafc84 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/SimpUtil.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/SimpUtil.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.SimpUtil -// Imports: Lean.Meta.Tactic.Simp.Simproc Lean.Meta.Tactic.Grind.Simp Lean.Meta.Tactic.Grind.DoNotSimp Lean.Meta.Tactic.Simp.BuiltinSimprocs.List +// Imports: Lean.Meta.Tactic.Simp.Simproc Lean.Meta.Tactic.Grind.Simp Lean.Meta.Tactic.Grind.DoNotSimp Lean.Meta.Tactic.Grind.MatchCond Lean.Meta.Tactic.Simp.BuiltinSimprocs.List #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -40,6 +40,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_registerNormTheorems___lambda__1___bo static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_SimpUtil___hyg_3____closed__3; lean_object* l_Lean_Meta_simp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_normalizeImp___closed__3; +lean_object* l_Lean_Meta_Grind_addMatchCond(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_getSEvalSimprocs___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getSimpContext___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Simp_mkContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -561,126 +562,193 @@ x_9 = l_Lean_Meta_Simp_Simprocs_erase(x_6, x_8); x_10 = l_Lean_Meta_Grind_addDoNotSimp(x_9, x_1, x_2, x_7); if (lean_obj_tag(x_10) == 0) { -uint8_t x_11; -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_box(0); -lean_ctor_set_tag(x_4, 1); -lean_ctor_set(x_4, 1, x_13); -lean_ctor_set(x_4, 0, x_12); -x_14 = lean_array_mk(x_4); -lean_ctor_set(x_10, 0, x_14); -return x_10; -} -else -{ -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_15 = lean_ctor_get(x_10, 0); -x_16 = lean_ctor_get(x_10, 1); -lean_inc(x_16); -lean_inc(x_15); +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); lean_dec(x_10); -x_17 = lean_box(0); +x_13 = l_Lean_Meta_Grind_addMatchCond(x_11, x_1, x_2, x_12); +if (lean_obj_tag(x_13) == 0) +{ +uint8_t x_14; +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_15 = lean_ctor_get(x_13, 0); +x_16 = lean_box(0); lean_ctor_set_tag(x_4, 1); -lean_ctor_set(x_4, 1, x_17); +lean_ctor_set(x_4, 1, x_16); lean_ctor_set(x_4, 0, x_15); -x_18 = lean_array_mk(x_4); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_16); -return x_19; +x_17 = lean_array_mk(x_4); +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_18 = lean_ctor_get(x_13, 0); +x_19 = lean_ctor_get(x_13, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_13); +x_20 = lean_box(0); +lean_ctor_set_tag(x_4, 1); +lean_ctor_set(x_4, 1, x_20); +lean_ctor_set(x_4, 0, x_18); +x_21 = lean_array_mk(x_4); +x_22 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_22, 0, x_21); +lean_ctor_set(x_22, 1, x_19); +return x_22; } } else { -uint8_t x_20; +uint8_t x_23; lean_free_object(x_4); -x_20 = !lean_is_exclusive(x_10); -if (x_20 == 0) +x_23 = !lean_is_exclusive(x_13); +if (x_23 == 0) { -return x_10; +return x_13; } else { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_21 = lean_ctor_get(x_10, 0); -x_22 = lean_ctor_get(x_10, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_10); -x_23 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_23, 0, x_21); -lean_ctor_set(x_23, 1, x_22); -return x_23; -} -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_24 = lean_ctor_get(x_4, 0); -x_25 = lean_ctor_get(x_4, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_13, 0); +x_25 = lean_ctor_get(x_13, 1); lean_inc(x_25); lean_inc(x_24); -lean_dec(x_4); -x_26 = l_Lean_Meta_Grind_getSimprocs___rarg___closed__3; -x_27 = l_Lean_Meta_Simp_Simprocs_erase(x_24, x_26); -x_28 = l_Lean_Meta_Grind_addDoNotSimp(x_27, x_1, x_2, x_25); -if (lean_obj_tag(x_28) == 0) -{ -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; -x_29 = lean_ctor_get(x_28, 0); -lean_inc(x_29); -x_30 = lean_ctor_get(x_28, 1); -lean_inc(x_30); -if (lean_is_exclusive(x_28)) { - lean_ctor_release(x_28, 0); - lean_ctor_release(x_28, 1); - x_31 = x_28; -} else { - lean_dec_ref(x_28); - x_31 = lean_box(0); +lean_dec(x_13); +x_26 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_26, 0, x_24); +lean_ctor_set(x_26, 1, x_25); +return x_26; } -x_32 = lean_box(0); -x_33 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_33, 0, x_29); -lean_ctor_set(x_33, 1, x_32); -x_34 = lean_array_mk(x_33); -if (lean_is_scalar(x_31)) { - x_35 = lean_alloc_ctor(0, 2, 0); -} else { - x_35 = x_31; } -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_30); -return x_35; } else { -lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_36 = lean_ctor_get(x_28, 0); +uint8_t x_27; +lean_free_object(x_4); +x_27 = !lean_is_exclusive(x_10); +if (x_27 == 0) +{ +return x_10; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_10, 0); +x_29 = lean_ctor_get(x_10, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_10); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_31 = lean_ctor_get(x_4, 0); +x_32 = lean_ctor_get(x_4, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_4); +x_33 = l_Lean_Meta_Grind_getSimprocs___rarg___closed__3; +x_34 = l_Lean_Meta_Simp_Simprocs_erase(x_31, x_33); +x_35 = l_Lean_Meta_Grind_addDoNotSimp(x_34, x_1, x_2, x_32); +if (lean_obj_tag(x_35) == 0) +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_35, 0); lean_inc(x_36); -x_37 = lean_ctor_get(x_28, 1); +x_37 = lean_ctor_get(x_35, 1); lean_inc(x_37); -if (lean_is_exclusive(x_28)) { - lean_ctor_release(x_28, 0); - lean_ctor_release(x_28, 1); - x_38 = x_28; +lean_dec(x_35); +x_38 = l_Lean_Meta_Grind_addMatchCond(x_36, x_1, x_2, x_37); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_39 = lean_ctor_get(x_38, 0); +lean_inc(x_39); +x_40 = lean_ctor_get(x_38, 1); +lean_inc(x_40); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_41 = x_38; } else { - lean_dec_ref(x_28); - x_38 = lean_box(0); + lean_dec_ref(x_38); + x_41 = lean_box(0); } -if (lean_is_scalar(x_38)) { - x_39 = lean_alloc_ctor(1, 2, 0); +x_42 = lean_box(0); +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_39); +lean_ctor_set(x_43, 1, x_42); +x_44 = lean_array_mk(x_43); +if (lean_is_scalar(x_41)) { + x_45 = lean_alloc_ctor(0, 2, 0); } else { - x_39 = x_38; + x_45 = x_41; } -lean_ctor_set(x_39, 0, x_36); -lean_ctor_set(x_39, 1, x_37); -return x_39; +lean_ctor_set(x_45, 0, x_44); +lean_ctor_set(x_45, 1, x_40); +return x_45; +} +else +{ +lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; +x_46 = lean_ctor_get(x_38, 0); +lean_inc(x_46); +x_47 = lean_ctor_get(x_38, 1); +lean_inc(x_47); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_48 = x_38; +} else { + lean_dec_ref(x_38); + x_48 = lean_box(0); +} +if (lean_is_scalar(x_48)) { + x_49 = lean_alloc_ctor(1, 2, 0); +} else { + x_49 = x_48; +} +lean_ctor_set(x_49, 0, x_46); +lean_ctor_set(x_49, 1, x_47); +return x_49; +} +} +else +{ +lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_50 = lean_ctor_get(x_35, 0); +lean_inc(x_50); +x_51 = lean_ctor_get(x_35, 1); +lean_inc(x_51); +if (lean_is_exclusive(x_35)) { + lean_ctor_release(x_35, 0); + lean_ctor_release(x_35, 1); + x_52 = x_35; +} else { + lean_dec_ref(x_35); + x_52 = lean_box(0); +} +if (lean_is_scalar(x_52)) { + x_53 = lean_alloc_ctor(1, 2, 0); +} else { + x_53 = x_52; +} +lean_ctor_set(x_53, 0, x_50); +lean_ctor_set(x_53, 1, x_51); +return x_53; } } } @@ -1010,6 +1078,7 @@ return x_31; lean_object* initialize_Lean_Meta_Tactic_Simp_Simproc(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Simp(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_DoNotSimp(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_MatchCond(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Simp_BuiltinSimprocs_List(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Lean_Meta_Tactic_Grind_SimpUtil(uint8_t builtin, lean_object* w) { @@ -1025,6 +1094,9 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_DoNotSimp(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_MatchCond(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Simp_BuiltinSimprocs_List(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Solve.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Solve.c index 0f8a4f7291..34ee3cccad 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Solve.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Solve.c @@ -13,77 +13,81 @@ #ifdef __cplusplus extern "C" { #endif +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isMaxHeartbeat(lean_object*); -static lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3; -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isMaxRecDepth(lean_object*); +LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Solve_tryEmatch___closed__1; static lean_object* l_Lean_Meta_Grind_Solve_tryAssertNext___closed__1; uint8_t l_Lean_Exception_isInterrupt(lean_object*); lean_object* l_Lean_Meta_Grind_splitNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_applyTac___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_tryEmatch___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_ematchAndAssert(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_stringToMessageData(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_solve(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_solve(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Exception_toMessageData(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Solve_applyTac___closed__2; -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Solve_stepGuard___closed__1; lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushFailure___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_tryAssertNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Solve_trySplit___closed__1; -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_MessageData_ofFormat(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushGoals(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushFailure(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushGoal___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_applyTac(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2; -static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1; -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +uint8_t l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_maxNumFailuresReached___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2; -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2; static lean_object* l_Lean_Meta_Grind_Solve_applyTac___closed__1; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1; lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_trySplit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_getNext_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Solve_main___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_trySplit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Meta_Grind_Goal_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_maxNumFailuresReached(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_pushGoals___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_stepGuard(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_tryAssertNext___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getConfig___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3; +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_assertNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_getNext_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_tryEmatch(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_getNext_x3f(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { @@ -1043,16 +1047,14 @@ return x_23; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_free_object(x_23); x_35 = l_Lean_Exception_toMessageData(x_29); -x_36 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_35, x_7, x_8, x_9, x_10, x_30); -x_37 = lean_ctor_get(x_36, 0); +x_36 = l_Lean_Meta_Grind_reportIssue(x_35, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +x_37 = lean_ctor_get(x_36, 1); lean_inc(x_37); -x_38 = lean_ctor_get(x_36, 1); -lean_inc(x_38); lean_dec(x_36); -x_39 = l_Lean_Meta_Grind_Solve_pushFailure(x_37, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_38); +x_38 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_37); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1061,27 +1063,25 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_40 = lean_ctor_get(x_39, 1); -lean_inc(x_40); -lean_dec(x_39); -x_41 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_41; -x_13 = x_40; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_40; +x_13 = x_39; goto block_22; } } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_free_object(x_23); -x_42 = l_Lean_Exception_toMessageData(x_29); -x_43 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_42, x_7, x_8, x_9, x_10, x_30); -x_44 = lean_ctor_get(x_43, 0); -lean_inc(x_44); -x_45 = lean_ctor_get(x_43, 1); -lean_inc(x_45); -lean_dec(x_43); -x_46 = l_Lean_Meta_Grind_Solve_pushFailure(x_44, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_45); +x_41 = l_Lean_Exception_toMessageData(x_29); +x_42 = l_Lean_Meta_Grind_reportIssue(x_41, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_30); +x_43 = lean_ctor_get(x_42, 1); +lean_inc(x_43); +lean_dec(x_42); +x_44 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_43); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1090,12 +1090,12 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_47 = lean_ctor_get(x_46, 1); -lean_inc(x_47); -lean_dec(x_46); -x_48 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_48; -x_13 = x_47; +x_45 = lean_ctor_get(x_44, 1); +lean_inc(x_45); +lean_dec(x_44); +x_46 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_46; +x_13 = x_45; goto block_22; } } @@ -1129,28 +1129,28 @@ return x_23; } else { -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = lean_ctor_get(x_23, 0); -x_50 = lean_ctor_get(x_23, 1); -lean_inc(x_50); -lean_inc(x_49); +lean_object* x_47; lean_object* x_48; uint8_t x_49; +x_47 = lean_ctor_get(x_23, 0); +x_48 = lean_ctor_get(x_23, 1); +lean_inc(x_48); +lean_inc(x_47); lean_dec(x_23); -x_51 = l_Lean_Exception_isInterrupt(x_49); +x_49 = l_Lean_Exception_isInterrupt(x_47); +if (x_49 == 0) +{ +uint8_t x_50; +x_50 = l_Lean_Exception_isRuntime(x_47); +if (x_50 == 0) +{ +uint8_t x_51; +x_51 = l_Lean_Exception_isMaxHeartbeat(x_47); if (x_51 == 0) { uint8_t x_52; -x_52 = l_Lean_Exception_isRuntime(x_49); +x_52 = l_Lean_Exception_isMaxRecDepth(x_47); if (x_52 == 0) { -uint8_t x_53; -x_53 = l_Lean_Exception_isMaxHeartbeat(x_49); -if (x_53 == 0) -{ -uint8_t x_54; -x_54 = l_Lean_Exception_isMaxRecDepth(x_49); -if (x_54 == 0) -{ -lean_object* x_55; +lean_object* x_53; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1160,22 +1160,46 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_55 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_55, 0, x_49); -lean_ctor_set(x_55, 1, x_50); -return x_55; +x_53 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_53, 0, x_47); +lean_ctor_set(x_53, 1, x_48); +return x_53; } else { -lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_56 = l_Lean_Exception_toMessageData(x_49); -x_57 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_56, x_7, x_8, x_9, x_10, x_50); -x_58 = lean_ctor_get(x_57, 0); +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_54 = l_Lean_Exception_toMessageData(x_47); +x_55 = l_Lean_Meta_Grind_reportIssue(x_54, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_48); +x_56 = lean_ctor_get(x_55, 1); +lean_inc(x_56); +lean_dec(x_55); +x_57 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_56); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_58 = lean_ctor_get(x_57, 1); lean_inc(x_58); -x_59 = lean_ctor_get(x_57, 1); -lean_inc(x_59); lean_dec(x_57); -x_60 = l_Lean_Meta_Grind_Solve_pushFailure(x_58, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_59); +x_59 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_59; +x_13 = x_58; +goto block_22; +} +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_60 = l_Lean_Exception_toMessageData(x_47); +x_61 = l_Lean_Meta_Grind_reportIssue(x_60, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_48); +x_62 = lean_ctor_get(x_61, 1); +lean_inc(x_62); +lean_dec(x_61); +x_63 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_62); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1184,46 +1208,18 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); -x_61 = lean_ctor_get(x_60, 1); -lean_inc(x_61); -lean_dec(x_60); -x_62 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_62; -x_13 = x_61; +x_64 = lean_ctor_get(x_63, 1); +lean_inc(x_64); +lean_dec(x_63); +x_65 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_65; +x_13 = x_64; goto block_22; } } else { -lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; -x_63 = l_Lean_Exception_toMessageData(x_49); -x_64 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_63, x_7, x_8, x_9, x_10, x_50); -x_65 = lean_ctor_get(x_64, 0); -lean_inc(x_65); -x_66 = lean_ctor_get(x_64, 1); -lean_inc(x_66); -lean_dec(x_64); -x_67 = l_Lean_Meta_Grind_Solve_pushFailure(x_65, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_66); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); -lean_dec(x_67); -x_69 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_69; -x_13 = x_68; -goto block_22; -} -} -else -{ -lean_object* x_70; +lean_object* x_66; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1233,15 +1229,15 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_70 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_70, 0, x_49); -lean_ctor_set(x_70, 1, x_50); -return x_70; +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_47); +lean_ctor_set(x_66, 1, x_48); +return x_66; } } else { -lean_object* x_71; +lean_object* x_67; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1251,10 +1247,10 @@ lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_71 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_71, 0, x_49); -lean_ctor_set(x_71, 1, x_50); -return x_71; +x_67 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_67, 0, x_47); +lean_ctor_set(x_67, 1, x_48); +return x_67; } } } @@ -1341,7 +1337,7 @@ return x_4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_applyTac(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { -lean_object* x_12; lean_object* x_13; lean_object* x_23; lean_object* x_24; lean_object* x_47; +lean_object* x_12; lean_object* x_13; lean_object* x_23; lean_object* x_24; lean_object* x_45; lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); @@ -1350,16 +1346,16 @@ lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); lean_inc(x_2); -x_47 = lean_apply_9(x_1, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -if (lean_obj_tag(x_47) == 0) +x_45 = lean_apply_9(x_1, x_2, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_48; +lean_object* x_46; lean_dec(x_2); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -if (lean_obj_tag(x_48) == 0) +x_46 = lean_ctor_get(x_45, 0); +lean_inc(x_46); +if (lean_obj_tag(x_46) == 0) { -lean_object* x_49; lean_object* x_50; +lean_object* x_47; lean_object* x_48; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1367,24 +1363,24 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_49 = lean_ctor_get(x_47, 1); +x_47 = lean_ctor_get(x_45, 1); +lean_inc(x_47); +lean_dec(x_45); +x_48 = l_Lean_Meta_Grind_Solve_applyTac___closed__1; +x_12 = x_48; +x_13 = x_47; +goto block_22; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_49 = lean_ctor_get(x_45, 1); lean_inc(x_49); -lean_dec(x_47); -x_50 = l_Lean_Meta_Grind_Solve_applyTac___closed__1; -x_12 = x_50; -x_13 = x_49; -goto block_22; -} -else -{ -lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_51 = lean_ctor_get(x_47, 1); -lean_inc(x_51); -lean_dec(x_47); -x_52 = lean_ctor_get(x_48, 0); -lean_inc(x_52); -lean_dec(x_48); -x_53 = l_Lean_Meta_Grind_Solve_pushGoals(x_52, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_51); +lean_dec(x_45); +x_50 = lean_ctor_get(x_46, 0); +lean_inc(x_50); +lean_dec(x_46); +x_51 = l_Lean_Meta_Grind_Solve_pushGoals(x_50, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_49); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1392,26 +1388,26 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_54 = lean_ctor_get(x_53, 1); -lean_inc(x_54); -lean_dec(x_53); -x_55 = l_Lean_Meta_Grind_Solve_applyTac___closed__2; -x_12 = x_55; -x_13 = x_54; +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +lean_dec(x_51); +x_53 = l_Lean_Meta_Grind_Solve_applyTac___closed__2; +x_12 = x_53; +x_13 = x_52; goto block_22; } } else { -lean_object* x_56; lean_object* x_57; -x_56 = lean_ctor_get(x_47, 0); -lean_inc(x_56); -x_57 = lean_ctor_get(x_47, 1); -lean_inc(x_57); -lean_dec(x_47); -x_23 = x_56; -x_24 = x_57; -goto block_46; +lean_object* x_54; lean_object* x_55; +x_54 = lean_ctor_get(x_45, 0); +lean_inc(x_54); +x_55 = lean_ctor_get(x_45, 1); +lean_inc(x_55); +lean_dec(x_45); +x_23 = x_54; +x_24 = x_55; +goto block_44; } block_22: { @@ -1465,7 +1461,7 @@ return x_21; } } } -block_46: +block_44: { uint8_t x_25; x_25 = l_Lean_Exception_isInterrupt(x_23); @@ -1499,15 +1495,13 @@ return x_29; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; x_30 = l_Lean_Exception_toMessageData(x_23); -x_31 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_30, x_7, x_8, x_9, x_10, x_24); -x_32 = lean_ctor_get(x_31, 0); +x_31 = l_Lean_Meta_Grind_reportIssue(x_30, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_24); +x_32 = lean_ctor_get(x_31, 1); lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 1); -lean_inc(x_33); lean_dec(x_31); -x_34 = l_Lean_Meta_Grind_Solve_pushFailure(x_32, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_33); +x_33 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_32); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1515,45 +1509,43 @@ lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); -x_35 = lean_ctor_get(x_34, 1); -lean_inc(x_35); -lean_dec(x_34); -x_36 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_36; -x_13 = x_35; +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +lean_dec(x_33); +x_35 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_35; +x_13 = x_34; goto block_22; } } else { -lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_37 = l_Lean_Exception_toMessageData(x_23); -x_38 = l_Lean_Meta_Grind_Goal_reportIssue(x_2, x_37, x_7, x_8, x_9, x_10, x_24); -x_39 = lean_ctor_get(x_38, 0); -lean_inc(x_39); -x_40 = lean_ctor_get(x_38, 1); +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +x_36 = l_Lean_Exception_toMessageData(x_23); +x_37 = l_Lean_Meta_Grind_reportIssue(x_36, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_24); +x_38 = lean_ctor_get(x_37, 1); +lean_inc(x_38); +lean_dec(x_37); +x_39 = l_Lean_Meta_Grind_Solve_pushFailure(x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_38); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_40 = lean_ctor_get(x_39, 1); lean_inc(x_40); -lean_dec(x_38); -x_41 = l_Lean_Meta_Grind_Solve_pushFailure(x_39, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_40); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_42 = lean_ctor_get(x_41, 1); -lean_inc(x_42); -lean_dec(x_41); -x_43 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; -x_12 = x_43; -x_13 = x_42; +lean_dec(x_39); +x_41 = l_Lean_Meta_Grind_Solve_stepGuard___closed__1; +x_12 = x_41; +x_13 = x_40; goto block_22; } } else { -lean_object* x_44; +lean_object* x_42; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1562,15 +1554,15 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_23); -lean_ctor_set(x_44, 1, x_24); -return x_44; +x_42 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_42, 0, x_23); +lean_ctor_set(x_42, 1, x_24); +return x_42; } } else { -lean_object* x_45; +lean_object* x_43; lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); @@ -1579,10 +1571,10 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_2); -x_45 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_45, 0, x_23); -lean_ctor_set(x_45, 1, x_24); -return x_45; +x_43 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_43, 0, x_23); +lean_ctor_set(x_43, 1, x_24); +return x_43; } } } @@ -1750,7 +1742,206 @@ lean_dec(x_1); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; uint8_t x_12; +x_11 = lean_st_ref_get(x_7, x_10); +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +lean_dec(x_13); +x_15 = lean_ctor_get(x_14, 7); +lean_inc(x_15); +lean_dec(x_14); +x_16 = l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(x_15, x_1); +x_17 = lean_box(x_16); +lean_ctor_set(x_11, 0, x_17); +return x_11; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; lean_object* x_23; lean_object* x_24; +x_18 = lean_ctor_get(x_11, 0); +x_19 = lean_ctor_get(x_11, 1); +lean_inc(x_19); +lean_inc(x_18); +lean_dec(x_11); +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +lean_dec(x_18); +x_21 = lean_ctor_get(x_20, 7); +lean_inc(x_21); +lean_dec(x_20); +x_22 = l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(x_21, x_1); +x_23 = lean_box(x_22); +x_24 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_24, 0, x_23); +lean_ctor_set(x_24, 1, x_19); +return x_24; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; uint8_t x_11; +x_10 = lean_st_mk_ref(x_1, x_9); +x_11 = !lean_is_exclusive(x_10); +if (x_11 == 0) +{ +return x_10; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; +x_12 = lean_ctor_get(x_10, 0); +x_13 = lean_ctor_get(x_10, 1); +lean_inc(x_13); +lean_inc(x_12); +lean_dec(x_10); +x_14 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_14, 0, x_12); +lean_ctor_set(x_14, 1, x_13); +return x_14; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +lean_inc(x_2); +x_11 = lean_apply_9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_11) == 0) +{ +lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_12 = lean_ctor_get(x_11, 1); +lean_inc(x_12); +lean_dec(x_11); +x_13 = lean_st_ref_get(x_2, x_12); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; uint8_t x_17; +x_15 = lean_ctor_get(x_13, 1); +x_16 = lean_st_ref_get(x_2, x_15); +lean_dec(x_2); +x_17 = !lean_is_exclusive(x_16); +if (x_17 == 0) +{ +lean_object* x_18; +x_18 = lean_ctor_get(x_16, 0); +lean_ctor_set(x_13, 1, x_18); +lean_ctor_set(x_16, 0, x_13); +return x_16; +} +else +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_16, 0); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_inc(x_19); +lean_dec(x_16); +lean_ctor_set(x_13, 1, x_19); +x_21 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_21, 0, x_13); +lean_ctor_set(x_21, 1, x_20); +return x_21; +} +} +else +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_22 = lean_ctor_get(x_13, 0); +x_23 = lean_ctor_get(x_13, 1); +lean_inc(x_23); +lean_inc(x_22); +lean_dec(x_13); +x_24 = lean_st_ref_get(x_2, x_23); +lean_dec(x_2); +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +x_26 = lean_ctor_get(x_24, 1); +lean_inc(x_26); +if (lean_is_exclusive(x_24)) { + lean_ctor_release(x_24, 0); + lean_ctor_release(x_24, 1); + x_27 = x_24; +} else { + lean_dec_ref(x_24); + x_27 = lean_box(0); +} +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_22); +lean_ctor_set(x_28, 1, x_25); +if (lean_is_scalar(x_27)) { + x_29 = lean_alloc_ctor(0, 2, 0); +} else { + x_29 = x_27; +} +lean_ctor_set(x_29, 0, x_28); +lean_ctor_set(x_29, 1, x_26); +return x_29; +} +} +else +{ +uint8_t x_30; +lean_dec(x_2); +x_30 = !lean_is_exclusive(x_11); +if (x_30 == 0) +{ +return x_11; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_11, 0); +x_32 = lean_ctor_get(x_11, 1); +lean_inc(x_32); +lean_inc(x_31); +lean_dec(x_11); +x_33 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set(x_33, 1, x_32); +return x_33; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +uint8_t x_10; +x_10 = !lean_is_exclusive(x_1); +if (x_10 == 0) +{ +lean_object* x_11; +x_11 = lean_ctor_get(x_1, 1); +lean_dec(x_11); +lean_ctor_set(x_1, 1, x_9); +return x_1; +} +else +{ +lean_object* x_12; lean_object* x_13; +x_12 = lean_ctor_get(x_1, 0); +lean_inc(x_12); +lean_dec(x_1); +x_13 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_13, 0, x_12); +lean_ctor_set(x_13, 1, x_9); +return x_13; +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; uint8_t x_14; @@ -1781,317 +1972,492 @@ return x_19; } } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1() { _start: { -lean_object* x_13; lean_object* x_14; -x_13 = l_Lean_Meta_Grind_Solve_trySplit___closed__1; +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3___boxed), 9, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_14 = lean_ctor_get(x_1, 0); +lean_inc(x_14); +x_15 = lean_alloc_closure((void*)(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1___boxed), 9, 1); +lean_closure_set(x_15, 0, x_1); +x_16 = lean_alloc_closure((void*)(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__2), 10, 1); +lean_closure_set(x_16, 0, x_2); +x_17 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_17, 0, x_15); +lean_closure_set(x_17, 1, x_16); +x_18 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1; +x_19 = lean_alloc_closure((void*)(l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg), 10, 2); +lean_closure_set(x_19, 0, x_17); +lean_closure_set(x_19, 1, x_18); +lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_1); -x_14 = l_Lean_Meta_Grind_Solve_applyTac(x_13, x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_14) == 0) +x_20 = l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(x_14, x_19, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_20) == 0) { -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_unbox(x_15); -lean_dec(x_15); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_14, 1); -lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_box(0); -x_19 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1(x_1, x_2, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_17); -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -return x_19; -} -else -{ -uint8_t x_20; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_20 = !lean_is_exclusive(x_14); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_14, 0); -lean_dec(x_21); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_14, 0, x_22); -return x_14; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_14, 1); +lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; uint8_t x_25; +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_ctor_get(x_21, 0); lean_inc(x_23); -lean_dec(x_14); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_2); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -return x_25; -} -} -} -else +x_24 = l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1(x_23, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_22); +lean_dec(x_23); +x_25 = lean_ctor_get_uint8(x_21, sizeof(void*)*25); +if (x_25 == 0) { -uint8_t x_26; +lean_object* x_26; uint8_t x_27; +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_unbox(x_26); +lean_dec(x_26); +if (x_27 == 0) +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_24, 1); +lean_inc(x_28); +lean_dec(x_24); +x_29 = lean_box(0); +x_30 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4(x_21, x_3, x_29, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_28); +lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_2); -lean_dec(x_1); -x_26 = !lean_is_exclusive(x_14); -if (x_26 == 0) -{ -return x_14; +return x_30; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_14, 0); -x_28 = lean_ctor_get(x_14, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_14); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +uint8_t x_31; +lean_dec(x_21); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_31 = !lean_is_exclusive(x_24); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; +x_32 = lean_ctor_get(x_24, 0); +lean_dec(x_32); +x_33 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_33, 0, x_3); +lean_ctor_set(x_24, 0, x_33); +return x_24; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_34 = lean_ctor_get(x_24, 1); +lean_inc(x_34); +lean_dec(x_24); +x_35 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_35, 0, x_3); +x_36 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_36, 0, x_35); +lean_ctor_set(x_36, 1, x_34); +return x_36; +} +} +} +else +{ +uint8_t x_37; +lean_dec(x_21); +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +x_37 = !lean_is_exclusive(x_24); +if (x_37 == 0) +{ +lean_object* x_38; lean_object* x_39; +x_38 = lean_ctor_get(x_24, 0); +lean_dec(x_38); +x_39 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_39, 0, x_3); +lean_ctor_set(x_24, 0, x_39); +return x_24; +} +else +{ +lean_object* x_40; lean_object* x_41; lean_object* x_42; +x_40 = lean_ctor_get(x_24, 1); +lean_inc(x_40); +lean_dec(x_24); +x_41 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_41, 0, x_3); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_41); +lean_ctor_set(x_42, 1, x_40); +return x_42; +} +} +} +else +{ +uint8_t x_43; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +x_43 = !lean_is_exclusive(x_20); +if (x_43 == 0) +{ +return x_20; +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; +x_44 = lean_ctor_get(x_20, 0); +x_45 = lean_ctor_get(x_20, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_20); +x_46 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_45); +return x_46; } } } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_13; lean_object* x_14; -x_13 = l_Lean_Meta_Grind_Solve_tryEmatch___closed__1; +lean_object* x_14; lean_object* x_15; +x_14 = l_Lean_Meta_Grind_Solve_trySplit___closed__1; +lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_5); lean_inc(x_1); -x_14 = l_Lean_Meta_Grind_Solve_applyTac(x_13, x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_14) == 0) +x_15 = l_Lean_Meta_Grind_Solve_applyTac(x_14, x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_unbox(x_15); +lean_object* x_16; uint8_t x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_unbox(x_16); +lean_dec(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_15, 1); +lean_inc(x_18); lean_dec(x_15); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_14, 1); -lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_box(0); -x_19 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2(x_1, x_2, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_17); -return x_19; +x_19 = lean_box(0); +x_20 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5(x_1, x_2, x_3, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_18); +return x_20; } else { -uint8_t x_20; +uint8_t x_21; +lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_20 = !lean_is_exclusive(x_14); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_14, 0); -lean_dec(x_21); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_14, 0, x_22); -return x_14; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_14, 1); -lean_inc(x_23); -lean_dec(x_14); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_2); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -return x_25; -} -} -} -else -{ -uint8_t x_26; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_26 = !lean_is_exclusive(x_14); -if (x_26 == 0) +x_21 = !lean_is_exclusive(x_15); +if (x_21 == 0) { -return x_14; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_15, 0); +lean_dec(x_22); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_3); +lean_ctor_set(x_15, 0, x_23); +return x_15; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_14, 0); -x_28 = lean_ctor_get(x_14, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_25, 0, x_3); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +return x_26; +} +} +} +else +{ +uint8_t x_27; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) +{ +return x_15; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_14); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_13; lean_object* x_14; -x_13 = l_Lean_Meta_Grind_Solve_tryAssertNext___closed__1; +lean_object* x_14; lean_object* x_15; +x_14 = l_Lean_Meta_Grind_Solve_tryEmatch___closed__1; +lean_inc(x_12); lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); -lean_inc(x_5); lean_inc(x_1); -x_14 = l_Lean_Meta_Grind_Solve_applyTac(x_13, x_1, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -if (lean_obj_tag(x_14) == 0) +x_15 = l_Lean_Meta_Grind_Solve_applyTac(x_14, x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_15) == 0) { -lean_object* x_15; uint8_t x_16; -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_unbox(x_15); +lean_object* x_16; uint8_t x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_unbox(x_16); +lean_dec(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_15, 1); +lean_inc(x_18); lean_dec(x_15); -if (x_16 == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_14, 1); -lean_inc(x_17); -lean_dec(x_14); -x_18 = lean_box(0); -x_19 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3(x_1, x_2, x_18, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_17); -return x_19; +x_19 = lean_box(0); +x_20 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6(x_1, x_2, x_3, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_18); +return x_20; } else { -uint8_t x_20; +uint8_t x_21; +lean_dec(x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_1); -x_20 = !lean_is_exclusive(x_14); -if (x_20 == 0) -{ -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_14, 0); -lean_dec(x_21); -x_22 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_22, 0, x_2); -lean_ctor_set(x_14, 0, x_22); -return x_14; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_14, 1); -lean_inc(x_23); -lean_dec(x_14); -x_24 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_24, 0, x_2); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -return x_25; -} -} -} -else -{ -uint8_t x_26; -lean_dec(x_11); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); lean_dec(x_2); lean_dec(x_1); -x_26 = !lean_is_exclusive(x_14); -if (x_26 == 0) +x_21 = !lean_is_exclusive(x_15); +if (x_21 == 0) { -return x_14; +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_15, 0); +lean_dec(x_22); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_3); +lean_ctor_set(x_15, 0, x_23); +return x_15; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_14, 0); -x_28 = lean_ctor_get(x_14, 1); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_25, 0, x_3); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +return x_26; +} +} +} +else +{ +uint8_t x_27; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) +{ +return x_15; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_14); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; } } } } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1() { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; lean_object* x_15; +x_14 = l_Lean_Meta_Grind_Solve_tryAssertNext___closed__1; +lean_inc(x_12); +lean_inc(x_11); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_1); +x_15 = l_Lean_Meta_Grind_Solve_applyTac(x_14, x_1, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; uint8_t x_17; +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_unbox(x_16); +lean_dec(x_16); +if (x_17 == 0) +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_15, 1); +lean_inc(x_18); +lean_dec(x_15); +x_19 = lean_box(0); +x_20 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7(x_1, x_2, x_3, x_19, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_18); +return x_20; +} +else +{ +uint8_t x_21; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_2); +lean_dec(x_1); +x_21 = !lean_is_exclusive(x_15); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_15, 0); +lean_dec(x_22); +x_23 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_23, 0, x_3); +lean_ctor_set(x_15, 0, x_23); +return x_15; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_15, 1); +lean_inc(x_24); +lean_dec(x_15); +x_25 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_25, 0, x_3); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +return x_26; +} +} +} +else +{ +uint8_t x_27; +lean_dec(x_12); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_15); +if (x_27 == 0) +{ +return x_15; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_15, 0); +x_29 = lean_ctor_get(x_15, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_15); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -2101,11 +2467,11 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2() { +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1; +x_1 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1; x_2 = lean_box(0); x_3 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2113,310 +2479,317 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3() { +static lean_object* _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2; +x_1 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2; x_2 = lean_alloc_ctor(0, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { -lean_object* x_12; lean_object* x_13; -x_12 = l_Lean_Meta_Grind_Solve_getNext_x3f(x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +lean_object* x_13; lean_object* x_14; +x_13 = l_Lean_Meta_Grind_Solve_getNext_x3f(x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) { -uint8_t x_14; +uint8_t x_15; +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_1); -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3; -lean_ctor_set(x_12, 0, x_16); -return x_12; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_12, 1); -lean_inc(x_17); -lean_dec(x_12); -x_18 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3; -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; -} -} -else -{ -uint8_t x_20; -x_20 = !lean_is_exclusive(x_13); -if (x_20 == 0) -{ -lean_object* x_21; uint8_t x_22; -x_21 = lean_ctor_get(x_13, 0); -x_22 = lean_ctor_get_uint8(x_21, sizeof(void*)*25); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -lean_free_object(x_13); -x_23 = lean_ctor_get(x_12, 1); -lean_inc(x_23); -lean_dec(x_12); -x_24 = lean_box(0); -x_25 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4(x_21, x_1, x_24, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_23); -return x_25; -} -else -{ -uint8_t x_26; -lean_dec(x_21); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_26 = !lean_is_exclusive(x_12); -if (x_26 == 0) -{ -lean_object* x_27; -x_27 = lean_ctor_get(x_12, 0); -lean_dec(x_27); -lean_ctor_set(x_13, 0, x_1); -return x_12; -} -else -{ -lean_object* x_28; lean_object* x_29; -x_28 = lean_ctor_get(x_12, 1); -lean_inc(x_28); -lean_dec(x_12); -lean_ctor_set(x_13, 0, x_1); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_13); -lean_ctor_set(x_29, 1, x_28); -return x_29; -} -} -} -else -{ -lean_object* x_30; uint8_t x_31; -x_30 = lean_ctor_get(x_13, 0); -lean_inc(x_30); -lean_dec(x_13); -x_31 = lean_ctor_get_uint8(x_30, sizeof(void*)*25); -if (x_31 == 0) -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_32 = lean_ctor_get(x_12, 1); -lean_inc(x_32); -lean_dec(x_12); -x_33 = lean_box(0); -x_34 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4(x_30, x_1, x_33, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_32); -return x_34; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -lean_dec(x_30); -lean_dec(x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -x_35 = lean_ctor_get(x_12, 1); -lean_inc(x_35); -if (lean_is_exclusive(x_12)) { - lean_ctor_release(x_12, 0); - lean_ctor_release(x_12, 1); - x_36 = x_12; -} else { - lean_dec_ref(x_12); - x_36 = lean_box(0); -} -x_37 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_37, 0, x_1); -if (lean_is_scalar(x_36)) { - x_38 = lean_alloc_ctor(0, 2, 0); -} else { - x_38 = x_36; -} -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_35); -return x_38; -} -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; lean_object* x_13; uint8_t x_14; lean_dec(x_2); -x_12 = lean_st_ref_get(x_3, x_11); -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -x_14 = lean_ctor_get_uint8(x_13, sizeof(void*)*2); -lean_dec(x_13); -if (x_14 == 0) +lean_dec(x_1); +x_15 = !lean_is_exclusive(x_13); +if (x_15 == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_15 = lean_ctor_get(x_12, 1); -lean_inc(x_15); -lean_dec(x_12); -x_16 = lean_box(0); +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_13, 0); +lean_dec(x_16); +x_17 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3; +lean_ctor_set(x_13, 0, x_17); +return x_13; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_13, 1); +lean_inc(x_18); +lean_dec(x_13); +x_19 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3; +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; +} +} +else +{ +uint8_t x_21; +x_21 = !lean_is_exclusive(x_14); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_14, 0); +x_23 = lean_ctor_get_uint8(x_22, sizeof(void*)*25); +if (x_23 == 0) +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_free_object(x_14); +x_24 = lean_ctor_get(x_13, 1); +lean_inc(x_24); +lean_dec(x_13); +x_25 = lean_box(0); +x_26 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8(x_22, x_1, x_2, x_25, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_24); +return x_26; +} +else +{ +uint8_t x_27; +lean_dec(x_22); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_27 = !lean_is_exclusive(x_13); +if (x_27 == 0) +{ +lean_object* x_28; +x_28 = lean_ctor_get(x_13, 0); +lean_dec(x_28); +lean_ctor_set(x_14, 0, x_2); +return x_13; +} +else +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_ctor_get(x_13, 1); +lean_inc(x_29); +lean_dec(x_13); +lean_ctor_set(x_14, 0, x_2); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_14); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +else +{ +lean_object* x_31; uint8_t x_32; +x_31 = lean_ctor_get(x_14, 0); +lean_inc(x_31); +lean_dec(x_14); +x_32 = lean_ctor_get_uint8(x_31, sizeof(void*)*25); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_13, 1); +lean_inc(x_33); +lean_dec(x_13); +x_34 = lean_box(0); +x_35 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8(x_31, x_1, x_2, x_34, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_33); +return x_35; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_dec(x_31); +lean_dec(x_11); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +x_36 = lean_ctor_get(x_13, 1); +lean_inc(x_36); +if (lean_is_exclusive(x_13)) { + lean_ctor_release(x_13, 0); + lean_ctor_release(x_13, 1); + x_37 = x_13; +} else { + lean_dec_ref(x_13); + x_37 = lean_box(0); +} +x_38 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_38, 0, x_2); +if (lean_is_scalar(x_37)) { + x_39 = lean_alloc_ctor(0, 2, 0); +} else { + x_39 = x_37; +} +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_36); +return x_39; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; lean_object* x_14; uint8_t x_15; +lean_dec(x_3); +x_13 = lean_st_ref_get(x_4, x_12); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +x_15 = lean_ctor_get_uint8(x_14, sizeof(void*)*2); +lean_dec(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_13, 1); +lean_inc(x_16); +lean_dec(x_13); +x_17 = lean_box(0); +lean_inc(x_11); lean_inc(x_10); lean_inc(x_9); lean_inc(x_8); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); -lean_inc(x_4); +lean_inc(x_2); lean_inc(x_1); -x_17 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); -if (lean_obj_tag(x_17) == 0) -{ -lean_object* x_18; -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); +x_18 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9(x_1, x_2, x_17, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_16); if (lean_obj_tag(x_18) == 0) { -uint8_t x_19; +lean_object* x_19; +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +if (lean_obj_tag(x_19) == 0) +{ +uint8_t x_20; +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_19 = !lean_is_exclusive(x_17); -if (x_19 == 0) +x_20 = !lean_is_exclusive(x_18); +if (x_20 == 0) { -lean_object* x_20; lean_object* x_21; -x_20 = lean_ctor_get(x_17, 0); -lean_dec(x_20); +lean_object* x_21; lean_object* x_22; x_21 = lean_ctor_get(x_18, 0); -lean_inc(x_21); -lean_dec(x_18); -lean_ctor_set(x_17, 0, x_21); -return x_17; +lean_dec(x_21); +x_22 = lean_ctor_get(x_19, 0); +lean_inc(x_22); +lean_dec(x_19); +lean_ctor_set(x_18, 0, x_22); +return x_18; } else { -lean_object* x_22; lean_object* x_23; lean_object* x_24; -x_22 = lean_ctor_get(x_17, 1); -lean_inc(x_22); -lean_dec(x_17); -x_23 = lean_ctor_get(x_18, 0); +lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_23 = lean_ctor_get(x_18, 1); lean_inc(x_23); lean_dec(x_18); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_22); -return x_24; +x_24 = lean_ctor_get(x_19, 0); +lean_inc(x_24); +lean_dec(x_19); +x_25 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_25, 0, x_24); +lean_ctor_set(x_25, 1, x_23); +return x_25; } } else { -lean_object* x_25; lean_object* x_26; -x_25 = lean_ctor_get(x_17, 1); -lean_inc(x_25); -lean_dec(x_17); -x_26 = lean_ctor_get(x_18, 0); +lean_object* x_26; lean_object* x_27; +x_26 = lean_ctor_get(x_18, 1); lean_inc(x_26); lean_dec(x_18); -x_2 = x_26; -x_11 = x_25; +x_27 = lean_ctor_get(x_19, 0); +lean_inc(x_27); +lean_dec(x_19); +x_3 = x_27; +x_12 = x_26; goto _start; } } else { -uint8_t x_28; +uint8_t x_29; +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_28 = !lean_is_exclusive(x_17); -if (x_28 == 0) +x_29 = !lean_is_exclusive(x_18); +if (x_29 == 0) { -return x_17; +return x_18; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; -x_29 = lean_ctor_get(x_17, 0); -x_30 = lean_ctor_get(x_17, 1); +lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_30 = lean_ctor_get(x_18, 0); +x_31 = lean_ctor_get(x_18, 1); +lean_inc(x_31); lean_inc(x_30); -lean_inc(x_29); -lean_dec(x_17); -x_31 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_31, 0, x_29); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_dec(x_18); +x_32 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_32, 0, x_30); +lean_ctor_set(x_32, 1, x_31); +return x_32; } } } else { -uint8_t x_32; +uint8_t x_33; +lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); -lean_dec(x_4); +lean_dec(x_2); lean_dec(x_1); -x_32 = !lean_is_exclusive(x_12); -if (x_32 == 0) +x_33 = !lean_is_exclusive(x_13); +if (x_33 == 0) { -lean_object* x_33; lean_object* x_34; -x_33 = lean_ctor_get(x_12, 0); -lean_dec(x_33); -x_34 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2; -lean_ctor_set(x_12, 0, x_34); -return x_12; +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_13, 0); +lean_dec(x_34); +x_35 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2; +lean_ctor_set(x_13, 0, x_35); +return x_13; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_12, 1); -lean_inc(x_35); -lean_dec(x_12); -x_36 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2; -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_35); -return x_37; +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_13, 1); +lean_inc(x_36); +lean_dec(x_13); +x_37 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2; +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_36); +return x_38; } } } @@ -2433,106 +2806,153 @@ lean_ctor_set(x_3, 1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { -lean_object* x_10; lean_object* x_11; -x_10 = l_Lean_Meta_Grind_Solve_main___closed__1; -x_11 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1(x_10, x_10, x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -if (lean_obj_tag(x_11) == 0) +lean_object* x_11; lean_object* x_12; +x_11 = l_Lean_Meta_Grind_Solve_main___closed__1; +x_12 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2(x_1, x_11, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +if (lean_obj_tag(x_12) == 0) { -lean_object* x_12; lean_object* x_13; -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); +lean_object* x_13; lean_object* x_14; x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +lean_dec(x_13); +if (lean_obj_tag(x_14) == 0) +{ +uint8_t x_15; +x_15 = !lean_is_exclusive(x_12); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; +x_16 = lean_ctor_get(x_12, 0); +lean_dec(x_16); +x_17 = lean_box(0); +lean_ctor_set(x_12, 0, x_17); +return x_12; +} +else +{ +lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_18 = lean_ctor_get(x_12, 1); +lean_inc(x_18); lean_dec(x_12); -if (lean_obj_tag(x_13) == 0) -{ -uint8_t x_14; -x_14 = !lean_is_exclusive(x_11); -if (x_14 == 0) -{ -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_11, 0); -lean_dec(x_15); -x_16 = lean_box(0); -lean_ctor_set(x_11, 0, x_16); -return x_11; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_11, 1); -lean_inc(x_17); -lean_dec(x_11); -x_18 = lean_box(0); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; +x_19 = lean_box(0); +x_20 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_20, 0, x_19); +lean_ctor_set(x_20, 1, x_18); +return x_20; } } else { -uint8_t x_20; -x_20 = !lean_is_exclusive(x_11); -if (x_20 == 0) +uint8_t x_21; +x_21 = !lean_is_exclusive(x_12); +if (x_21 == 0) { -lean_object* x_21; lean_object* x_22; -x_21 = lean_ctor_get(x_11, 0); -lean_dec(x_21); -x_22 = lean_ctor_get(x_13, 0); -lean_inc(x_22); -lean_dec(x_13); -lean_ctor_set(x_11, 0, x_22); -return x_11; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; -x_23 = lean_ctor_get(x_11, 1); +lean_object* x_22; lean_object* x_23; +x_22 = lean_ctor_get(x_12, 0); +lean_dec(x_22); +x_23 = lean_ctor_get(x_14, 0); lean_inc(x_23); -lean_dec(x_11); -x_24 = lean_ctor_get(x_13, 0); +lean_dec(x_14); +lean_ctor_set(x_12, 0, x_23); +return x_12; +} +else +{ +lean_object* x_24; lean_object* x_25; lean_object* x_26; +x_24 = lean_ctor_get(x_12, 1); lean_inc(x_24); -lean_dec(x_13); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -return x_25; +lean_dec(x_12); +x_25 = lean_ctor_get(x_14, 0); +lean_inc(x_25); +lean_dec(x_14); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_24); +return x_26; } } } else { -uint8_t x_26; -x_26 = !lean_is_exclusive(x_11); -if (x_26 == 0) +uint8_t x_27; +x_27 = !lean_is_exclusive(x_12); +if (x_27 == 0) { +return x_12; +} +else +{ +lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_28 = lean_ctor_get(x_12, 0); +x_29 = lean_ctor_get(x_12, 1); +lean_inc(x_29); +lean_inc(x_28); +lean_dec(x_12); +x_30 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_29); +return x_30; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_Solve_main___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); return x_11; } -else +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: { -lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_27 = lean_ctor_get(x_11, 0); -x_28 = lean_ctor_get(x_11, 1); -lean_inc(x_28); -lean_inc(x_27); -lean_dec(x_11); -x_29 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_29, 0, x_27); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_object* x_10; +x_10 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_10; } } +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { _start: { lean_object* x_13; -x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -2545,385 +2965,238 @@ lean_dec(x_3); return x_13; } } -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { _start: { -lean_object* x_13; -x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_4); -lean_dec(x_3); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_4); -lean_dec(x_3); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { -_start: -{ -lean_object* x_13; -x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -lean_dec(x_4); -lean_dec(x_3); -return x_13; -} -} -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; -x_12 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); -lean_dec(x_2); -return x_12; -} -} -LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { -_start: -{ -lean_object* x_12; -x_12 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); -lean_dec(x_3); -return x_12; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; -x_10 = l_Lean_Meta_Grind_Solve_main(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); -lean_dec(x_1); -return x_10; -} -} -static lean_object* _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("this goal was not fully processed due to previous failures, threshold: `(failures := ", 85, 85); -return x_1; -} -} -static lean_object* _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -static lean_object* _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked(")`", 2, 2); -return x_1; -} -} -static lean_object* _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3; -x_2 = l_Lean_stringToMessageData(x_1); -return x_2; -} -} -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -if (lean_obj_tag(x_1) == 0) -{ -lean_object* x_11; lean_object* x_12; -x_11 = l_List_reverse___rarg(x_2); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_10); -return x_12; -} -else -{ -uint8_t x_13; -x_13 = !lean_is_exclusive(x_1); -if (x_13 == 0) -{ -lean_object* x_14; lean_object* x_15; lean_object* x_16; uint8_t x_17; -x_14 = lean_ctor_get(x_1, 0); -x_15 = lean_ctor_get(x_1, 1); -x_16 = l_Lean_Meta_Grind_getConfig___rarg(x_4, x_5, x_6, x_7, x_8, x_9, x_10); -x_17 = !lean_is_exclusive(x_16); -if (x_17 == 0) -{ -lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_18 = lean_ctor_get(x_16, 0); -x_19 = lean_ctor_get(x_16, 1); -x_20 = lean_ctor_get(x_18, 4); -lean_inc(x_20); -lean_dec(x_18); -x_21 = l___private_Init_Data_Repr_0__Nat_reprFast(x_20); -x_22 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_22, 0, x_21); -x_23 = l_Lean_MessageData_ofFormat(x_22); -x_24 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2; -lean_ctor_set_tag(x_16, 7); -lean_ctor_set(x_16, 1, x_23); -lean_ctor_set(x_16, 0, x_24); -x_25 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4; -x_26 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_26, 0, x_16); -lean_ctor_set(x_26, 1, x_25); -x_27 = l_Lean_Meta_Grind_Goal_reportIssue(x_14, x_26, x_6, x_7, x_8, x_9, x_19); -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); -lean_inc(x_29); -lean_dec(x_27); -lean_ctor_set(x_1, 1, x_2); -lean_ctor_set(x_1, 0, x_28); -{ -lean_object* _tmp_0 = x_15; -lean_object* _tmp_1 = x_1; -lean_object* _tmp_9 = x_29; -x_1 = _tmp_0; -x_2 = _tmp_1; -x_10 = _tmp_9; -} -goto _start; -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_31 = lean_ctor_get(x_16, 0); -x_32 = lean_ctor_get(x_16, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_16); -x_33 = lean_ctor_get(x_31, 4); -lean_inc(x_33); -lean_dec(x_31); -x_34 = l___private_Init_Data_Repr_0__Nat_reprFast(x_33); -x_35 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_35, 0, x_34); -x_36 = l_Lean_MessageData_ofFormat(x_35); -x_37 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2; -x_38 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_36); -x_39 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4; -x_40 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_40, 0, x_38); -lean_ctor_set(x_40, 1, x_39); -x_41 = l_Lean_Meta_Grind_Goal_reportIssue(x_14, x_40, x_6, x_7, x_8, x_9, x_32); -x_42 = lean_ctor_get(x_41, 0); -lean_inc(x_42); -x_43 = lean_ctor_get(x_41, 1); -lean_inc(x_43); -lean_dec(x_41); -lean_ctor_set(x_1, 1, x_2); -lean_ctor_set(x_1, 0, x_42); -{ -lean_object* _tmp_0 = x_15; -lean_object* _tmp_1 = x_1; -lean_object* _tmp_9 = x_43; -x_1 = _tmp_0; -x_2 = _tmp_1; -x_10 = _tmp_9; -} -goto _start; -} -} -else -{ -lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; -x_45 = lean_ctor_get(x_1, 0); -x_46 = lean_ctor_get(x_1, 1); -lean_inc(x_46); -lean_inc(x_45); -lean_dec(x_1); -x_47 = l_Lean_Meta_Grind_getConfig___rarg(x_4, x_5, x_6, x_7, x_8, x_9, x_10); -x_48 = lean_ctor_get(x_47, 0); -lean_inc(x_48); -x_49 = lean_ctor_get(x_47, 1); -lean_inc(x_49); -if (lean_is_exclusive(x_47)) { - lean_ctor_release(x_47, 0); - lean_ctor_release(x_47, 1); - x_50 = x_47; -} else { - lean_dec_ref(x_47); - x_50 = lean_box(0); -} -x_51 = lean_ctor_get(x_48, 4); -lean_inc(x_51); -lean_dec(x_48); -x_52 = l___private_Init_Data_Repr_0__Nat_reprFast(x_51); -x_53 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_53, 0, x_52); -x_54 = l_Lean_MessageData_ofFormat(x_53); -x_55 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2; -if (lean_is_scalar(x_50)) { - x_56 = lean_alloc_ctor(7, 2, 0); -} else { - x_56 = x_50; - lean_ctor_set_tag(x_56, 7); -} -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_54); -x_57 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4; -x_58 = lean_alloc_ctor(7, 2, 0); -lean_ctor_set(x_58, 0, x_56); -lean_ctor_set(x_58, 1, x_57); -x_59 = l_Lean_Meta_Grind_Goal_reportIssue(x_45, x_58, x_6, x_7, x_8, x_9, x_49); -x_60 = lean_ctor_get(x_59, 0); -lean_inc(x_60); -x_61 = lean_ctor_get(x_59, 1); -lean_inc(x_61); -lean_dec(x_59); -x_62 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_62, 0, x_60); -lean_ctor_set(x_62, 1, x_2); -x_1 = x_46; -x_2 = x_62; -x_10 = x_61; -goto _start; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_solve(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { -_start: -{ -lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_10 = lean_box(0); -x_11 = 0; -x_12 = lean_alloc_ctor(0, 2, 1); -lean_ctor_set(x_12, 0, x_1); -lean_ctor_set(x_12, 1, x_10); -lean_ctor_set_uint8(x_12, sizeof(void*)*2, x_11); -x_13 = lean_st_mk_ref(x_12, x_9); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); -lean_dec(x_13); -lean_inc(x_8); -lean_inc(x_7); -lean_inc(x_6); -lean_inc(x_5); -lean_inc(x_4); -lean_inc(x_3); -lean_inc(x_2); -x_16 = l_Lean_Meta_Grind_Solve_main(x_14, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_15); -if (lean_obj_tag(x_16) == 0) -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_17 = lean_ctor_get(x_16, 1); -lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_st_ref_get(x_14, x_17); -lean_dec(x_14); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -x_21 = lean_ctor_get(x_19, 0); -lean_inc(x_21); -x_22 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1(x_21, x_10, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_20); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +lean_object* x_14; +x_14 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_5); lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -x_24 = lean_ctor_get(x_22, 0); -x_25 = lean_ctor_get(x_19, 1); -lean_inc(x_25); -lean_dec(x_19); -x_26 = l_List_reverse___rarg(x_25); -x_27 = l_List_appendTR___rarg(x_26, x_24); -lean_ctor_set(x_22, 0, x_27); -return x_22; -} -else -{ -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_28 = lean_ctor_get(x_22, 0); -x_29 = lean_ctor_get(x_22, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_22); -x_30 = lean_ctor_get(x_19, 1); -lean_inc(x_30); -lean_dec(x_19); -x_31 = l_List_reverse___rarg(x_30); -x_32 = l_List_appendTR___rarg(x_31, x_28); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_29); -return x_33; +return x_14; } } -else +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: { -uint8_t x_34; -lean_dec(x_14); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); +lean_object* x_14; +x_14 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); lean_dec(x_5); lean_dec(x_4); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_5); +lean_dec(x_4); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12, lean_object* x_13) { +_start: +{ +lean_object* x_14; +x_14 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__8(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12, x_13); +lean_dec(x_5); +lean_dec(x_4); +return x_14; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: +{ +lean_object* x_13; +x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_4); lean_dec(x_3); -lean_dec(x_2); -x_34 = !lean_is_exclusive(x_16); -if (x_34 == 0) +return x_13; +} +} +LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11, lean_object* x_12) { +_start: { -return x_16; -} -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_16, 0); -x_36 = lean_ctor_get(x_16, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_16); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +lean_object* x_13; +x_13 = l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +lean_dec(x_4); +return x_13; } } -} -} -LEAN_EXPORT lean_object* l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Solve_main___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); +x_11 = l_Lean_Meta_Grind_Solve_main(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_2); return x_11; } } +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_solve(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; uint8_t x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; +x_11 = lean_box(0); +x_12 = 0; +x_13 = lean_alloc_ctor(0, 2, 1); +lean_ctor_set(x_13, 0, x_1); +lean_ctor_set(x_13, 1, x_11); +lean_ctor_set_uint8(x_13, sizeof(void*)*2, x_12); +x_14 = lean_st_mk_ref(x_13, x_10); +x_15 = !lean_is_exclusive(x_14); +if (x_15 == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_16 = lean_ctor_get(x_14, 0); +x_17 = lean_ctor_get(x_14, 1); +x_18 = l_Lean_Meta_Grind_Solve_main(x_2, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_17); +if (lean_obj_tag(x_18) == 0) +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_18, 1); +lean_inc(x_19); +lean_dec(x_18); +x_20 = lean_st_ref_get(x_16, x_19); +lean_dec(x_16); +x_21 = !lean_is_exclusive(x_20); +if (x_21 == 0) +{ +lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_22 = lean_ctor_get(x_20, 0); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +x_24 = l_List_reverse___rarg(x_23); +x_25 = lean_ctor_get(x_22, 0); +lean_inc(x_25); +lean_dec(x_22); +lean_ctor_set(x_14, 1, x_25); +lean_ctor_set(x_14, 0, x_24); +lean_ctor_set(x_20, 0, x_14); +return x_20; +} +else +{ +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_26 = lean_ctor_get(x_20, 0); +x_27 = lean_ctor_get(x_20, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_20); +x_28 = lean_ctor_get(x_26, 1); +lean_inc(x_28); +x_29 = l_List_reverse___rarg(x_28); +x_30 = lean_ctor_get(x_26, 0); +lean_inc(x_30); +lean_dec(x_26); +lean_ctor_set(x_14, 1, x_30); +lean_ctor_set(x_14, 0, x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_14); +lean_ctor_set(x_31, 1, x_27); +return x_31; +} +} +else +{ +uint8_t x_32; +lean_free_object(x_14); +lean_dec(x_16); +x_32 = !lean_is_exclusive(x_18); +if (x_32 == 0) +{ +return x_18; +} +else +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_33 = lean_ctor_get(x_18, 0); +x_34 = lean_ctor_get(x_18, 1); +lean_inc(x_34); +lean_inc(x_33); +lean_dec(x_18); +x_35 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_35, 0, x_33); +lean_ctor_set(x_35, 1, x_34); +return x_35; +} +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_14, 0); +x_37 = lean_ctor_get(x_14, 1); +lean_inc(x_37); +lean_inc(x_36); +lean_dec(x_14); +x_38 = l_Lean_Meta_Grind_Solve_main(x_2, x_36, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_37); +if (lean_obj_tag(x_38) == 0) +{ +lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +lean_dec(x_38); +x_40 = lean_st_ref_get(x_36, x_39); +lean_dec(x_36); +x_41 = lean_ctor_get(x_40, 0); +lean_inc(x_41); +x_42 = lean_ctor_get(x_40, 1); +lean_inc(x_42); +if (lean_is_exclusive(x_40)) { + lean_ctor_release(x_40, 0); + lean_ctor_release(x_40, 1); + x_43 = x_40; +} else { + lean_dec_ref(x_40); + x_43 = lean_box(0); +} +x_44 = lean_ctor_get(x_41, 1); +lean_inc(x_44); +x_45 = l_List_reverse___rarg(x_44); +x_46 = lean_ctor_get(x_41, 0); +lean_inc(x_46); +lean_dec(x_41); +x_47 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_47, 0, x_45); +lean_ctor_set(x_47, 1, x_46); +if (lean_is_scalar(x_43)) { + x_48 = lean_alloc_ctor(0, 2, 0); +} else { + x_48 = x_43; +} +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set(x_48, 1, x_42); +return x_48; +} +else +{ +lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +lean_dec(x_36); +x_49 = lean_ctor_get(x_38, 0); +lean_inc(x_49); +x_50 = lean_ctor_get(x_38, 1); +lean_inc(x_50); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_51 = x_38; +} else { + lean_dec_ref(x_38); + x_51 = lean_box(0); +} +if (lean_is_scalar(x_51)) { + x_52 = lean_alloc_ctor(1, 2, 0); +} else { + x_52 = x_51; +} +lean_ctor_set(x_52, 0, x_49); +lean_ctor_set(x_52, 1, x_50); +return x_52; +} +} +} +} lean_object* initialize_Lean_Meta_Tactic_Grind_Combinators(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Split(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_EMatch(uint8_t builtin, lean_object*); @@ -2953,22 +3226,16 @@ l_Lean_Meta_Grind_Solve_tryEmatch___closed__1 = _init_l_Lean_Meta_Grind_Solve_tr lean_mark_persistent(l_Lean_Meta_Grind_Solve_tryEmatch___closed__1); l_Lean_Meta_Grind_Solve_trySplit___closed__1 = _init_l_Lean_Meta_Grind_Solve_trySplit___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_Solve_trySplit___closed__1); -l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__1); -l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__2); -l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3(); -lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__1___lambda__5___closed__3); +l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__5___closed__1); +l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__1); +l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__2); +l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3 = _init_l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3(); +lean_mark_persistent(l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_Solve_main___spec__2___lambda__9___closed__3); l_Lean_Meta_Grind_Solve_main___closed__1 = _init_l_Lean_Meta_Grind_Solve_main___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_Solve_main___closed__1); -l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1 = _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1(); -lean_mark_persistent(l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__1); -l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2 = _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2(); -lean_mark_persistent(l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__2); -l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3 = _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3(); -lean_mark_persistent(l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__3); -l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4 = _init_l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4(); -lean_mark_persistent(l_List_mapM_loop___at_Lean_Meta_Grind_solve___spec__1___closed__4); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Split.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Split.c index 2231564733..e122b1e23b 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Split.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Split.c @@ -21,23 +21,28 @@ static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_ lean_object* l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_introNewHyp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3; static lean_object* l_Lean_Meta_Grind_instBEqCaseSplitStatus___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_splitNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1; uint8_t l_Lean_Expr_isApp(lean_object*); uint8_t l_Lean_Meta_Grind_isCongruent(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux_traverse___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__4(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1; static lean_object* l_Lean_Meta_Grind_splitNext___lambda__4___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___spec__1___closed__5; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__3___closed__3; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqCaseSplitStatus; LEAN_EXPORT lean_object* l_List_mapTR_loop___at_Lean_Meta_Grind_splitNext___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -51,7 +56,9 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_G static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkDisjunctStatus___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__3___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2; lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3; lean_object* l_List_appendTR___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); @@ -68,7 +75,7 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_G LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__3; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkIteCondStatus___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofFormat(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__2; @@ -82,21 +89,22 @@ lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); lean_object* lean_st_ref_get(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_casesMatch(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_splitNext___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_mk_ref(lean_object*, lean_object*); lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5; static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___spec__1___closed__2; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__3___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_beqCaseSplitStatus____x40_Lean_Meta_Tactic_Grind_Split___hyg_34____boxed(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__6; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6; +lean_object* l_Lean_Meta_whnfD(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_List_lengthTRAux___rarg(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__4; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_getGeneration(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__5; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__2(lean_object*, lean_object*, lean_object*); @@ -106,30 +114,31 @@ lean_object* l_Lean_Meta_Grind_updateLastTag(lean_object*, lean_object*, lean_ob extern lean_object* l_Lean_Meta_instMonadMetaM; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedCaseSplitStatus; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__11; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__3; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__10; lean_object* l_Lean_MessageData_ofExpr(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_isResolvedCaseSplit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__8; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlM___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f___closed__1; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; lean_object* l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlM___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__1(lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkConjunctStatus___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkIffStatus(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7; lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_mkEqFalseProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5; lean_object* l_Lean_Meta_Grind_intros(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -137,7 +146,7 @@ lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__4; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); lean_object* lean_panic_fn(lean_object*, lean_object*); lean_object* l_Lean_Expr_getAppFn(lean_object*); @@ -146,7 +155,6 @@ static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_ lean_object* l_Lean_Meta_mkOfEqTrueCore(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__1; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1; lean_object* l_Lean_Meta_instantiateMVarsIfMVarApp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__5; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -154,6 +162,7 @@ lean_object* l_List_reverse___rarg(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkEM(lean_object*); lean_object* l_Lean_Meta_Grind_isEqFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_getConstInfo___at_Lean_Meta_Grind_propagateCtor___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f___lambda__2___closed__1; size_t lean_usize_add(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_splitNext___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -168,13 +177,13 @@ lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_isEqTrue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isInductivePredicate_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__1___closed__2; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7; lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_selectNextSplit_x3f_go___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8; static lean_object* l_Lean_Meta_Grind_splitNext___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_splitNext___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_mkCasesMajor___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_cases(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -185,11 +194,12 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_G lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_splitNext___lambda__4___closed__2; static lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__6; +uint8_t l_Lean_Expr_isFVar(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlMAux_traverse___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_splitNext___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_splitNext___closed__1; lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Grind_isInconsistent(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ReaderT_instMonad___rarg(lean_object*); static lean_object* l_panic___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___spec__1___closed__3; @@ -2264,7 +2274,7 @@ lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); -x_14 = lean_ctor_get(x_12, 20); +x_14 = lean_ctor_get(x_12, 21); lean_inc(x_14); lean_dec(x_12); x_15 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_isCongrToPrevSplit___lambda__1___boxed), 13, 1); @@ -2409,7 +2419,7 @@ static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_ _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Lean.Meta.Tactic.Grind.Split", 28, 28); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__1___boxed), 10, 0); return x_1; } } @@ -2417,40 +2427,354 @@ static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_ _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("_private.Lean.Meta.Tactic.Grind.Split.0.Lean.Meta.Grind.checkCaseSplitStatus", 76, 76); +x_1 = lean_mk_string_unchecked("cannot perform case-split on {e}, unexpected type{indentExpr type}", 66, 66); return x_1; } } static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__3() { _start: { +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__2; +x_2 = lean_alloc_ctor(3, 1, 0); +lean_ctor_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__3; +x_2 = l_Lean_MessageData_ofFormat(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; uint8_t x_13; +x_12 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__1; +x_13 = l_Lean_Expr_isFVar(x_1); +if (x_13 == 0) +{ +lean_object* x_14; lean_object* x_15; +lean_dec(x_1); +x_14 = lean_box(0); +x_15 = lean_apply_10(x_12, x_14, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +return x_15; +} +else +{ +lean_object* x_16; +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_16 = lean_infer_type(x_1, x_7, x_8, x_9, x_10, x_11); +if (lean_obj_tag(x_16) == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +lean_inc(x_10); +lean_inc(x_9); +lean_inc(x_8); +lean_inc(x_7); +x_19 = l_Lean_Meta_whnfD(x_17, x_7, x_8, x_9, x_10, x_18); +if (lean_obj_tag(x_19) == 0) +{ +lean_object* x_20; lean_object* x_21; lean_object* x_22; +x_20 = lean_ctor_get(x_19, 0); +lean_inc(x_20); +x_21 = lean_ctor_get(x_19, 1); +lean_inc(x_21); +lean_dec(x_19); +x_22 = l_Lean_Expr_getAppFn(x_20); +lean_dec(x_20); +if (lean_obj_tag(x_22) == 4) +{ +lean_object* x_23; lean_object* x_24; +x_23 = lean_ctor_get(x_22, 0); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l_Lean_getConstInfo___at_Lean_Meta_Grind_propagateCtor___spec__1(x_23, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_21); +lean_dec(x_3); +if (lean_obj_tag(x_24) == 0) +{ +lean_object* x_25; +x_25 = lean_ctor_get(x_24, 0); +lean_inc(x_25); +if (lean_obj_tag(x_25) == 5) +{ +uint8_t x_26; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_26 = !lean_is_exclusive(x_24); +if (x_26 == 0) +{ +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; lean_object* x_33; +x_27 = lean_ctor_get(x_24, 0); +lean_dec(x_27); +x_28 = lean_ctor_get(x_25, 0); +lean_inc(x_28); +lean_dec(x_25); +x_29 = lean_ctor_get(x_28, 4); +lean_inc(x_29); +x_30 = lean_unsigned_to_nat(0u); +x_31 = l_List_lengthTRAux___rarg(x_29, x_30); +lean_dec(x_29); +x_32 = lean_ctor_get_uint8(x_28, sizeof(void*)*6); +lean_dec(x_28); +x_33 = lean_alloc_ctor(2, 1, 1); +lean_ctor_set(x_33, 0, x_31); +lean_ctor_set_uint8(x_33, sizeof(void*)*1, x_32); +lean_ctor_set(x_24, 0, x_33); +return x_24; +} +else +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; uint8_t x_39; lean_object* x_40; lean_object* x_41; +x_34 = lean_ctor_get(x_24, 1); +lean_inc(x_34); +lean_dec(x_24); +x_35 = lean_ctor_get(x_25, 0); +lean_inc(x_35); +lean_dec(x_25); +x_36 = lean_ctor_get(x_35, 4); +lean_inc(x_36); +x_37 = lean_unsigned_to_nat(0u); +x_38 = l_List_lengthTRAux___rarg(x_36, x_37); +lean_dec(x_36); +x_39 = lean_ctor_get_uint8(x_35, sizeof(void*)*6); +lean_dec(x_35); +x_40 = lean_alloc_ctor(2, 1, 1); +lean_ctor_set(x_40, 0, x_38); +lean_ctor_set_uint8(x_40, sizeof(void*)*1, x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_34); +return x_41; +} +} +else +{ +lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +lean_dec(x_25); +x_42 = lean_ctor_get(x_24, 1); +lean_inc(x_42); +lean_dec(x_24); +x_43 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4; +x_44 = l_Lean_Meta_Grind_reportIssue(x_43, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_42); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_45 = !lean_is_exclusive(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; +x_46 = lean_ctor_get(x_44, 0); +lean_dec(x_46); +x_47 = lean_box(0); +lean_ctor_set(x_44, 0, x_47); +return x_44; +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); +lean_dec(x_44); +x_49 = lean_box(0); +x_50 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_50, 0, x_49); +lean_ctor_set(x_50, 1, x_48); +return x_50; +} +} +} +else +{ +uint8_t x_51; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_51 = !lean_is_exclusive(x_24); +if (x_51 == 0) +{ +return x_24; +} +else +{ +lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_52 = lean_ctor_get(x_24, 0); +x_53 = lean_ctor_get(x_24, 1); +lean_inc(x_53); +lean_inc(x_52); +lean_dec(x_24); +x_54 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_54, 0, x_52); +lean_ctor_set(x_54, 1, x_53); +return x_54; +} +} +} +else +{ +lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_22); +lean_dec(x_3); +x_55 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4; +x_56 = l_Lean_Meta_Grind_reportIssue(x_55, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_21); +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +x_57 = !lean_is_exclusive(x_56); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = lean_ctor_get(x_56, 0); +lean_dec(x_58); +x_59 = lean_box(0); +lean_ctor_set(x_56, 0, x_59); +return x_56; +} +else +{ +lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_60 = lean_ctor_get(x_56, 1); +lean_inc(x_60); +lean_dec(x_56); +x_61 = lean_box(0); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_61); +lean_ctor_set(x_62, 1, x_60); +return x_62; +} +} +} +else +{ +uint8_t x_63; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_63 = !lean_is_exclusive(x_19); +if (x_63 == 0) +{ +return x_19; +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_19, 0); +x_65 = lean_ctor_get(x_19, 1); +lean_inc(x_65); +lean_inc(x_64); +lean_dec(x_19); +x_66 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_66, 0, x_64); +lean_ctor_set(x_66, 1, x_65); +return x_66; +} +} +} +else +{ +uint8_t x_67; +lean_dec(x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +x_67 = !lean_is_exclusive(x_16); +if (x_67 == 0) +{ +return x_16; +} +else +{ +lean_object* x_68; lean_object* x_69; lean_object* x_70; +x_68 = lean_ctor_get(x_16, 0); +x_69 = lean_ctor_get(x_16, 1); +lean_inc(x_69); +lean_inc(x_68); +lean_dec(x_16); +x_70 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_70, 0, x_68); +lean_ctor_set(x_70, 1, x_69); +return x_70; +} +} +} +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Lean.Meta.Tactic.Grind.Split", 28, 28); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("_private.Lean.Meta.Tactic.Grind.Split.0.Lean.Meta.Grind.checkCaseSplitStatus", 76, 76); +return x_1; +} +} +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3() { +_start: +{ lean_object* x_1; x_1 = lean_mk_string_unchecked("unreachable code has been reached", 33, 33); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__1; -x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__2; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1; +x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2; x_3 = lean_unsigned_to_nat(100u); x_4 = lean_unsigned_to_nat(43u); -x_5 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__3; +x_5 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__1___boxed), 10, 0); -return x_1; -} -} -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; @@ -2468,28 +2792,30 @@ lean_inc(x_7); x_14 = l_Lean_Meta_isInductivePredicate_x3f(x_13, x_7, x_8, x_9, x_10, x_11); if (lean_obj_tag(x_14) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; +lean_object* x_15; x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); +if (lean_obj_tag(x_15) == 0) +{ +lean_object* x_16; lean_object* x_17; lean_object* x_18; x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); lean_dec(x_14); -x_17 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5; -if (lean_obj_tag(x_15) == 0) -{ -lean_object* x_18; lean_object* x_19; -lean_dec(x_1); -x_18 = lean_box(0); -x_19 = lean_apply_10(x_17, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_16); -return x_19; +x_17 = lean_box(0); +x_18 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(x_1, x_17, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_16); +return x_18; } else { -lean_object* x_20; lean_object* x_21; +lean_object* x_19; lean_object* x_20; lean_object* x_21; +x_19 = lean_ctor_get(x_14, 1); +lean_inc(x_19); +lean_dec(x_14); x_20 = lean_ctor_get(x_15, 0); lean_inc(x_20); lean_dec(x_15); -x_21 = l_Lean_Meta_Grind_isEqTrue(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_16); +lean_inc(x_1); +x_21 = l_Lean_Meta_Grind_isEqTrue(x_1, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); if (lean_obj_tag(x_21) == 0) { lean_object* x_22; uint8_t x_23; @@ -2505,7 +2831,7 @@ x_24 = lean_ctor_get(x_21, 1); lean_inc(x_24); lean_dec(x_21); x_25 = lean_box(0); -x_26 = lean_apply_10(x_17, x_25, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_24); +x_26 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(x_1, x_25, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_24); return x_26; } else @@ -2519,6 +2845,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); +lean_dec(x_1); x_27 = !lean_is_exclusive(x_21); if (x_27 == 0) { @@ -2573,6 +2900,7 @@ lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); +lean_dec(x_1); x_41 = !lean_is_exclusive(x_21); if (x_41 == 0) { @@ -2631,13 +2959,13 @@ else lean_object* x_49; lean_object* x_50; lean_dec(x_12); lean_dec(x_1); -x_49 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4; +x_49 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4; x_50 = l_panic___at___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___spec__1(x_49, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); return x_50; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; uint8_t x_13; @@ -2657,7 +2985,7 @@ if (lean_obj_tag(x_17) == 0) lean_object* x_18; lean_object* x_19; lean_free_object(x_12); x_18 = lean_box(0); -x_19 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(x_1, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +x_19 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(x_1, x_18, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); return x_19; } else @@ -2701,7 +3029,7 @@ if (lean_obj_tag(x_27) == 0) { lean_object* x_28; lean_object* x_29; x_28 = lean_box(0); -x_29 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2(x_1, x_28, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_25); +x_29 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(x_1, x_28, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_25); return x_29; } else @@ -2733,7 +3061,7 @@ return x_34; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; @@ -2761,7 +3089,7 @@ x_15 = lean_ctor_get(x_12, 1); lean_inc(x_15); lean_dec(x_12); x_16 = lean_box(0); -x_17 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +x_17 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); return x_17; } else @@ -2833,7 +3161,7 @@ return x_27; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; lean_object* x_12; @@ -2844,7 +3172,7 @@ lean_ctor_set(x_12, 1, x_10); return x_12; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1() { _start: { lean_object* x_1; @@ -2852,7 +3180,7 @@ x_1 = lean_mk_string_unchecked("grind", 5, 5); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2() { _start: { lean_object* x_1; @@ -2860,7 +3188,7 @@ x_1 = lean_mk_string_unchecked("debug", 5, 5); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3() { _start: { lean_object* x_1; @@ -2868,26 +3196,26 @@ x_1 = lean_mk_string_unchecked("split", 5, 5); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1; -x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2; -x_3 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1; +x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2; +x_3 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3; x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); return x_4; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5___boxed), 10, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___boxed), 10, 0); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6() { _start: { lean_object* x_1; @@ -2895,16 +3223,16 @@ x_1 = lean_mk_string_unchecked("split resolved: ", 16, 16); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8() { _start: { lean_object* x_1; @@ -2912,16 +3240,16 @@ x_1 = lean_mk_string_unchecked("", 0, 0); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; lean_object* x_13; uint8_t x_14; @@ -2937,7 +3265,7 @@ x_15 = lean_ctor_get(x_12, 1); lean_inc(x_15); lean_dec(x_12); x_16 = lean_box(0); -x_17 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__4(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); +x_17 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(x_1, x_16, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_15); return x_17; } else @@ -2950,7 +3278,7 @@ lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint x_19 = lean_ctor_get(x_12, 1); x_20 = lean_ctor_get(x_12, 0); lean_dec(x_20); -x_21 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4; +x_21 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4; x_22 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_21, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_19); x_23 = !lean_is_exclusive(x_22); if (x_23 == 0) @@ -2958,7 +3286,7 @@ if (x_23 == 0) lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; x_24 = lean_ctor_get(x_22, 0); x_25 = lean_ctor_get(x_22, 1); -x_26 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5; +x_26 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5; x_27 = lean_unbox(x_24); lean_dec(x_24); if (x_27 == 0) @@ -2975,11 +3303,11 @@ else { lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; x_30 = l_Lean_MessageData_ofExpr(x_1); -x_31 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7; +x_31 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7; lean_ctor_set_tag(x_22, 7); lean_ctor_set(x_22, 1, x_30); lean_ctor_set(x_22, 0, x_31); -x_32 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; +x_32 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; lean_ctor_set_tag(x_12, 7); lean_ctor_set(x_12, 1, x_32); lean_ctor_set(x_12, 0, x_22); @@ -3001,7 +3329,7 @@ x_38 = lean_ctor_get(x_22, 1); lean_inc(x_38); lean_inc(x_37); lean_dec(x_22); -x_39 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5; +x_39 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5; x_40 = lean_unbox(x_37); lean_dec(x_37); if (x_40 == 0) @@ -3017,11 +3345,11 @@ else { lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; x_43 = l_Lean_MessageData_ofExpr(x_1); -x_44 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7; +x_44 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7; x_45 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_45, 0, x_44); lean_ctor_set(x_45, 1, x_43); -x_46 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; +x_46 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; lean_ctor_set_tag(x_12, 7); lean_ctor_set(x_12, 1, x_46); lean_ctor_set(x_12, 0, x_45); @@ -3042,7 +3370,7 @@ lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean x_51 = lean_ctor_get(x_12, 1); lean_inc(x_51); lean_dec(x_12); -x_52 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4; +x_52 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4; x_53 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(x_52, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_51); x_54 = lean_ctor_get(x_53, 0); lean_inc(x_54); @@ -3056,7 +3384,7 @@ if (lean_is_exclusive(x_53)) { lean_dec_ref(x_53); x_56 = lean_box(0); } -x_57 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5; +x_57 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5; x_58 = lean_unbox(x_54); lean_dec(x_54); if (x_58 == 0) @@ -3072,7 +3400,7 @@ else { lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; x_61 = l_Lean_MessageData_ofExpr(x_1); -x_62 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7; +x_62 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7; if (lean_is_scalar(x_56)) { x_63 = lean_alloc_ctor(7, 2, 0); } else { @@ -3081,7 +3409,7 @@ if (lean_is_scalar(x_56)) { } lean_ctor_set(x_63, 0, x_62); lean_ctor_set(x_63, 1, x_61); -x_64 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; +x_64 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; x_65 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_65, 0, x_63); lean_ctor_set(x_65, 1, x_64); @@ -3215,7 +3543,7 @@ if (x_16 == 0) lean_object* x_17; lean_object* x_18; lean_dec(x_15); x_17 = lean_box(0); -x_18 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_18 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_17, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_18; } else @@ -3230,7 +3558,7 @@ lean_object* x_22; lean_object* x_23; lean_dec(x_20); lean_dec(x_19); x_22 = lean_box(0); -x_23 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_22, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_23 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_22, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_23; } else @@ -3256,7 +3584,7 @@ lean_dec(x_25); lean_dec(x_24); lean_dec(x_19); x_31 = lean_box(0); -x_32 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_31, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_32 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_31, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_32; } else @@ -3276,7 +3604,7 @@ if (x_36 == 0) lean_object* x_37; lean_object* x_38; lean_dec(x_33); x_37 = lean_box(0); -x_38 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_37, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_38 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_37, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_38; } else @@ -3291,7 +3619,7 @@ lean_object* x_42; lean_object* x_43; lean_dec(x_40); lean_dec(x_39); x_42 = lean_box(0); -x_43 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_42, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_43 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_42, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_43; } else @@ -3311,7 +3639,7 @@ if (x_48 == 0) lean_object* x_49; lean_object* x_50; lean_dec(x_39); x_49 = lean_box(0); -x_50 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_49, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); +x_50 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_49, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_13); return x_50; } else @@ -3429,11 +3757,20 @@ lean_dec(x_2); return x_12; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +_start: +{ +lean_object* x_12; +x_12 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +lean_dec(x_2); +return x_12; +} +} +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__5(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_9); lean_dec(x_8); lean_dec(x_7); @@ -3446,11 +3783,11 @@ lean_dec(x_1); return x_11; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { lean_object* x_12; -x_12 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); +x_12 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10, x_11); lean_dec(x_2); return x_12; } @@ -3568,10 +3905,10 @@ x_16 = !lean_is_exclusive(x_14); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_14, 18); +x_17 = lean_ctor_get(x_14, 19); lean_dec(x_17); x_18 = l_List_reverse___rarg(x_3); -lean_ctor_set(x_14, 18, x_18); +lean_ctor_set(x_14, 19, x_18); x_19 = lean_st_ref_set(x_4, x_14, x_15); if (lean_obj_tag(x_2) == 0) { @@ -3613,7 +3950,7 @@ lean_inc(x_28); x_29 = lean_ctor_get(x_27, 1); lean_inc(x_29); lean_dec(x_27); -x_73 = lean_ctor_get(x_28, 19); +x_73 = lean_ctor_get(x_28, 20); lean_inc(x_73); lean_dec(x_28); x_74 = lean_unsigned_to_nat(1u); @@ -3673,13 +4010,13 @@ x_33 = !lean_is_exclusive(x_31); if (x_33 == 0) { lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; uint8_t x_38; -x_34 = lean_ctor_get(x_31, 19); +x_34 = lean_ctor_get(x_31, 20); lean_dec(x_34); -x_35 = lean_ctor_get(x_31, 14); +x_35 = lean_ctor_get(x_31, 15); lean_dec(x_35); x_36 = lean_unsigned_to_nat(0u); -lean_ctor_set(x_31, 19, x_30); -lean_ctor_set(x_31, 14, x_36); +lean_ctor_set(x_31, 20, x_30); +lean_ctor_set(x_31, 15, x_36); x_37 = lean_st_ref_set(x_4, x_31, x_32); lean_dec(x_4); x_38 = !lean_is_exclusive(x_37); @@ -3721,11 +4058,11 @@ x_53 = lean_ctor_get(x_31, 10); x_54 = lean_ctor_get(x_31, 11); x_55 = lean_ctor_get(x_31, 12); x_56 = lean_ctor_get(x_31, 13); -x_57 = lean_ctor_get(x_31, 15); +x_57 = lean_ctor_get(x_31, 14); x_58 = lean_ctor_get(x_31, 16); x_59 = lean_ctor_get(x_31, 17); x_60 = lean_ctor_get(x_31, 18); -x_61 = lean_ctor_get(x_31, 20); +x_61 = lean_ctor_get(x_31, 19); x_62 = lean_ctor_get(x_31, 21); x_63 = lean_ctor_get(x_31, 22); x_64 = lean_ctor_get(x_31, 23); @@ -3770,13 +4107,13 @@ lean_ctor_set(x_67, 10, x_53); lean_ctor_set(x_67, 11, x_54); lean_ctor_set(x_67, 12, x_55); lean_ctor_set(x_67, 13, x_56); -lean_ctor_set(x_67, 14, x_66); -lean_ctor_set(x_67, 15, x_57); +lean_ctor_set(x_67, 14, x_57); +lean_ctor_set(x_67, 15, x_66); lean_ctor_set(x_67, 16, x_58); lean_ctor_set(x_67, 17, x_59); lean_ctor_set(x_67, 18, x_60); -lean_ctor_set(x_67, 19, x_30); -lean_ctor_set(x_67, 20, x_61); +lean_ctor_set(x_67, 19, x_61); +lean_ctor_set(x_67, 20, x_30); lean_ctor_set(x_67, 21, x_62); lean_ctor_set(x_67, 22, x_63); lean_ctor_set(x_67, 23, x_64); @@ -3828,7 +4165,7 @@ x_100 = lean_ctor_get(x_14, 14); x_101 = lean_ctor_get(x_14, 15); x_102 = lean_ctor_get(x_14, 16); x_103 = lean_ctor_get(x_14, 17); -x_104 = lean_ctor_get(x_14, 19); +x_104 = lean_ctor_get(x_14, 18); x_105 = lean_ctor_get(x_14, 20); x_106 = lean_ctor_get(x_14, 21); x_107 = lean_ctor_get(x_14, 22); @@ -3879,8 +4216,8 @@ lean_ctor_set(x_111, 14, x_100); lean_ctor_set(x_111, 15, x_101); lean_ctor_set(x_111, 16, x_102); lean_ctor_set(x_111, 17, x_103); -lean_ctor_set(x_111, 18, x_110); -lean_ctor_set(x_111, 19, x_104); +lean_ctor_set(x_111, 18, x_104); +lean_ctor_set(x_111, 19, x_110); lean_ctor_set(x_111, 20, x_105); lean_ctor_set(x_111, 21, x_106); lean_ctor_set(x_111, 22, x_107); @@ -3926,7 +4263,7 @@ lean_inc(x_120); x_121 = lean_ctor_get(x_119, 1); lean_inc(x_121); lean_dec(x_119); -x_157 = lean_ctor_get(x_120, 19); +x_157 = lean_ctor_get(x_120, 20); lean_inc(x_157); lean_dec(x_120); x_158 = lean_unsigned_to_nat(1u); @@ -4011,7 +4348,7 @@ x_138 = lean_ctor_get(x_123, 12); lean_inc(x_138); x_139 = lean_ctor_get(x_123, 13); lean_inc(x_139); -x_140 = lean_ctor_get(x_123, 15); +x_140 = lean_ctor_get(x_123, 14); lean_inc(x_140); x_141 = lean_ctor_get(x_123, 16); lean_inc(x_141); @@ -4019,7 +4356,7 @@ x_142 = lean_ctor_get(x_123, 17); lean_inc(x_142); x_143 = lean_ctor_get(x_123, 18); lean_inc(x_143); -x_144 = lean_ctor_get(x_123, 20); +x_144 = lean_ctor_get(x_123, 19); lean_inc(x_144); x_145 = lean_ctor_get(x_123, 21); lean_inc(x_145); @@ -4080,13 +4417,13 @@ lean_ctor_set(x_151, 10, x_136); lean_ctor_set(x_151, 11, x_137); lean_ctor_set(x_151, 12, x_138); lean_ctor_set(x_151, 13, x_139); -lean_ctor_set(x_151, 14, x_150); -lean_ctor_set(x_151, 15, x_140); +lean_ctor_set(x_151, 14, x_140); +lean_ctor_set(x_151, 15, x_150); lean_ctor_set(x_151, 16, x_141); lean_ctor_set(x_151, 17, x_142); lean_ctor_set(x_151, 18, x_143); -lean_ctor_set(x_151, 19, x_122); -lean_ctor_set(x_151, 20, x_144); +lean_ctor_set(x_151, 19, x_144); +lean_ctor_set(x_151, 20, x_122); lean_ctor_set(x_151, 21, x_145); lean_ctor_set(x_151, 22, x_146); lean_ctor_set(x_151, 23, x_147); @@ -4969,7 +5306,7 @@ lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); lean_inc(x_13); lean_dec(x_11); -x_14 = lean_ctor_get(x_12, 18); +x_14 = lean_ctor_get(x_12, 19); lean_inc(x_14); lean_dec(x_12); x_15 = lean_box(0); @@ -6280,8 +6617,8 @@ static lean_object* _init_l_Lean_Meta_Grind_splitNext___lambda__4___closed__1() _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1; -x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3; +x_1 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1; +x_2 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } @@ -6588,7 +6925,7 @@ lean_inc(x_52); lean_dec(x_51); lean_inc(x_26); x_53 = l_Lean_MessageData_ofExpr(x_26); -x_54 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; +x_54 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; lean_ctor_set_tag(x_36, 7); lean_ctor_set(x_36, 1, x_53); lean_ctor_set(x_36, 0, x_54); @@ -6707,7 +7044,7 @@ lean_inc(x_78); lean_dec(x_77); lean_inc(x_26); x_79 = l_Lean_MessageData_ofExpr(x_26); -x_80 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9; +x_80 = l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9; x_81 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_81, 0, x_80); lean_ctor_set(x_81, 1, x_79); @@ -7048,26 +7385,32 @@ l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__3); l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__4); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__2___closed__5); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__1); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__2); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__3); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__4); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__5); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__6); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__7); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__8); -l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__6___closed__9); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__1); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__2); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__3); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__3___closed__4); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__1); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__2); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__3); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__4); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__5); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__6); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__7); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__8); +l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___lambda__7___closed__9); l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__1(); lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__1); l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Split_0__Lean_Meta_Grind_checkCaseSplitStatus___closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Grind/Types.c b/stage0/stdlib/Lean/Meta/Tactic/Grind/Types.c index cbdad2e4fb..1abd581c40 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Grind/Types.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Grind/Types.c @@ -1,6 +1,6 @@ // Lean compiler output // Module: Lean.Meta.Tactic.Grind.Types -// Imports: Init.Grind.Tactics Init.Data.Queue Lean.Util.ShareCommon Lean.HeadIndex Lean.Meta.Basic Lean.Meta.CongrTheorems Lean.Meta.AbstractNestedProofs Lean.Meta.Tactic.Simp.Types Lean.Meta.Tactic.Util Lean.Meta.Tactic.Ext Lean.Meta.Tactic.Grind.ENodeKey Lean.Meta.Tactic.Grind.Attr Lean.Meta.Tactic.Grind.Arith.Types Lean.Meta.Tactic.Grind.EMatchTheorem +// Imports: Init.Grind.Tactics Init.Data.Queue Lean.Util.ShareCommon Lean.HeadIndex Lean.Meta.Basic Lean.Meta.CongrTheorems Lean.Meta.AbstractNestedProofs Lean.Meta.Tactic.Simp.Types Lean.Meta.Tactic.Util Lean.Meta.Tactic.Ext Lean.Meta.Tactic.Grind.ENodeKey Lean.Meta.Tactic.Grind.Attr Lean.Meta.Tactic.Grind.Cases Lean.Meta.Tactic.Grind.Arith.Types Lean.Meta.Tactic.Grind.EMatchTheorem #include #if defined(__clang__) #pragma clang diagnostic ignored "-Wunused-parameter" @@ -17,21 +17,20 @@ static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types___ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instBEqPreInstance___spec__1___closed__1; static lean_object* l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_registerParent___spec__7(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21; lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__60; LEAN_EXPORT lean_object* l_Array_qsort_sort___at_Lean_Meta_Grind_Goal_getENodes___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run___rarg___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__43; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedMethods; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12; LEAN_EXPORT lean_object* l_Lean_RBNode_ins___at_Lean_Meta_Grind_registerParent___spec__2(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_instInhabitedENode___closed__1; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__4; static lean_object* l_Lean_Meta_Grind_updateLastTag___closed__1; lean_object* l_Lean_Syntax_mkNameLit(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37; uint8_t l_Lean_PersistentHashMap_contains___at_Lean_NameSSet_contains___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instHashablePreInstance_unsafe__1___boxed(lean_object*); static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_109____closed__4; @@ -48,15 +47,14 @@ static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__ lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addNewFact___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_right(size_t, size_t); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41; static lean_object* l_Lean_Meta_Grind_isNatNum___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqHEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__16; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_ENode_isCongrRoot___boxed(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_getExtTheorems___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_markAsInconsistent___closed__2; +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_abstractNestedProofs(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__14; LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -81,14 +79,16 @@ static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types___ uint8_t lean_usize_dec_le(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getMethodsRef(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instHashablePreInstance___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_filterENodes___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_instBEqPreInstance___lambda__2___closed__1; uint64_t lean_uint64_of_nat(lean_object*); +static lean_object* l_Lean_Meta_Grind_reportIssue___closed__4; uint64_t lean_uint64_mix_hash(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_panic___at_Lean_Meta_Grind_foldEqc___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run(lean_object*); -static lean_object* l_Lean_Meta_Grind_Goal_reportIssue___closed__2; +static lean_object* l_Lean_Meta_Grind_reportIssue___closed__1; lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_Grind_resetParentsOf___spec__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_setENode_unsafe__1___rarg(lean_object*); @@ -112,8 +112,7 @@ static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types___ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markAsInconsistent___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isCongruent(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_getId(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_RBNode_isRed___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isInterpreted(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_trySynthInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -128,7 +127,7 @@ static lean_object* l_Lean_PersistentHashMap_toArray___at_Lean_Meta_Grind_Goal_g size_t lean_usize_mul(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_alreadyInternalized___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43; lean_object* lean_mk_array(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkHCongrWithArity___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_uint64_dec_lt(uint64_t, uint64_t); @@ -139,10 +138,12 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEq___boxed(lean_object*, lean_obj LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_getExtTheorems___spec__7___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__12; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_toArray___at_Lean_Meta_Grind_Goal_getENodes___spec__1___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_traverseEqc___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isNatNum___lambda__1(lean_object*); +static lean_object* l_Lean_Meta_Grind_reportIssue___closed__5; LEAN_EXPORT uint64_t l_Lean_Meta_Grind_congrHash(lean_object*, lean_object*); lean_object* l_Lean_Expr_bvar___override(lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); @@ -152,22 +153,20 @@ lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_grind_debug_proofs; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_throwNonInternalizedExpr(lean_object*); LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Meta_Grind_instInhabitedMethods___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_registerParent___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markCaseSplitAsResolved___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__24; lean_object* l_Lean_MVarId_getTag(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqCore(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getEqc_go(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_forEachENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateDown(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getENodes(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isNatNum___lambda__2(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___spec__2(lean_object*, size_t, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getCongrRoot___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_getExtTheorems___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -182,7 +181,6 @@ LEAN_EXPORT uint64_t l_Lean_Meta_Grind_instHashableCongrTheoremCacheKey(lean_obj LEAN_EXPORT uint8_t l_Array_qsort_sort___at_Lean_Meta_Grind_Goal_getENodes___spec__4___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_registerParent___spec__9(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Meta_Grind_Goal_getENodes___spec__3___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__8; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markAsInconsistent___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -193,7 +191,6 @@ lean_object* l_Lean_Name_mkStr5(lean_object*, lean_object*, lean_object*, lean_o size_t lean_usize_of_nat(lean_object*); lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getMethods___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15; lean_object* l_Lean_Expr_cleanupAnnotations(lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__51; lean_object* l_Lean_stringToMessageData(lean_object*); @@ -207,7 +204,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getFalseExpr(lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlM___at_Lean_Meta_Grind_Goal_getENodes___spec__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getNext_x3f(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedMethods___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Arith_processNewOffsetEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getExtTheorems(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -224,11 +220,13 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_ static uint64_t l_Lean_Meta_Grind_hasSameType___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getCongrRoot___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqCongrKey___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getNatZeroExpr___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqCongrTheoremCacheKey___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_isResolvedCaseSplit___spec__1(lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_Goal_reportIssue___closed__1; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Methods_toMethodsRef___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRootENode_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__54; @@ -241,16 +239,16 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isCongrRoot(lean_object*, lean_object LEAN_EXPORT lean_object* l_Lean_Meta_Grind_grind_debug; LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Meta_Grind_closeGoal___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_MethodsRef_toMethods(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38; static lean_object* l_panic___at_Lean_Meta_Grind_foldEqc___spec__2___closed__4; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__4; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25; lean_object* l_Lean_Expr_appArg_x21(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_AbstractNestedProofs_visit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_propagateUp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isResolvedCaseSplit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_synthesizeInstanceAndAssign(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEqTrue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isNatNum___lambda__1___boxed(lean_object*); LEAN_EXPORT uint64_t l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instHashablePreInstance___spec__1(lean_object*, lean_object*, lean_object*, size_t, size_t, uint64_t); @@ -269,26 +267,29 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_ma LEAN_EXPORT lean_object* l_Lean_Meta_Grind_checkMaxEmatchExceeded(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_isLambda(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqPreInstance___lambda__3___boxed(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqPreInstance___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_updateLastTag___closed__5; static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_109____closed__3; size_t lean_ptr_addr(lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_closeGoal___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_Goal_reportIssue___closed__4; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_getExtTheorems___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqCore___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69____closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getFalseExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Methods_toMethodsRef_unsafe__1___boxed(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getTarget_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); +static double l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22; lean_object* l_Lean_PersistentHashMap_isUnaryNode___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_registerParent___spec__8(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_checkMaxEmatchExceeded___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__48; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_foldlM___at_Lean_Meta_Grind_Goal_getENodes___spec__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__14; @@ -301,22 +302,22 @@ static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__ static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__17; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markTheoremInstance___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRootENode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34; lean_object* lean_st_ref_take(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_hasSameRoot___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEqFalse___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isCongrRoot___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_Canon_instInhabitedState___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__7(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getENode_x3f___boxed(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isNatNum___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_filterENodes___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23; static lean_object* l_Lean_Meta_Grind_instBEqPreInstance___lambda__2___closed__2; -static lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__30; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__1; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__6; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instHashablePreInstance_unsafe__2___boxed(lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getGeneration___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -326,18 +327,15 @@ lean_object* l_Lean_RBNode_setBlack___rarg(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addTheoremInstance___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_usize_to_uint64(size_t); lean_object* lean_nat_to_int(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24; lean_object* l_Lean_Syntax_node6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_registerParent___spec__8___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkEqHEqProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getTarget_x3f(lean_object*, lean_object*); static size_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__1; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39; static lean_object* l_Lean_Meta_Grind_abstractNestedProofs___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getENodes___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36; static lean_object* l_Lean_Meta_Grind_instInhabitedGoal___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_checkMaxInstancesExceeded(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_closeGoal(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -346,7 +344,6 @@ LEAN_EXPORT lean_object* l_Lean_MVarId_assign___at_Lean_Meta_Grind_closeGoal___s LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_getExtTheorems___spec__6___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getENode_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getConfig___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkHCongrWithArity___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_checkMaxInstancesExceeded___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isNatNum___closed__1; @@ -370,13 +367,14 @@ LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_foldEqc___s lean_object* l_Lean_Expr_appArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markCaseSplitAsResolved___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__5(lean_object*, lean_object*, lean_object*, size_t, size_t, uint64_t); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_getExtTheorems___spec__6(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getENode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getTrueExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_quoteNameMk(lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_Grind_congrHash_goEq(lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__49; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkENode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Meta_Grind_foldEqc___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_markTheoremInstance___spec__13___lambda__2___boxed(lean_object*, lean_object*, lean_object*); @@ -386,7 +384,9 @@ lean_object* l_Lean_PersistentHashMap_foldlMAux___at_Lean_MetavarContext_getExpr static lean_object* l_Lean_Meta_Grind_congrPlaceholderProof___closed__1; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__56; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_isResolvedCaseSplit___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__28; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRootENode_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__14; @@ -394,7 +394,6 @@ lean_object* lean_st_mk_ref(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_markTheoremInstance___spec__7(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__46; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__19; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23; lean_object* l_Lean_Expr_appFnCleanup(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isCongruent___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Meta_Basic_0__Lean_Meta_withMVarContextImp___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -403,15 +402,14 @@ lean_object* l_Lean_addMessageContextPartial___at_Lean_Core_instAddMessageContex LEAN_EXPORT lean_object* l_Lean_MVarId_isAssigned___at_Lean_Meta_Grind_closeGoal___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getMainDeclName(lean_object*); lean_object* l_Lean_Syntax_node3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445_(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed__2; LEAN_EXPORT uint64_t l_Lean_Meta_Grind_instHashablePreInstance(lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__16; static lean_object* l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__2; static lean_object* l_Lean_Meta_Grind_isNatNum___lambda__2___closed__3; LEAN_EXPORT lean_object* l_Array_qsort_sort___at_Lean_Meta_Grind_Goal_getENodes___spec__4___lambda__1___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isCongruent_goEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__33; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_getExtTheorems___spec__8(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT uint64_t l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot(lean_object*, lean_object*); @@ -422,16 +420,17 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_G static size_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__2; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__39; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getEqc(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_Grind_Goal_reportIssue___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getMethodsRef___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_congrHash___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqTrue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_toArray___at_Lean_Meta_Grind_Goal_getENodes___spec__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markAsOffsetTerm(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_instBEqCongrTheoremCacheKey(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_markTheoremInstance___spec__9(lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Meta_Grind_foldEqc___spec__2___closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_getExtTheorems___spec__5___boxed(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_setENode_unsafe__1___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1(lean_object*, lean_object*, lean_object*); @@ -444,16 +443,16 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_forEa LEAN_EXPORT lean_object* l_Lean_RBNode_forIn_visit___at_Lean_Meta_Grind_copyParentsTo___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_panic___at_Lean_Meta_Grind_foldEqc___spec__2___closed__5; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_registerParent___spec__7___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; static lean_object* l_Lean_Meta_Grind_congrHash___closed__1; static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69____closed__4; uint8_t lean_name_eq(lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getGeneration(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_mkHCongrWithArity(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Meta_Grind_isSameExpr_unsafe__1(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_alreadyInternalized(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_getExtTheorems___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); @@ -472,16 +471,15 @@ lean_object* l_Lean_Syntax_getArg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_filterENodes(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_markTheoremInstance___spec__13___lambda__1___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__8; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getParents(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_markTheoremInstance___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRoot___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Arith_processNewOffsetEqLit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isInterpreted___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_process_new_offset_eq_lit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markTheoremInstance___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getRoot___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -495,19 +493,19 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_ LEAN_EXPORT lean_object* l_ReaderT_bind___at_Lean_Meta_Grind_GoalM_run___spec__1(lean_object*, lean_object*); extern lean_object* l_Lean_Meta_instMonadMetaM; lean_object* l_Array_eraseIdx___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_hasSameType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkHEqProof___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instHashableCongrKey___boxed(lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_Grind_instHashablePreInstance_unsafe__1(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_traverseEqc(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__10; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_isResolvedCaseSplit___spec__2(lean_object*, size_t, lean_object*); uint8_t l_Lean_PersistentHashMap_contains___at_Lean_MVarId_isAssigned___spec__1(lean_object*, lean_object*); lean_object* l_Lean_Meta_mkFalseElim(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_109_(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8; static lean_object* l_Lean_Meta_Grind_instInhabitedENode___closed__2; lean_object* lean_usize_to_nat(size_t); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isCongruent_go(lean_object*, lean_object*, lean_object*); @@ -515,6 +513,7 @@ static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getParents___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_updateLastTag___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_alreadyInternalized___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7; LEAN_EXPORT uint64_t l_Lean_Meta_Grind_instHashableCongrKey(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_qsort_sort___at_Lean_Meta_Grind_Goal_getENodes___spec__4___closed__1; @@ -523,6 +522,7 @@ lean_object* l_Lean_MessageData_ofExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_copyParentsTo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Option_register___at_Lean_Elab_initFn____x40_Lean_Elab_AutoBound___hyg_6____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__26; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__4; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__12___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__14___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -542,8 +542,10 @@ LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at_Lean_Meta_Grind lean_object* l_Lean_Name_mkStr6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_updateLastTag___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_markTheoremInstance___spec__7___lambda__2(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28; static lean_object* l_Lean_Meta_Grind_GoalM_run_x27___closed__1; -static lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36; +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_admit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getNext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_ENode_isCongrRoot(lean_object*); @@ -551,7 +553,9 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mark LEAN_EXPORT lean_object* l_Lean_Meta_Grind_setENode_unsafe__1(lean_object*, lean_object*); lean_object* l_Array_insertionSort_traverse___at_Lean_Meta_Ext_getExtTheorems___spec__1(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_abstractNestedProofs___closed__3; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__15; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46; LEAN_EXPORT uint64_t l_Lean_Meta_Grind_instHashablePreInstance_unsafe__2(lean_object*); static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__16; lean_object* lean_grind_mk_eq_proof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -560,11 +564,11 @@ static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types___ lean_object* lean_grind_mk_heq_proof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT uint64_t l_Lean_Meta_Grind_congrHash_go(lean_object*, lean_object*, uint64_t); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__6; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedMethods___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed__3; lean_object* lean_process_new_offset_eq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqPreInstance___lambda__1___boxed(lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__34; LEAN_EXPORT lean_object* l_Lean_MVarId_withContext___at_Lean_Meta_Grind_GoalM_run___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -575,8 +579,6 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_ma static lean_object* l_Lean_Meta_Grind_congrPlaceholderProof___closed__3; LEAN_EXPORT lean_object* l_ReaderT_pure___at_Lean_Meta_Grind_instInhabitedMethods___spec__1(lean_object*); lean_object* l___private_Init_Meta_0__Lean_getEscapedNameParts_x3f(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_markTheoremInstance___spec__10___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_Meta_Grind_markTheoremInstance___spec__7___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_alreadyInternalized___spec__1___boxed(lean_object*, lean_object*); @@ -584,9 +586,11 @@ lean_object* lean_string_length(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getNatZeroExpr___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isNatNum___lambda__2___closed__4; static lean_object* l_Lean_Meta_Grind_congrHash___closed__3; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_abstractNestedProofs___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkEqFalseProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getEqcs(lean_object*); static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_109____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_shareCommon(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -597,7 +601,6 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_addTheoremInstance(lean_object*, lean LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_MethodsRef_toMethods___boxed(lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__42; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_markTheoremInstance___spec__13___lambda__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_erase___at_Lean_Meta_Grind_resetParentsOf___spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__32; @@ -608,17 +611,18 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run_x27___lambda__2(lean_object LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_setENode___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_throwNonInternalizedExpr___spec__1(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45; lean_object* l_Lean_PersistentHashMap_insert___at_Lean_MVarId_assign___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_foldEqc___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot_unsafe__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isInconsistent___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50; static lean_object* l_Lean_Meta_Grind_instInhabitedMethods___closed__1; LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getCongrRoot___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_isConstructorAppCore_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__9; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_markTheoremInstance___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -646,6 +650,7 @@ lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_getExtTheorems___spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__18; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__1(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getNatZeroExpr(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markTheoremInstance(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -659,12 +664,14 @@ LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_insertAtCollisionNodeAux___at_Lean_ lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__4; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_markTheoremInstance___spec__9___boxed(lean_object*, lean_object*); +static lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; lean_object* l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_resetParentsOf___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getExtTheorems___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24; LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_traverseEqc___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__2; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52; lean_object* lean_panic_fn(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_markCaseSplitAsResolved___closed__2; static lean_object* l_Lean_Meta_Grind_instInhabitedGoal___closed__6; @@ -678,14 +685,16 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getRoot_x3f(lean_object*, lean_o lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_foldEqc___rarg___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_ScopedEnvExtension_getState___rarg(lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_Grind_reportIssue___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Methods_toMethodsRef(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkEqTrueProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1; +static lean_object* l_Lean_Meta_Grind_reportIssue___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isRoot___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_setENode___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_copyParentsTo___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_left(uint64_t, uint64_t); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Methods_toMethodsRef_unsafe__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushHEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Data_Array_QSort_0__Array_qpartition___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -710,15 +719,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isTrueExpr(lean_object*, lean_object* lean_object* lean_erase_macro_scopes(lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__40; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___spec__2___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__17; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52; static lean_object* l_Lean_Meta_Grind_congrHash___closed__4; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__9; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___boxed(lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__47; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getENode_x3f(lean_object*, lean_object*); lean_object* l_String_intercalate(lean_object*, lean_object*); @@ -727,11 +734,13 @@ static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__ lean_object* lean_array_mk(lean_object*); static lean_object* l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isRoot(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54; uint8_t l_Lean_Expr_isTrue(lean_object*); uint8_t l_Lean_Expr_quickComp(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRoot_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__12; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEqFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqFalse(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_congrHash_go___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__12; @@ -741,36 +750,29 @@ uint64_t l_Lean_Meta_Grind_instHashableENodeKey_unsafe__1(lean_object*); size_t lean_usize_add(size_t, size_t); extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedEMatchTheorems___spec__1; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__8; -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__55; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instHashableCongrTheoremCacheKey___boxed(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedNewFact; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51; static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_109____closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getMaxGeneration(lean_object*); -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____boxed(lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_Grind_isCongruent_goEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_instInhabitedGoal___closed__4; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__19; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushHEq___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static double l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31; lean_object* l_instInhabitedOfMonad___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_throwError___at_Lean_Meta_Grind_throwNonInternalizedExpr___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_st_ref_set(lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__6(lean_object*, size_t, lean_object*); -static lean_object* l_Lean_Meta_Grind_Goal_reportIssue___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkENode___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_usize_shift_left(size_t, size_t); lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_MethodsRef_toMethods_unsafe__1___boxed(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_foldEqc___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_getExtTheorems___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12; LEAN_EXPORT uint64_t l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot_unsafe__1(lean_object*); static lean_object* l_Lean_Meta_Grind_congrHash___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_mkHCongrWithArity___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -779,32 +781,29 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Canon_instInhabitedState; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isEqTrue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_append(lean_object*, lean_object*); -lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25; static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__37; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_markTheoremInstance___spec__3___lambda__1(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_isNatNum___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_pushEqTrue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instBEqPreInstance___lambda__3(lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isFalseExpr___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13; static lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__11; extern lean_object* l_Lean_ShareCommon_objectFactory; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isFalseExpr(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_traverseEqc___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRootENode(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_state_sharecommon(lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_mkHCongrWithArity___spec__1(lean_object*, lean_object*, lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8; uint8_t lean_usize_dec_lt(size_t, size_t); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markTheoremInstance___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_resetParentsOf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29; uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__38; @@ -815,12 +814,12 @@ static lean_object* l_Lean_Meta_Grind_Canon_instInhabitedState___closed__3; LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_markTheoremInstance___spec__11(lean_object*, size_t, lean_object*); LEAN_EXPORT uint8_t l_Lean_PersistentHashMap_containsAtAux___at_Lean_Meta_Grind_alreadyInternalized___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__25; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49; static lean_object* l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69____closed__9; lean_object* l_Lean_Meta_DiscrTree_getMatch___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__35; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_toArray___at_Lean_Meta_Grind_Goal_getENodes___spec__1___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_MethodsRefPointed; +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d____; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_eraseAux___at_Lean_Meta_Grind_resetParentsOf___spec__2(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_qsort_sort___at_Lean_Meta_Grind_Goal_getENodes___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -829,6 +828,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_instB static lean_object* l_Lean_Meta_Grind___aux__Lean__Meta__Tactic__Grind__Types______macroRules__Lean__Meta__Grind__doElemTrace__goal_x5b___x5d______1___lambda__1___closed__57; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run_x27___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_String_toSubstring_x27(lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_markCaseSplitAsResolved___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getConfig___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_GoalM_run___rarg___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -840,23 +840,20 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getRoot_x3f(lean_object*, lean_object LEAN_EXPORT size_t l_Lean_Meta_Grind_instHashableCongrTheoremCacheKey_unsafe__1(lean_object*); lean_object* lean_array_get(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26; lean_object* l_Lean_Meta_isLitValue(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_forEachEqcRoot(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_Grind_instInhabitedGoal___spec__1; -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_Goal_getEqcs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); static lean_object* l_Lean_Meta_Grind_updateLastTag___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isInterpreted___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_getEqc(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_Grind_updateLastTag___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__6___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at_Lean_Meta_Grind_markTheoremInstance___spec__11___lambda__2___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_checkMaxCaseSplit___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_isInconsistent(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Meta_Grind_traverseEqc___spec__1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getExtTheorems___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instInhabitedGoal; LEAN_EXPORT lean_object* l_Lean_Meta_Grind_instHashableCongrTheoremCacheKey_unsafe__1___boxed(lean_object*); @@ -869,6 +866,7 @@ size_t lean_usize_land(size_t, size_t); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_findAtAux___at___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_hashRoot___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_Grind_getConfig___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Meta_Grind_forEachEqcRoot___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Meta_Grind_setENode___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Option_repr___at___private_Lean_Meta_Transform_0__Lean_reprTransformStep____x40_Lean_Meta_Transform___hyg_46____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_find_x3f___at_Lean_Meta_Grind_mkHCongrWithArity___spec__5___boxed(lean_object*, lean_object*); @@ -1716,7 +1714,7 @@ return x_41; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; x_42 = lean_ctor_get(x_33, 0); x_43 = lean_ctor_get(x_33, 2); x_44 = lean_ctor_get(x_33, 3); @@ -1724,6 +1722,8 @@ x_45 = lean_ctor_get(x_33, 4); x_46 = lean_ctor_get(x_33, 5); x_47 = lean_ctor_get(x_33, 6); x_48 = lean_ctor_get(x_33, 7); +x_49 = lean_ctor_get(x_33, 8); +lean_inc(x_49); lean_inc(x_48); lean_inc(x_47); lean_inc(x_46); @@ -1732,58 +1732,59 @@ lean_inc(x_44); lean_inc(x_43); lean_inc(x_42); lean_dec(x_33); -x_49 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_49, 0, x_42); -lean_ctor_set(x_49, 1, x_30); -lean_ctor_set(x_49, 2, x_43); -lean_ctor_set(x_49, 3, x_44); -lean_ctor_set(x_49, 4, x_45); -lean_ctor_set(x_49, 5, x_46); -lean_ctor_set(x_49, 6, x_47); -lean_ctor_set(x_49, 7, x_48); -x_50 = lean_st_ref_set(x_4, x_49, x_34); -x_51 = lean_ctor_get(x_50, 1); -lean_inc(x_51); -if (lean_is_exclusive(x_50)) { - lean_ctor_release(x_50, 0); - lean_ctor_release(x_50, 1); - x_52 = x_50; +x_50 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_50, 0, x_42); +lean_ctor_set(x_50, 1, x_30); +lean_ctor_set(x_50, 2, x_43); +lean_ctor_set(x_50, 3, x_44); +lean_ctor_set(x_50, 4, x_45); +lean_ctor_set(x_50, 5, x_46); +lean_ctor_set(x_50, 6, x_47); +lean_ctor_set(x_50, 7, x_48); +lean_ctor_set(x_50, 8, x_49); +x_51 = lean_st_ref_set(x_4, x_50, x_34); +x_52 = lean_ctor_get(x_51, 1); +lean_inc(x_52); +if (lean_is_exclusive(x_51)) { + lean_ctor_release(x_51, 0); + lean_ctor_release(x_51, 1); + x_53 = x_51; } else { - lean_dec_ref(x_50); - x_52 = lean_box(0); + lean_dec_ref(x_51); + x_53 = lean_box(0); } -if (lean_is_scalar(x_52)) { - x_53 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_53)) { + x_54 = lean_alloc_ctor(0, 2, 0); } else { - x_53 = x_52; + x_54 = x_53; } -lean_ctor_set(x_53, 0, x_25); -lean_ctor_set(x_53, 1, x_51); -return x_53; +lean_ctor_set(x_54, 0, x_25); +lean_ctor_set(x_54, 1, x_52); +return x_54; } } else { -uint8_t x_54; +uint8_t x_55; lean_dec(x_22); lean_dec(x_18); -x_54 = !lean_is_exclusive(x_24); -if (x_54 == 0) +x_55 = !lean_is_exclusive(x_24); +if (x_55 == 0) { return x_24; } else { -lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_55 = lean_ctor_get(x_24, 0); -x_56 = lean_ctor_get(x_24, 1); +lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_56 = lean_ctor_get(x_24, 0); +x_57 = lean_ctor_get(x_24, 1); +lean_inc(x_57); lean_inc(x_56); -lean_inc(x_55); lean_dec(x_24); -x_57 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_57, 0, x_55); -lean_ctor_set(x_57, 1, x_56); -return x_57; +x_58 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_58, 0, x_56); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -1846,7 +1847,7 @@ return x_23; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_24 = lean_ctor_get(x_11, 0); x_25 = lean_ctor_get(x_11, 1); x_26 = lean_ctor_get(x_11, 2); @@ -1855,6 +1856,8 @@ x_28 = lean_ctor_get(x_11, 4); x_29 = lean_ctor_get(x_11, 5); x_30 = lean_ctor_get(x_11, 6); x_31 = lean_ctor_get(x_11, 7); +x_32 = lean_ctor_get(x_11, 8); +lean_inc(x_32); lean_inc(x_31); lean_inc(x_30); lean_inc(x_29); @@ -1864,41 +1867,42 @@ lean_inc(x_26); lean_inc(x_25); lean_inc(x_24); lean_dec(x_11); -x_32 = l_Lean_ShareCommon_objectFactory; -x_33 = lean_state_sharecommon(x_32, x_24, x_1); -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_ctor_get(x_33, 1); +x_33 = l_Lean_ShareCommon_objectFactory; +x_34 = lean_state_sharecommon(x_33, x_24, x_1); +x_35 = lean_ctor_get(x_34, 0); lean_inc(x_35); -lean_dec(x_33); -x_36 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_25); -lean_ctor_set(x_36, 2, x_26); -lean_ctor_set(x_36, 3, x_27); -lean_ctor_set(x_36, 4, x_28); -lean_ctor_set(x_36, 5, x_29); -lean_ctor_set(x_36, 6, x_30); -lean_ctor_set(x_36, 7, x_31); -x_37 = lean_st_ref_set(x_4, x_36, x_12); -x_38 = lean_ctor_get(x_37, 1); -lean_inc(x_38); -if (lean_is_exclusive(x_37)) { - lean_ctor_release(x_37, 0); - lean_ctor_release(x_37, 1); - x_39 = x_37; +x_36 = lean_ctor_get(x_34, 1); +lean_inc(x_36); +lean_dec(x_34); +x_37 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_25); +lean_ctor_set(x_37, 2, x_26); +lean_ctor_set(x_37, 3, x_27); +lean_ctor_set(x_37, 4, x_28); +lean_ctor_set(x_37, 5, x_29); +lean_ctor_set(x_37, 6, x_30); +lean_ctor_set(x_37, 7, x_31); +lean_ctor_set(x_37, 8, x_32); +x_38 = lean_st_ref_set(x_4, x_37, x_12); +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_40 = x_38; } else { - lean_dec_ref(x_37); - x_39 = lean_box(0); + lean_dec_ref(x_38); + x_40 = lean_box(0); } -if (lean_is_scalar(x_39)) { - x_40 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_40)) { + x_41 = lean_alloc_ctor(0, 2, 0); } else { - x_40 = x_39; + x_41 = x_40; } -lean_ctor_set(x_40, 0, x_34); -lean_ctor_set(x_40, 1, x_38); -return x_40; +lean_ctor_set(x_41, 0, x_35); +lean_ctor_set(x_41, 1, x_39); +return x_41; } } } @@ -2991,7 +2995,7 @@ return x_26; } else { -lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_27 = lean_ctor_get(x_17, 0); x_28 = lean_ctor_get(x_17, 1); x_29 = lean_ctor_get(x_17, 2); @@ -3000,6 +3004,8 @@ x_31 = lean_ctor_get(x_17, 4); x_32 = lean_ctor_get(x_17, 5); x_33 = lean_ctor_get(x_17, 6); x_34 = lean_ctor_get(x_17, 7); +x_35 = lean_ctor_get(x_17, 8); +lean_inc(x_35); lean_inc(x_34); lean_inc(x_33); lean_inc(x_32); @@ -3010,58 +3016,59 @@ lean_inc(x_28); lean_inc(x_27); lean_dec(x_17); lean_inc(x_14); -x_35 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_mkHCongrWithArity___spec__1(x_29, x_3, x_14); -x_36 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_36, 0, x_27); -lean_ctor_set(x_36, 1, x_28); -lean_ctor_set(x_36, 2, x_35); -lean_ctor_set(x_36, 3, x_30); -lean_ctor_set(x_36, 4, x_31); -lean_ctor_set(x_36, 5, x_32); -lean_ctor_set(x_36, 6, x_33); -lean_ctor_set(x_36, 7, x_34); -x_37 = lean_st_ref_set(x_7, x_36, x_18); -x_38 = lean_ctor_get(x_37, 1); -lean_inc(x_38); -if (lean_is_exclusive(x_37)) { - lean_ctor_release(x_37, 0); - lean_ctor_release(x_37, 1); - x_39 = x_37; +x_36 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_mkHCongrWithArity___spec__1(x_29, x_3, x_14); +x_37 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_37, 0, x_27); +lean_ctor_set(x_37, 1, x_28); +lean_ctor_set(x_37, 2, x_36); +lean_ctor_set(x_37, 3, x_30); +lean_ctor_set(x_37, 4, x_31); +lean_ctor_set(x_37, 5, x_32); +lean_ctor_set(x_37, 6, x_33); +lean_ctor_set(x_37, 7, x_34); +lean_ctor_set(x_37, 8, x_35); +x_38 = lean_st_ref_set(x_7, x_37, x_18); +x_39 = lean_ctor_get(x_38, 1); +lean_inc(x_39); +if (lean_is_exclusive(x_38)) { + lean_ctor_release(x_38, 0); + lean_ctor_release(x_38, 1); + x_40 = x_38; } else { - lean_dec_ref(x_37); - x_39 = lean_box(0); + lean_dec_ref(x_38); + x_40 = lean_box(0); } -if (lean_is_scalar(x_39)) { - x_40 = lean_alloc_ctor(0, 2, 0); +if (lean_is_scalar(x_40)) { + x_41 = lean_alloc_ctor(0, 2, 0); } else { - x_40 = x_39; + x_41 = x_40; } -lean_ctor_set(x_40, 0, x_14); -lean_ctor_set(x_40, 1, x_38); -return x_40; +lean_ctor_set(x_41, 0, x_14); +lean_ctor_set(x_41, 1, x_39); +return x_41; } } else { -uint8_t x_41; +uint8_t x_42; lean_dec(x_3); -x_41 = !lean_is_exclusive(x_13); -if (x_41 == 0) +x_42 = !lean_is_exclusive(x_13); +if (x_42 == 0) { return x_13; } else { -lean_object* x_42; lean_object* x_43; lean_object* x_44; -x_42 = lean_ctor_get(x_13, 0); -x_43 = lean_ctor_get(x_13, 1); +lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_43 = lean_ctor_get(x_13, 0); +x_44 = lean_ctor_get(x_13, 1); +lean_inc(x_44); lean_inc(x_43); -lean_inc(x_42); lean_dec(x_13); -x_44 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_44, 0, x_42); -lean_ctor_set(x_44, 1, x_43); -return x_44; +x_45 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_45, 0, x_43); +lean_ctor_set(x_45, 1, x_44); +return x_45; } } } @@ -3099,7 +3106,7 @@ return x_19; } else { -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; uint8_t x_36; +lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; uint8_t x_37; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -3136,42 +3143,45 @@ x_32 = lean_ctor_get(x_23, 6); lean_inc(x_32); x_33 = lean_ctor_get(x_23, 7); lean_inc(x_33); +x_34 = lean_ctor_get(x_23, 8); +lean_inc(x_34); lean_dec(x_23); -x_34 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_34, 0, x_25); -lean_ctor_set(x_34, 1, x_26); -lean_ctor_set(x_34, 2, x_28); -lean_ctor_set(x_34, 3, x_29); -lean_ctor_set(x_34, 4, x_30); -lean_ctor_set(x_34, 5, x_31); -lean_ctor_set(x_34, 6, x_32); -lean_ctor_set(x_34, 7, x_33); -x_35 = lean_st_ref_set(x_7, x_34, x_24); -x_36 = !lean_is_exclusive(x_35); -if (x_36 == 0) +x_35 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_35, 0, x_25); +lean_ctor_set(x_35, 1, x_26); +lean_ctor_set(x_35, 2, x_28); +lean_ctor_set(x_35, 3, x_29); +lean_ctor_set(x_35, 4, x_30); +lean_ctor_set(x_35, 5, x_31); +lean_ctor_set(x_35, 6, x_32); +lean_ctor_set(x_35, 7, x_33); +lean_ctor_set(x_35, 8, x_34); +x_36 = lean_st_ref_set(x_7, x_35, x_24); +x_37 = !lean_is_exclusive(x_36); +if (x_37 == 0) { -lean_object* x_37; -x_37 = lean_ctor_get(x_35, 0); -lean_dec(x_37); -lean_ctor_set(x_35, 0, x_21); -return x_35; +lean_object* x_38; +x_38 = lean_ctor_get(x_36, 0); +lean_dec(x_38); +lean_ctor_set(x_36, 0, x_21); +return x_36; } else { -lean_object* x_38; lean_object* x_39; -x_38 = lean_ctor_get(x_35, 1); -lean_inc(x_38); -lean_dec(x_35); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_21); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_object* x_39; lean_object* x_40; +x_39 = lean_ctor_get(x_36, 1); +lean_inc(x_39); +lean_dec(x_36); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_21); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } } else { -uint8_t x_40; +uint8_t x_41; lean_dec(x_11); lean_dec(x_10); lean_dec(x_9); @@ -3179,32 +3189,32 @@ lean_dec(x_8); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -x_40 = !lean_is_exclusive(x_15); -if (x_40 == 0) +x_41 = !lean_is_exclusive(x_15); +if (x_41 == 0) { return x_15; } else { -lean_object* x_41; lean_object* x_42; lean_object* x_43; -x_41 = lean_ctor_get(x_15, 0); -x_42 = lean_ctor_get(x_15, 1); +lean_object* x_42; lean_object* x_43; lean_object* x_44; +x_42 = lean_ctor_get(x_15, 0); +x_43 = lean_ctor_get(x_15, 1); +lean_inc(x_43); lean_inc(x_42); -lean_inc(x_41); lean_dec(x_15); -x_43 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_43, 0, x_41); -lean_ctor_set(x_43, 1, x_42); -return x_43; +x_44 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_44, 0, x_42); +lean_ctor_set(x_44, 1, x_43); +return x_44; } } } else { -lean_object* x_44; lean_object* x_45; -x_44 = lean_box(0); -x_45 = l_Lean_Meta_Grind_mkHCongrWithArity___lambda__1(x_1, x_2, x_3, x_44, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); -return x_45; +lean_object* x_45; lean_object* x_46; +x_45 = lean_box(0); +x_46 = l_Lean_Meta_Grind_mkHCongrWithArity___lambda__1(x_1, x_2, x_3, x_45, x_5, x_6, x_7, x_8, x_9, x_10, x_11, x_12); +return x_46; } } } @@ -3383,6 +3393,754 @@ lean_dec(x_3); return x_11; } } +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; uint8_t x_12; +x_10 = lean_ctor_get(x_7, 2); +x_11 = l_Lean_isTracingEnabledForCore(x_1, x_10, x_9); +x_12 = !lean_is_exclusive(x_11); +if (x_12 == 0) +{ +return x_11; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; +x_13 = lean_ctor_get(x_11, 0); +x_14 = lean_ctor_get(x_11, 1); +lean_inc(x_14); +lean_inc(x_13); +lean_dec(x_11); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_13); +lean_ctor_set(x_15, 1, x_14); +return x_15; +} +} +} +static double _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1() { +_start: +{ +lean_object* x_1; uint8_t x_2; double x_3; +x_1 = lean_unsigned_to_nat(0u); +x_2 = 0; +x_3 = l_Float_ofScientific(x_1, x_2, x_1); +return x_3; +} +} +static lean_object* _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("", 0, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_box(0); +x_2 = lean_array_mk(x_1); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +x_11 = lean_ctor_get(x_8, 5); +x_12 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_2, x_6, x_7, x_8, x_9, x_10); +x_13 = lean_ctor_get(x_12, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_12, 1); +lean_inc(x_14); +lean_dec(x_12); +x_15 = lean_st_ref_take(x_9, x_14); +x_16 = lean_ctor_get(x_15, 0); +lean_inc(x_16); +x_17 = lean_ctor_get(x_16, 3); +lean_inc(x_17); +x_18 = !lean_is_exclusive(x_15); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; uint8_t x_21; +x_19 = lean_ctor_get(x_15, 1); +x_20 = lean_ctor_get(x_15, 0); +lean_dec(x_20); +x_21 = !lean_is_exclusive(x_16); +if (x_21 == 0) +{ +lean_object* x_22; uint8_t x_23; +x_22 = lean_ctor_get(x_16, 3); +lean_dec(x_22); +x_23 = !lean_is_exclusive(x_17); +if (x_23 == 0) +{ +lean_object* x_24; double x_25; uint8_t x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; uint8_t x_33; +x_24 = lean_ctor_get(x_17, 0); +x_25 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +x_26 = 0; +x_27 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; +x_28 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_28, 0, x_1); +lean_ctor_set(x_28, 1, x_27); +lean_ctor_set_float(x_28, sizeof(void*)*2, x_25); +lean_ctor_set_float(x_28, sizeof(void*)*2 + 8, x_25); +lean_ctor_set_uint8(x_28, sizeof(void*)*2 + 16, x_26); +x_29 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +x_30 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_30, 0, x_28); +lean_ctor_set(x_30, 1, x_13); +lean_ctor_set(x_30, 2, x_29); +lean_inc(x_11); +lean_ctor_set(x_15, 1, x_30); +lean_ctor_set(x_15, 0, x_11); +x_31 = l_Lean_PersistentArray_push___rarg(x_24, x_15); +lean_ctor_set(x_17, 0, x_31); +x_32 = lean_st_ref_set(x_9, x_16, x_19); +x_33 = !lean_is_exclusive(x_32); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_32, 0); +lean_dec(x_34); +x_35 = lean_box(0); +lean_ctor_set(x_32, 0, x_35); +return x_32; +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; +x_36 = lean_ctor_get(x_32, 1); +lean_inc(x_36); +lean_dec(x_32); +x_37 = lean_box(0); +x_38 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_38, 0, x_37); +lean_ctor_set(x_38, 1, x_36); +return x_38; +} +} +else +{ +uint64_t x_39; lean_object* x_40; double x_41; uint8_t x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; +x_39 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); +x_40 = lean_ctor_get(x_17, 0); +lean_inc(x_40); +lean_dec(x_17); +x_41 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +x_42 = 0; +x_43 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; +x_44 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_44, 0, x_1); +lean_ctor_set(x_44, 1, x_43); +lean_ctor_set_float(x_44, sizeof(void*)*2, x_41); +lean_ctor_set_float(x_44, sizeof(void*)*2 + 8, x_41); +lean_ctor_set_uint8(x_44, sizeof(void*)*2 + 16, x_42); +x_45 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +x_46 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_46, 0, x_44); +lean_ctor_set(x_46, 1, x_13); +lean_ctor_set(x_46, 2, x_45); +lean_inc(x_11); +lean_ctor_set(x_15, 1, x_46); +lean_ctor_set(x_15, 0, x_11); +x_47 = l_Lean_PersistentArray_push___rarg(x_40, x_15); +x_48 = lean_alloc_ctor(0, 1, 8); +lean_ctor_set(x_48, 0, x_47); +lean_ctor_set_uint64(x_48, sizeof(void*)*1, x_39); +lean_ctor_set(x_16, 3, x_48); +x_49 = lean_st_ref_set(x_9, x_16, x_19); +x_50 = lean_ctor_get(x_49, 1); +lean_inc(x_50); +if (lean_is_exclusive(x_49)) { + lean_ctor_release(x_49, 0); + lean_ctor_release(x_49, 1); + x_51 = x_49; +} else { + lean_dec_ref(x_49); + x_51 = lean_box(0); +} +x_52 = lean_box(0); +if (lean_is_scalar(x_51)) { + x_53 = lean_alloc_ctor(0, 2, 0); +} else { + x_53 = x_51; +} +lean_ctor_set(x_53, 0, x_52); +lean_ctor_set(x_53, 1, x_50); +return x_53; +} +} +else +{ +lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; uint64_t x_61; lean_object* x_62; lean_object* x_63; double x_64; uint8_t x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; +x_54 = lean_ctor_get(x_16, 0); +x_55 = lean_ctor_get(x_16, 1); +x_56 = lean_ctor_get(x_16, 2); +x_57 = lean_ctor_get(x_16, 4); +x_58 = lean_ctor_get(x_16, 5); +x_59 = lean_ctor_get(x_16, 6); +x_60 = lean_ctor_get(x_16, 7); +lean_inc(x_60); +lean_inc(x_59); +lean_inc(x_58); +lean_inc(x_57); +lean_inc(x_56); +lean_inc(x_55); +lean_inc(x_54); +lean_dec(x_16); +x_61 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); +x_62 = lean_ctor_get(x_17, 0); +lean_inc(x_62); +if (lean_is_exclusive(x_17)) { + lean_ctor_release(x_17, 0); + x_63 = x_17; +} else { + lean_dec_ref(x_17); + x_63 = lean_box(0); +} +x_64 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +x_65 = 0; +x_66 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; +x_67 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_67, 0, x_1); +lean_ctor_set(x_67, 1, x_66); +lean_ctor_set_float(x_67, sizeof(void*)*2, x_64); +lean_ctor_set_float(x_67, sizeof(void*)*2 + 8, x_64); +lean_ctor_set_uint8(x_67, sizeof(void*)*2 + 16, x_65); +x_68 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +x_69 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_69, 0, x_67); +lean_ctor_set(x_69, 1, x_13); +lean_ctor_set(x_69, 2, x_68); +lean_inc(x_11); +lean_ctor_set(x_15, 1, x_69); +lean_ctor_set(x_15, 0, x_11); +x_70 = l_Lean_PersistentArray_push___rarg(x_62, x_15); +if (lean_is_scalar(x_63)) { + x_71 = lean_alloc_ctor(0, 1, 8); +} else { + x_71 = x_63; +} +lean_ctor_set(x_71, 0, x_70); +lean_ctor_set_uint64(x_71, sizeof(void*)*1, x_61); +x_72 = lean_alloc_ctor(0, 8, 0); +lean_ctor_set(x_72, 0, x_54); +lean_ctor_set(x_72, 1, x_55); +lean_ctor_set(x_72, 2, x_56); +lean_ctor_set(x_72, 3, x_71); +lean_ctor_set(x_72, 4, x_57); +lean_ctor_set(x_72, 5, x_58); +lean_ctor_set(x_72, 6, x_59); +lean_ctor_set(x_72, 7, x_60); +x_73 = lean_st_ref_set(x_9, x_72, x_19); +x_74 = lean_ctor_get(x_73, 1); +lean_inc(x_74); +if (lean_is_exclusive(x_73)) { + lean_ctor_release(x_73, 0); + lean_ctor_release(x_73, 1); + x_75 = x_73; +} else { + lean_dec_ref(x_73); + x_75 = lean_box(0); +} +x_76 = lean_box(0); +if (lean_is_scalar(x_75)) { + x_77 = lean_alloc_ctor(0, 2, 0); +} else { + x_77 = x_75; +} +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_74); +return x_77; +} +} +else +{ +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; uint64_t x_87; lean_object* x_88; lean_object* x_89; double x_90; uint8_t x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +x_78 = lean_ctor_get(x_15, 1); +lean_inc(x_78); +lean_dec(x_15); +x_79 = lean_ctor_get(x_16, 0); +lean_inc(x_79); +x_80 = lean_ctor_get(x_16, 1); +lean_inc(x_80); +x_81 = lean_ctor_get(x_16, 2); +lean_inc(x_81); +x_82 = lean_ctor_get(x_16, 4); +lean_inc(x_82); +x_83 = lean_ctor_get(x_16, 5); +lean_inc(x_83); +x_84 = lean_ctor_get(x_16, 6); +lean_inc(x_84); +x_85 = lean_ctor_get(x_16, 7); +lean_inc(x_85); +if (lean_is_exclusive(x_16)) { + lean_ctor_release(x_16, 0); + lean_ctor_release(x_16, 1); + lean_ctor_release(x_16, 2); + lean_ctor_release(x_16, 3); + lean_ctor_release(x_16, 4); + lean_ctor_release(x_16, 5); + lean_ctor_release(x_16, 6); + lean_ctor_release(x_16, 7); + x_86 = x_16; +} else { + lean_dec_ref(x_16); + x_86 = lean_box(0); +} +x_87 = lean_ctor_get_uint64(x_17, sizeof(void*)*1); +x_88 = lean_ctor_get(x_17, 0); +lean_inc(x_88); +if (lean_is_exclusive(x_17)) { + lean_ctor_release(x_17, 0); + x_89 = x_17; +} else { + lean_dec_ref(x_17); + x_89 = lean_box(0); +} +x_90 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +x_91 = 0; +x_92 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; +x_93 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_93, 0, x_1); +lean_ctor_set(x_93, 1, x_92); +lean_ctor_set_float(x_93, sizeof(void*)*2, x_90); +lean_ctor_set_float(x_93, sizeof(void*)*2 + 8, x_90); +lean_ctor_set_uint8(x_93, sizeof(void*)*2 + 16, x_91); +x_94 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +x_95 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_95, 0, x_93); +lean_ctor_set(x_95, 1, x_13); +lean_ctor_set(x_95, 2, x_94); +lean_inc(x_11); +x_96 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_96, 0, x_11); +lean_ctor_set(x_96, 1, x_95); +x_97 = l_Lean_PersistentArray_push___rarg(x_88, x_96); +if (lean_is_scalar(x_89)) { + x_98 = lean_alloc_ctor(0, 1, 8); +} else { + x_98 = x_89; +} +lean_ctor_set(x_98, 0, x_97); +lean_ctor_set_uint64(x_98, sizeof(void*)*1, x_87); +if (lean_is_scalar(x_86)) { + x_99 = lean_alloc_ctor(0, 8, 0); +} else { + x_99 = x_86; +} +lean_ctor_set(x_99, 0, x_79); +lean_ctor_set(x_99, 1, x_80); +lean_ctor_set(x_99, 2, x_81); +lean_ctor_set(x_99, 3, x_98); +lean_ctor_set(x_99, 4, x_82); +lean_ctor_set(x_99, 5, x_83); +lean_ctor_set(x_99, 6, x_84); +lean_ctor_set(x_99, 7, x_85); +x_100 = lean_st_ref_set(x_9, x_99, x_78); +x_101 = lean_ctor_get(x_100, 1); +lean_inc(x_101); +if (lean_is_exclusive(x_100)) { + lean_ctor_release(x_100, 0); + lean_ctor_release(x_100, 1); + x_102 = x_100; +} else { + lean_dec_ref(x_100); + x_102 = lean_box(0); +} +x_103 = lean_box(0); +if (lean_is_scalar(x_102)) { + x_104 = lean_alloc_ctor(0, 2, 0); +} else { + x_104 = x_102; +} +lean_ctor_set(x_104, 0, x_103); +lean_ctor_set(x_104, 1, x_101); +return x_104; +} +} +} +static lean_object* _init_l_Lean_Meta_Grind_reportIssue___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("issue", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reportIssue___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Lean_Meta_Grind_reportIssue___closed__1; +x_3 = l_Lean_Name_str___override(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reportIssue___closed__3() { +_start: +{ +lean_object* x_1; double x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Meta_Grind_reportIssue___closed__2; +x_2 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; +x_3 = 1; +x_4 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; +x_5 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_5, 0, x_1); +lean_ctor_set(x_5, 1, x_4); +lean_ctor_set_float(x_5, sizeof(void*)*2, x_2); +lean_ctor_set_float(x_5, sizeof(void*)*2 + 8, x_2); +lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 16, x_3); +return x_5; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reportIssue___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("issues", 6, 6); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_Grind_reportIssue___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69____closed__1; +x_2 = l_Lean_Meta_Grind_reportIssue___closed__4; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; +x_10 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_1, x_5, x_6, x_7, x_8, x_9); +x_11 = lean_ctor_get(x_10, 0); +lean_inc(x_11); +x_12 = lean_ctor_get(x_10, 1); +lean_inc(x_12); +lean_dec(x_10); +x_13 = lean_st_ref_take(x_4, x_12); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; uint8_t x_16; +x_15 = lean_ctor_get(x_13, 0); +x_16 = !lean_is_exclusive(x_15); +if (x_16 == 0) +{ +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; uint8_t x_27; +x_17 = lean_ctor_get(x_13, 1); +x_18 = lean_ctor_get(x_15, 8); +x_19 = l_Lean_Meta_Grind_reportIssue___closed__3; +x_20 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +lean_inc(x_11); +x_21 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_21, 0, x_19); +lean_ctor_set(x_21, 1, x_11); +lean_ctor_set(x_21, 2, x_20); +lean_ctor_set_tag(x_13, 1); +lean_ctor_set(x_13, 1, x_18); +lean_ctor_set(x_13, 0, x_21); +lean_ctor_set(x_15, 8, x_13); +x_22 = lean_st_ref_set(x_4, x_15, x_17); +x_23 = lean_ctor_get(x_22, 1); +lean_inc(x_23); +lean_dec(x_22); +x_24 = l_Lean_Meta_Grind_reportIssue___closed__5; +x_25 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_24, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_23); +x_26 = lean_ctor_get(x_25, 0); +lean_inc(x_26); +x_27 = lean_unbox(x_26); +lean_dec(x_26); +if (x_27 == 0) +{ +uint8_t x_28; +lean_dec(x_11); +x_28 = !lean_is_exclusive(x_25); +if (x_28 == 0) +{ +lean_object* x_29; lean_object* x_30; +x_29 = lean_ctor_get(x_25, 0); +lean_dec(x_29); +x_30 = lean_box(0); +lean_ctor_set(x_25, 0, x_30); +return x_25; +} +else +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; +x_31 = lean_ctor_get(x_25, 1); +lean_inc(x_31); +lean_dec(x_25); +x_32 = lean_box(0); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_32); +lean_ctor_set(x_33, 1, x_31); +return x_33; +} +} +else +{ +lean_object* x_34; lean_object* x_35; +x_34 = lean_ctor_get(x_25, 1); +lean_inc(x_34); +lean_dec(x_25); +x_35 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_24, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_34); +return x_35; +} +} +else +{ +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; uint8_t x_55; +x_36 = lean_ctor_get(x_13, 1); +x_37 = lean_ctor_get(x_15, 0); +x_38 = lean_ctor_get(x_15, 1); +x_39 = lean_ctor_get(x_15, 2); +x_40 = lean_ctor_get(x_15, 3); +x_41 = lean_ctor_get(x_15, 4); +x_42 = lean_ctor_get(x_15, 5); +x_43 = lean_ctor_get(x_15, 6); +x_44 = lean_ctor_get(x_15, 7); +x_45 = lean_ctor_get(x_15, 8); +lean_inc(x_45); +lean_inc(x_44); +lean_inc(x_43); +lean_inc(x_42); +lean_inc(x_41); +lean_inc(x_40); +lean_inc(x_39); +lean_inc(x_38); +lean_inc(x_37); +lean_dec(x_15); +x_46 = l_Lean_Meta_Grind_reportIssue___closed__3; +x_47 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +lean_inc(x_11); +x_48 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_48, 0, x_46); +lean_ctor_set(x_48, 1, x_11); +lean_ctor_set(x_48, 2, x_47); +lean_ctor_set_tag(x_13, 1); +lean_ctor_set(x_13, 1, x_45); +lean_ctor_set(x_13, 0, x_48); +x_49 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_49, 0, x_37); +lean_ctor_set(x_49, 1, x_38); +lean_ctor_set(x_49, 2, x_39); +lean_ctor_set(x_49, 3, x_40); +lean_ctor_set(x_49, 4, x_41); +lean_ctor_set(x_49, 5, x_42); +lean_ctor_set(x_49, 6, x_43); +lean_ctor_set(x_49, 7, x_44); +lean_ctor_set(x_49, 8, x_13); +x_50 = lean_st_ref_set(x_4, x_49, x_36); +x_51 = lean_ctor_get(x_50, 1); +lean_inc(x_51); +lean_dec(x_50); +x_52 = l_Lean_Meta_Grind_reportIssue___closed__5; +x_53 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_52, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_51); +x_54 = lean_ctor_get(x_53, 0); +lean_inc(x_54); +x_55 = lean_unbox(x_54); +lean_dec(x_54); +if (x_55 == 0) +{ +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +lean_dec(x_11); +x_56 = lean_ctor_get(x_53, 1); +lean_inc(x_56); +if (lean_is_exclusive(x_53)) { + lean_ctor_release(x_53, 0); + lean_ctor_release(x_53, 1); + x_57 = x_53; +} else { + lean_dec_ref(x_53); + x_57 = lean_box(0); +} +x_58 = lean_box(0); +if (lean_is_scalar(x_57)) { + x_59 = lean_alloc_ctor(0, 2, 0); +} else { + x_59 = x_57; +} +lean_ctor_set(x_59, 0, x_58); +lean_ctor_set(x_59, 1, x_56); +return x_59; +} +else +{ +lean_object* x_60; lean_object* x_61; +x_60 = lean_ctor_get(x_53, 1); +lean_inc(x_60); +lean_dec(x_53); +x_61 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_52, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_60); +return x_61; +} +} +} +else +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; uint8_t x_84; +x_62 = lean_ctor_get(x_13, 0); +x_63 = lean_ctor_get(x_13, 1); +lean_inc(x_63); +lean_inc(x_62); +lean_dec(x_13); +x_64 = lean_ctor_get(x_62, 0); +lean_inc(x_64); +x_65 = lean_ctor_get(x_62, 1); +lean_inc(x_65); +x_66 = lean_ctor_get(x_62, 2); +lean_inc(x_66); +x_67 = lean_ctor_get(x_62, 3); +lean_inc(x_67); +x_68 = lean_ctor_get(x_62, 4); +lean_inc(x_68); +x_69 = lean_ctor_get(x_62, 5); +lean_inc(x_69); +x_70 = lean_ctor_get(x_62, 6); +lean_inc(x_70); +x_71 = lean_ctor_get(x_62, 7); +lean_inc(x_71); +x_72 = lean_ctor_get(x_62, 8); +lean_inc(x_72); +if (lean_is_exclusive(x_62)) { + lean_ctor_release(x_62, 0); + lean_ctor_release(x_62, 1); + lean_ctor_release(x_62, 2); + lean_ctor_release(x_62, 3); + lean_ctor_release(x_62, 4); + lean_ctor_release(x_62, 5); + lean_ctor_release(x_62, 6); + lean_ctor_release(x_62, 7); + lean_ctor_release(x_62, 8); + x_73 = x_62; +} else { + lean_dec_ref(x_62); + x_73 = lean_box(0); +} +x_74 = l_Lean_Meta_Grind_reportIssue___closed__3; +x_75 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; +lean_inc(x_11); +x_76 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_76, 0, x_74); +lean_ctor_set(x_76, 1, x_11); +lean_ctor_set(x_76, 2, x_75); +x_77 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_77, 0, x_76); +lean_ctor_set(x_77, 1, x_72); +if (lean_is_scalar(x_73)) { + x_78 = lean_alloc_ctor(0, 9, 0); +} else { + x_78 = x_73; +} +lean_ctor_set(x_78, 0, x_64); +lean_ctor_set(x_78, 1, x_65); +lean_ctor_set(x_78, 2, x_66); +lean_ctor_set(x_78, 3, x_67); +lean_ctor_set(x_78, 4, x_68); +lean_ctor_set(x_78, 5, x_69); +lean_ctor_set(x_78, 6, x_70); +lean_ctor_set(x_78, 7, x_71); +lean_ctor_set(x_78, 8, x_77); +x_79 = lean_st_ref_set(x_4, x_78, x_63); +x_80 = lean_ctor_get(x_79, 1); +lean_inc(x_80); +lean_dec(x_79); +x_81 = l_Lean_Meta_Grind_reportIssue___closed__5; +x_82 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_81, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_80); +x_83 = lean_ctor_get(x_82, 0); +lean_inc(x_83); +x_84 = lean_unbox(x_83); +lean_dec(x_83); +if (x_84 == 0) +{ +lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; +lean_dec(x_11); +x_85 = lean_ctor_get(x_82, 1); +lean_inc(x_85); +if (lean_is_exclusive(x_82)) { + lean_ctor_release(x_82, 0); + lean_ctor_release(x_82, 1); + x_86 = x_82; +} else { + lean_dec_ref(x_82); + x_86 = lean_box(0); +} +x_87 = lean_box(0); +if (lean_is_scalar(x_86)) { + x_88 = lean_alloc_ctor(0, 2, 0); +} else { + x_88 = x_86; +} +lean_ctor_set(x_88, 0, x_87); +lean_ctor_set(x_88, 1, x_85); +return x_88; +} +else +{ +lean_object* x_89; lean_object* x_90; +x_89 = lean_ctor_get(x_82, 1); +lean_inc(x_89); +lean_dec(x_82); +x_90 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_81, x_11, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_89); +return x_90; +} +} +} +} +LEAN_EXPORT lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_isTracingEnabledFor___at_Lean_Meta_Grind_reportIssue___spec__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_10; +} +} +LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +_start: +{ +lean_object* x_11; +x_11 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +lean_dec(x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +return x_11; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +_start: +{ +lean_object* x_10; +x_10 = l_Lean_Meta_Grind_reportIssue(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9); +lean_dec(x_8); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +return x_10; +} +} static lean_object* _init_l_Lean_Meta_Grind_instInhabitedENode___closed__1() { _start: { @@ -3428,7 +4186,7 @@ x_1 = l_Lean_Meta_Grind_instInhabitedENode___closed__2; return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1() { _start: { lean_object* x_1; @@ -3436,29 +4194,29 @@ x_1 = lean_mk_string_unchecked("self", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2; +x_2 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4() { _start: { lean_object* x_1; @@ -3466,29 +4224,29 @@ x_1 = lean_mk_string_unchecked(" := ", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3; -x_2 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3; +x_2 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5; x_3 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -3497,7 +4255,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8() { _start: { lean_object* x_1; @@ -3505,17 +4263,17 @@ x_1 = lean_mk_string_unchecked(",", 1, 1); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10() { _start: { lean_object* x_1; @@ -3523,17 +4281,17 @@ x_1 = lean_mk_string_unchecked("next", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12() { _start: { lean_object* x_1; @@ -3541,17 +4299,17 @@ x_1 = lean_mk_string_unchecked("root", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14() { _start: { lean_object* x_1; @@ -3559,17 +4317,17 @@ x_1 = lean_mk_string_unchecked("congr", 5, 5); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16() { _start: { lean_object* x_1; lean_object* x_2; @@ -3578,7 +4336,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17() { _start: { lean_object* x_1; @@ -3586,17 +4344,17 @@ x_1 = lean_mk_string_unchecked("target\?", 7, 7); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19() { _start: { lean_object* x_1; lean_object* x_2; @@ -3605,7 +4363,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20() { _start: { lean_object* x_1; @@ -3613,17 +4371,17 @@ x_1 = lean_mk_string_unchecked("proof\?", 6, 6); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22() { _start: { lean_object* x_1; lean_object* x_2; @@ -3632,7 +4390,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23() { _start: { lean_object* x_1; @@ -3640,17 +4398,17 @@ x_1 = lean_mk_string_unchecked("flipped", 7, 7); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25() { _start: { lean_object* x_1; @@ -3658,17 +4416,17 @@ x_1 = lean_mk_string_unchecked("size", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27() { _start: { lean_object* x_1; @@ -3676,17 +4434,17 @@ x_1 = lean_mk_string_unchecked("interpreted", 11, 11); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29() { _start: { lean_object* x_1; lean_object* x_2; @@ -3695,7 +4453,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30() { _start: { lean_object* x_1; @@ -3703,17 +4461,17 @@ x_1 = lean_mk_string_unchecked("ctor", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32() { _start: { lean_object* x_1; @@ -3721,17 +4479,17 @@ x_1 = lean_mk_string_unchecked("hasLambdas", 10, 10); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34() { _start: { lean_object* x_1; lean_object* x_2; @@ -3740,7 +4498,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35() { _start: { lean_object* x_1; @@ -3748,17 +4506,17 @@ x_1 = lean_mk_string_unchecked("heqProofs", 9, 9); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37() { _start: { lean_object* x_1; lean_object* x_2; @@ -3767,7 +4525,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38() { _start: { lean_object* x_1; @@ -3775,17 +4533,17 @@ x_1 = lean_mk_string_unchecked("idx", 3, 3); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40() { _start: { lean_object* x_1; lean_object* x_2; @@ -3794,7 +4552,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41() { _start: { lean_object* x_1; @@ -3802,17 +4560,17 @@ x_1 = lean_mk_string_unchecked("generation", 10, 10); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43() { _start: { lean_object* x_1; @@ -3820,17 +4578,17 @@ x_1 = lean_mk_string_unchecked("mt", 2, 2); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45() { _start: { lean_object* x_1; lean_object* x_2; @@ -3839,7 +4597,7 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46() { _start: { lean_object* x_1; @@ -3847,17 +4605,17 @@ x_1 = lean_mk_string_unchecked("offset\?", 7, 7); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48() { _start: { lean_object* x_1; @@ -3865,35 +4623,35 @@ x_1 = lean_mk_string_unchecked("{ ", 2, 2); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48; x_2 = lean_string_length(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49; x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52() { _start: { lean_object* x_1; @@ -3901,17 +4659,17 @@ x_1 = lean_mk_string_unchecked(" }", 2, 2); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54() { _start: { lean_object* x_1; @@ -3919,17 +4677,17 @@ x_1 = lean_mk_string_unchecked("false", 5, 5); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56() { _start: { lean_object* x_1; @@ -3937,17 +4695,17 @@ x_1 = lean_mk_string_unchecked("true", 4, 4); return x_1; } } -static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57() { +static lean_object* _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56; +x_1 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56; x_2 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445_(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598_(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; uint8_t x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; uint8_t x_79; uint8_t x_80; uint8_t x_81; uint8_t x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; @@ -3955,7 +4713,7 @@ x_3 = lean_ctor_get(x_1, 0); lean_inc(x_3); x_4 = lean_unsigned_to_nat(0u); x_5 = l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hyg_3036_(x_3, x_4); -x_6 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7; +x_6 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7; x_7 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_7, 0, x_6); lean_ctor_set(x_7, 1, x_5); @@ -3963,11 +4721,11 @@ x_8 = 0; x_9 = lean_alloc_ctor(6, 1, 1); lean_ctor_set(x_9, 0, x_7); lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_8); -x_10 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6; +x_10 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6; x_11 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_11, 0, x_10); lean_ctor_set(x_11, 1, x_9); -x_12 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9; +x_12 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9; x_13 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_13, 0, x_11); lean_ctor_set(x_13, 1, x_12); @@ -3975,11 +4733,11 @@ x_14 = lean_box(1); x_15 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); -x_16 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11; +x_16 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11; x_17 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_17, 0, x_15); lean_ctor_set(x_17, 1, x_16); -x_18 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5; +x_18 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5; x_19 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_19, 0, x_17); lean_ctor_set(x_19, 1, x_18); @@ -4001,7 +4759,7 @@ lean_ctor_set(x_25, 1, x_12); x_26 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_26, 0, x_25); lean_ctor_set(x_26, 1, x_14); -x_27 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13; +x_27 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13; x_28 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); @@ -4026,7 +4784,7 @@ lean_ctor_set(x_35, 1, x_12); x_36 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_36, 0, x_35); lean_ctor_set(x_36, 1, x_14); -x_37 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15; +x_37 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15; x_38 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_38, 0, x_36); lean_ctor_set(x_38, 1, x_37); @@ -4036,7 +4794,7 @@ lean_ctor_set(x_39, 1, x_18); x_40 = lean_ctor_get(x_1, 3); lean_inc(x_40); x_41 = l___private_Lean_Expr_0__Lean_reprExpr____x40_Lean_Expr___hyg_3036_(x_40, x_4); -x_42 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16; +x_42 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16; x_43 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_43, 0, x_42); lean_ctor_set(x_43, 1, x_41); @@ -4052,7 +4810,7 @@ lean_ctor_set(x_46, 1, x_12); x_47 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_47, 0, x_46); lean_ctor_set(x_47, 1, x_14); -x_48 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18; +x_48 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18; x_49 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_49, 0, x_47); lean_ctor_set(x_49, 1, x_48); @@ -4062,7 +4820,7 @@ lean_ctor_set(x_50, 1, x_18); x_51 = lean_ctor_get(x_1, 4); lean_inc(x_51); x_52 = l_Option_repr___at___private_Lean_Meta_Transform_0__Lean_reprTransformStep____x40_Lean_Meta_Transform___hyg_46____spec__1(x_51, x_4); -x_53 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19; +x_53 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19; x_54 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_54, 0, x_53); lean_ctor_set(x_54, 1, x_52); @@ -4078,7 +4836,7 @@ lean_ctor_set(x_57, 1, x_12); x_58 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_58, 0, x_57); lean_ctor_set(x_58, 1, x_14); -x_59 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21; +x_59 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21; x_60 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_60, 0, x_58); lean_ctor_set(x_60, 1, x_59); @@ -4088,7 +4846,7 @@ lean_ctor_set(x_61, 1, x_18); x_62 = lean_ctor_get(x_1, 5); lean_inc(x_62); x_63 = l_Option_repr___at___private_Lean_Meta_Transform_0__Lean_reprTransformStep____x40_Lean_Meta_Transform___hyg_46____spec__1(x_62, x_4); -x_64 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22; +x_64 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22; x_65 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_65, 0, x_64); lean_ctor_set(x_65, 1, x_63); @@ -4104,7 +4862,7 @@ lean_ctor_set(x_68, 1, x_12); x_69 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_69, 0, x_68); lean_ctor_set(x_69, 1, x_14); -x_70 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24; +x_70 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24; x_71 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_71, 0, x_69); lean_ctor_set(x_71, 1, x_70); @@ -4132,7 +4890,7 @@ lean_inc(x_83); x_84 = l___private_Init_Data_Repr_0__Nat_reprFast(x_83); x_85 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_85, 0, x_84); -x_86 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40; +x_86 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40; x_87 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_87, 0, x_86); lean_ctor_set(x_87, 1, x_85); @@ -4144,7 +4902,7 @@ lean_inc(x_89); x_90 = l___private_Init_Data_Repr_0__Nat_reprFast(x_89); x_91 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_91, 0, x_90); -x_92 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34; +x_92 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34; x_93 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_93, 0, x_92); lean_ctor_set(x_93, 1, x_91); @@ -4156,7 +4914,7 @@ lean_inc(x_95); x_96 = l___private_Init_Data_Repr_0__Nat_reprFast(x_95); x_97 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_97, 0, x_96); -x_98 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45; +x_98 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45; x_99 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_99, 0, x_98); lean_ctor_set(x_99, 1, x_97); @@ -4176,14 +4934,14 @@ lean_ctor_set_uint8(x_104, sizeof(void*)*1, x_8); if (x_73 == 0) { lean_object* x_197; -x_197 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; +x_197 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; x_105 = x_197; goto block_196; } else { lean_object* x_198; -x_198 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +x_198 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; x_105 = x_198; goto block_196; } @@ -4205,7 +4963,7 @@ lean_ctor_set(x_109, 1, x_12); x_110 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_110, 0, x_109); lean_ctor_set(x_110, 1, x_14); -x_111 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26; +x_111 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26; x_112 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_112, 0, x_110); lean_ctor_set(x_112, 1, x_111); @@ -4221,7 +4979,7 @@ lean_ctor_set(x_115, 1, x_12); x_116 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_116, 0, x_115); lean_ctor_set(x_116, 1, x_14); -x_117 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28; +x_117 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28; x_118 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_118, 0, x_116); lean_ctor_set(x_118, 1, x_117); @@ -4231,21 +4989,21 @@ lean_ctor_set(x_119, 1, x_18); if (x_79 == 0) { lean_object* x_194; -x_194 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; +x_194 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; x_120 = x_194; goto block_193; } else { lean_object* x_195; -x_195 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +x_195 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; x_120 = x_195; goto block_193; } block_193: { lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; -x_121 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29; +x_121 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29; x_122 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_122, 0, x_121); lean_ctor_set(x_122, 1, x_120); @@ -4261,7 +5019,7 @@ lean_ctor_set(x_125, 1, x_12); x_126 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_126, 0, x_125); lean_ctor_set(x_126, 1, x_14); -x_127 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31; +x_127 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31; x_128 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_128, 0, x_126); lean_ctor_set(x_128, 1, x_127); @@ -4271,14 +5029,14 @@ lean_ctor_set(x_129, 1, x_18); if (x_80 == 0) { lean_object* x_191; -x_191 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; +x_191 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; x_130 = x_191; goto block_190; } else { lean_object* x_192; -x_192 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +x_192 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; x_130 = x_192; goto block_190; } @@ -4300,7 +5058,7 @@ lean_ctor_set(x_134, 1, x_12); x_135 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_135, 0, x_134); lean_ctor_set(x_135, 1, x_14); -x_136 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33; +x_136 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33; x_137 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_137, 0, x_135); lean_ctor_set(x_137, 1, x_136); @@ -4310,14 +5068,14 @@ lean_ctor_set(x_138, 1, x_18); if (x_81 == 0) { lean_object* x_188; -x_188 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; +x_188 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; x_139 = x_188; goto block_187; } else { lean_object* x_189; -x_189 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +x_189 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; x_139 = x_189; goto block_187; } @@ -4339,7 +5097,7 @@ lean_ctor_set(x_143, 1, x_12); x_144 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_144, 0, x_143); lean_ctor_set(x_144, 1, x_14); -x_145 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36; +x_145 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36; x_146 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_146, 0, x_144); lean_ctor_set(x_146, 1, x_145); @@ -4349,21 +5107,21 @@ lean_ctor_set(x_147, 1, x_18); if (x_82 == 0) { lean_object* x_185; -x_185 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55; +x_185 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55; x_148 = x_185; goto block_184; } else { lean_object* x_186; -x_186 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57; +x_186 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57; x_148 = x_186; goto block_184; } block_184: { lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; -x_149 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37; +x_149 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37; x_150 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_150, 0, x_149); lean_ctor_set(x_150, 1, x_148); @@ -4379,7 +5137,7 @@ lean_ctor_set(x_153, 1, x_12); x_154 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_154, 0, x_153); lean_ctor_set(x_154, 1, x_14); -x_155 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39; +x_155 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39; x_156 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_156, 0, x_154); lean_ctor_set(x_156, 1, x_155); @@ -4395,7 +5153,7 @@ lean_ctor_set(x_159, 1, x_12); x_160 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_160, 0, x_159); lean_ctor_set(x_160, 1, x_14); -x_161 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42; +x_161 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42; x_162 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_162, 0, x_160); lean_ctor_set(x_162, 1, x_161); @@ -4411,7 +5169,7 @@ lean_ctor_set(x_165, 1, x_12); x_166 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_166, 0, x_165); lean_ctor_set(x_166, 1, x_14); -x_167 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44; +x_167 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44; x_168 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_168, 0, x_166); lean_ctor_set(x_168, 1, x_167); @@ -4427,7 +5185,7 @@ lean_ctor_set(x_171, 1, x_12); x_172 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_172, 0, x_171); lean_ctor_set(x_172, 1, x_14); -x_173 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47; +x_173 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47; x_174 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_174, 0, x_172); lean_ctor_set(x_174, 1, x_173); @@ -4437,15 +5195,15 @@ lean_ctor_set(x_175, 1, x_18); x_176 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_176, 0, x_175); lean_ctor_set(x_176, 1, x_104); -x_177 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51; +x_177 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51; x_178 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_178, 0, x_177); lean_ctor_set(x_178, 1, x_176); -x_179 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53; +x_179 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53; x_180 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_180, 0, x_178); lean_ctor_set(x_180, 1, x_179); -x_181 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50; +x_181 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50; x_182 = lean_alloc_ctor(4, 2, 0); lean_ctor_set(x_182, 0, x_181); lean_ctor_set(x_182, 1, x_180); @@ -4460,11 +5218,11 @@ return x_183; } } } -LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445_(x_1, x_2); +x_3 = l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598_(x_1, x_2); lean_dec(x_2); return x_3; } @@ -4473,7 +5231,7 @@ static lean_object* _init_l_Lean_Meta_Grind_instReprENode___closed__1() { _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____boxed), 2, 0); +x_1 = lean_alloc_closure((void*)(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____boxed), 2, 0); return x_1; } } @@ -6174,20 +6932,20 @@ lean_ctor_set(x_16, 6, x_6); lean_ctor_set(x_16, 7, x_8); lean_ctor_set(x_16, 8, x_8); lean_ctor_set(x_16, 9, x_9); -lean_ctor_set(x_16, 10, x_10); +lean_ctor_set(x_16, 10, x_4); lean_ctor_set(x_16, 11, x_10); -lean_ctor_set(x_16, 12, x_11); -lean_ctor_set(x_16, 13, x_8); +lean_ctor_set(x_16, 12, x_10); +lean_ctor_set(x_16, 13, x_11); lean_ctor_set(x_16, 14, x_8); -lean_ctor_set(x_16, 15, x_12); -lean_ctor_set(x_16, 16, x_13); -lean_ctor_set(x_16, 17, x_14); -lean_ctor_set(x_16, 18, x_1); -lean_ctor_set(x_16, 19, x_8); -lean_ctor_set(x_16, 20, x_15); -lean_ctor_set(x_16, 21, x_8); -lean_ctor_set(x_16, 22, x_10); -lean_ctor_set(x_16, 23, x_1); +lean_ctor_set(x_16, 15, x_8); +lean_ctor_set(x_16, 16, x_12); +lean_ctor_set(x_16, 17, x_13); +lean_ctor_set(x_16, 18, x_14); +lean_ctor_set(x_16, 19, x_1); +lean_ctor_set(x_16, 20, x_8); +lean_ctor_set(x_16, 21, x_15); +lean_ctor_set(x_16, 22, x_8); +lean_ctor_set(x_16, 23, x_10); lean_ctor_set(x_16, 24, x_4); lean_ctor_set_uint8(x_16, sizeof(void*)*25, x_7); return x_16; @@ -6662,33 +7420,6 @@ return x_16; } } } -static double _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1() { -_start: -{ -lean_object* x_1; uint8_t x_2; double x_3; -x_1 = lean_unsigned_to_nat(0u); -x_2 = 0; -x_3 = l_Float_ofScientific(x_1, x_2, x_1); -return x_3; -} -} -static lean_object* _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("", 0, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_box(0); -x_2 = lean_array_mk(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10, lean_object* x_11) { _start: { @@ -6723,16 +7454,16 @@ if (x_24 == 0) { lean_object* x_25; double x_26; uint8_t x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; uint8_t x_34; x_25 = lean_ctor_get(x_18, 0); -x_26 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; +x_26 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; x_27 = 0; -x_28 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +x_28 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; x_29 = lean_alloc_ctor(0, 2, 17); lean_ctor_set(x_29, 0, x_1); lean_ctor_set(x_29, 1, x_28); lean_ctor_set_float(x_29, sizeof(void*)*2, x_26); lean_ctor_set_float(x_29, sizeof(void*)*2 + 8, x_26); lean_ctor_set_uint8(x_29, sizeof(void*)*2 + 16, x_27); -x_30 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_30 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_31 = lean_alloc_ctor(9, 3, 0); lean_ctor_set(x_31, 0, x_29); lean_ctor_set(x_31, 1, x_14); @@ -6773,16 +7504,16 @@ x_40 = lean_ctor_get_uint64(x_18, sizeof(void*)*1); x_41 = lean_ctor_get(x_18, 0); lean_inc(x_41); lean_dec(x_18); -x_42 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; +x_42 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; x_43 = 0; -x_44 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +x_44 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; x_45 = lean_alloc_ctor(0, 2, 17); lean_ctor_set(x_45, 0, x_1); lean_ctor_set(x_45, 1, x_44); lean_ctor_set_float(x_45, sizeof(void*)*2, x_42); lean_ctor_set_float(x_45, sizeof(void*)*2 + 8, x_42); lean_ctor_set_uint8(x_45, sizeof(void*)*2 + 16, x_43); -x_46 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_46 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_47 = lean_alloc_ctor(9, 3, 0); lean_ctor_set(x_47, 0, x_45); lean_ctor_set(x_47, 1, x_14); @@ -6845,16 +7576,16 @@ if (lean_is_exclusive(x_18)) { lean_dec_ref(x_18); x_64 = lean_box(0); } -x_65 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; +x_65 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; x_66 = 0; -x_67 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +x_67 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; x_68 = lean_alloc_ctor(0, 2, 17); lean_ctor_set(x_68, 0, x_1); lean_ctor_set(x_68, 1, x_67); lean_ctor_set_float(x_68, sizeof(void*)*2, x_65); lean_ctor_set_float(x_68, sizeof(void*)*2 + 8, x_65); lean_ctor_set_uint8(x_68, sizeof(void*)*2 + 16, x_66); -x_69 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_69 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_70 = lean_alloc_ctor(9, 3, 0); lean_ctor_set(x_70, 0, x_68); lean_ctor_set(x_70, 1, x_14); @@ -6945,16 +7676,16 @@ if (lean_is_exclusive(x_18)) { lean_dec_ref(x_18); x_90 = lean_box(0); } -x_91 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; +x_91 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1; x_92 = 0; -x_93 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +x_93 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; x_94 = lean_alloc_ctor(0, 2, 17); lean_ctor_set(x_94, 0, x_1); lean_ctor_set(x_94, 1, x_93); lean_ctor_set_float(x_94, sizeof(void*)*2, x_91); lean_ctor_set_float(x_94, sizeof(void*)*2 + 8, x_91); lean_ctor_set_uint8(x_94, sizeof(void*)*2 + 16, x_92); -x_95 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_95 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_96 = lean_alloc_ctor(9, 3, 0); lean_ctor_set(x_96, 0, x_94); lean_ctor_set(x_96, 1, x_14); @@ -7050,7 +7781,7 @@ return x_23; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; x_24 = lean_ctor_get(x_13, 0); x_25 = lean_ctor_get(x_13, 1); x_26 = lean_ctor_get(x_13, 2); @@ -7058,6 +7789,8 @@ x_27 = lean_ctor_get(x_13, 3); x_28 = lean_ctor_get(x_13, 4); x_29 = lean_ctor_get(x_13, 5); x_30 = lean_ctor_get(x_13, 6); +x_31 = lean_ctor_get(x_13, 8); +lean_inc(x_31); lean_inc(x_30); lean_inc(x_29); lean_inc(x_28); @@ -7066,35 +7799,36 @@ lean_inc(x_26); lean_inc(x_25); lean_inc(x_24); lean_dec(x_13); -x_31 = lean_alloc_ctor(0, 8, 0); -lean_ctor_set(x_31, 0, x_24); -lean_ctor_set(x_31, 1, x_25); -lean_ctor_set(x_31, 2, x_26); -lean_ctor_set(x_31, 3, x_27); -lean_ctor_set(x_31, 4, x_28); -lean_ctor_set(x_31, 5, x_29); -lean_ctor_set(x_31, 6, x_30); -lean_ctor_set(x_31, 7, x_1); -x_32 = lean_st_ref_set(x_6, x_31, x_14); -x_33 = lean_ctor_get(x_32, 1); -lean_inc(x_33); -if (lean_is_exclusive(x_32)) { - lean_ctor_release(x_32, 0); - lean_ctor_release(x_32, 1); - x_34 = x_32; +x_32 = lean_alloc_ctor(0, 9, 0); +lean_ctor_set(x_32, 0, x_24); +lean_ctor_set(x_32, 1, x_25); +lean_ctor_set(x_32, 2, x_26); +lean_ctor_set(x_32, 3, x_27); +lean_ctor_set(x_32, 4, x_28); +lean_ctor_set(x_32, 5, x_29); +lean_ctor_set(x_32, 6, x_30); +lean_ctor_set(x_32, 7, x_1); +lean_ctor_set(x_32, 8, x_31); +x_33 = lean_st_ref_set(x_6, x_32, x_14); +x_34 = lean_ctor_get(x_33, 1); +lean_inc(x_34); +if (lean_is_exclusive(x_33)) { + lean_ctor_release(x_33, 0); + lean_ctor_release(x_33, 1); + x_35 = x_33; } else { - lean_dec_ref(x_32); - x_34 = lean_box(0); + lean_dec_ref(x_33); + x_35 = lean_box(0); } -x_35 = lean_box(0); -if (lean_is_scalar(x_34)) { - x_36 = lean_alloc_ctor(0, 2, 0); +x_36 = lean_box(0); +if (lean_is_scalar(x_35)) { + x_37 = lean_alloc_ctor(0, 2, 0); } else { - x_36 = x_34; + x_37 = x_35; } -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_33); -return x_36; +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_34); +return x_37; } } } @@ -7615,574 +8349,6 @@ lean_dec(x_1); return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_1); -lean_ctor_set(x_8, 1, x_7); -return x_8; -} -} -static lean_object* _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("issue", 5, 5); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Lean_Meta_Grind_Goal_reportIssue___closed__1; -x_3 = l_Lean_Name_str___override(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__3() { -_start: -{ -lean_object* x_1; double x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Meta_Grind_Goal_reportIssue___closed__2; -x_2 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1; -x_3 = 1; -x_4 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; -x_5 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_5, 0, x_1); -lean_ctor_set(x_5, 1, x_4); -lean_ctor_set_float(x_5, sizeof(void*)*2, x_2); -lean_ctor_set_float(x_5, sizeof(void*)*2 + 8, x_2); -lean_ctor_set_uint8(x_5, sizeof(void*)*2 + 16, x_3); -return x_5; -} -} -static lean_object* _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("issues", 6, 6); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_Grind_initFn____x40_Lean_Meta_Tactic_Grind_Types___hyg_69____closed__1; -x_2 = l_Lean_Meta_Grind_Goal_reportIssue___closed__4; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; uint8_t x_9; -x_8 = l_Lean_addMessageContextFull___at_Lean_Meta_instAddMessageContextMetaM___spec__1(x_2, x_3, x_4, x_5, x_6, x_7); -x_9 = !lean_is_exclusive(x_8); -if (x_9 == 0) -{ -uint8_t x_10; -x_10 = !lean_is_exclusive(x_1); -if (x_10 == 0) -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_11 = lean_ctor_get(x_8, 0); -x_12 = lean_ctor_get(x_8, 1); -x_13 = lean_ctor_get(x_1, 23); -x_14 = l_Lean_Meta_Grind_Goal_reportIssue___closed__3; -x_15 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; -lean_inc(x_11); -x_16 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_16, 0, x_14); -lean_ctor_set(x_16, 1, x_11); -lean_ctor_set(x_16, 2, x_15); -lean_ctor_set_tag(x_8, 1); -lean_ctor_set(x_8, 1, x_13); -lean_ctor_set(x_8, 0, x_16); -lean_ctor_set(x_1, 23, x_8); -x_17 = l_Lean_Meta_Grind_Goal_reportIssue___closed__5; -x_18 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_17, x_3, x_4, x_5, x_6, x_12); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_unbox(x_19); -lean_dec(x_19); -if (x_20 == 0) -{ -uint8_t x_21; -lean_dec(x_11); -x_21 = !lean_is_exclusive(x_18); -if (x_21 == 0) -{ -lean_object* x_22; -x_22 = lean_ctor_get(x_18, 0); -lean_dec(x_22); -lean_ctor_set(x_18, 0, x_1); -return x_18; -} -else -{ -lean_object* x_23; lean_object* x_24; -x_23 = lean_ctor_get(x_18, 1); -lean_inc(x_23); -lean_dec(x_18); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_1); -lean_ctor_set(x_24, 1, x_23); -return x_24; -} -} -else -{ -lean_object* x_25; lean_object* x_26; uint8_t x_27; -x_25 = lean_ctor_get(x_18, 1); -lean_inc(x_25); -lean_dec(x_18); -x_26 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_17, x_11, x_3, x_4, x_5, x_6, x_25); -x_27 = !lean_is_exclusive(x_26); -if (x_27 == 0) -{ -lean_object* x_28; -x_28 = lean_ctor_get(x_26, 0); -lean_dec(x_28); -lean_ctor_set(x_26, 0, x_1); -return x_26; -} -else -{ -lean_object* x_29; lean_object* x_30; -x_29 = lean_ctor_get(x_26, 1); -lean_inc(x_29); -lean_dec(x_26); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_1); -lean_ctor_set(x_30, 1, x_29); -return x_30; -} -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; uint8_t x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; uint8_t x_66; -x_31 = lean_ctor_get(x_8, 0); -x_32 = lean_ctor_get(x_8, 1); -x_33 = lean_ctor_get(x_1, 0); -x_34 = lean_ctor_get(x_1, 1); -x_35 = lean_ctor_get(x_1, 2); -x_36 = lean_ctor_get(x_1, 3); -x_37 = lean_ctor_get(x_1, 4); -x_38 = lean_ctor_get(x_1, 5); -x_39 = lean_ctor_get(x_1, 6); -x_40 = lean_ctor_get_uint8(x_1, sizeof(void*)*25); -x_41 = lean_ctor_get(x_1, 7); -x_42 = lean_ctor_get(x_1, 8); -x_43 = lean_ctor_get(x_1, 9); -x_44 = lean_ctor_get(x_1, 10); -x_45 = lean_ctor_get(x_1, 11); -x_46 = lean_ctor_get(x_1, 12); -x_47 = lean_ctor_get(x_1, 13); -x_48 = lean_ctor_get(x_1, 14); -x_49 = lean_ctor_get(x_1, 15); -x_50 = lean_ctor_get(x_1, 16); -x_51 = lean_ctor_get(x_1, 17); -x_52 = lean_ctor_get(x_1, 18); -x_53 = lean_ctor_get(x_1, 19); -x_54 = lean_ctor_get(x_1, 20); -x_55 = lean_ctor_get(x_1, 21); -x_56 = lean_ctor_get(x_1, 22); -x_57 = lean_ctor_get(x_1, 23); -x_58 = lean_ctor_get(x_1, 24); -lean_inc(x_58); -lean_inc(x_57); -lean_inc(x_56); -lean_inc(x_55); -lean_inc(x_54); -lean_inc(x_53); -lean_inc(x_52); -lean_inc(x_51); -lean_inc(x_50); -lean_inc(x_49); -lean_inc(x_48); -lean_inc(x_47); -lean_inc(x_46); -lean_inc(x_45); -lean_inc(x_44); -lean_inc(x_43); -lean_inc(x_42); -lean_inc(x_41); -lean_inc(x_39); -lean_inc(x_38); -lean_inc(x_37); -lean_inc(x_36); -lean_inc(x_35); -lean_inc(x_34); -lean_inc(x_33); -lean_dec(x_1); -x_59 = l_Lean_Meta_Grind_Goal_reportIssue___closed__3; -x_60 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; -lean_inc(x_31); -x_61 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_61, 0, x_59); -lean_ctor_set(x_61, 1, x_31); -lean_ctor_set(x_61, 2, x_60); -lean_ctor_set_tag(x_8, 1); -lean_ctor_set(x_8, 1, x_57); -lean_ctor_set(x_8, 0, x_61); -x_62 = lean_alloc_ctor(0, 25, 1); -lean_ctor_set(x_62, 0, x_33); -lean_ctor_set(x_62, 1, x_34); -lean_ctor_set(x_62, 2, x_35); -lean_ctor_set(x_62, 3, x_36); -lean_ctor_set(x_62, 4, x_37); -lean_ctor_set(x_62, 5, x_38); -lean_ctor_set(x_62, 6, x_39); -lean_ctor_set(x_62, 7, x_41); -lean_ctor_set(x_62, 8, x_42); -lean_ctor_set(x_62, 9, x_43); -lean_ctor_set(x_62, 10, x_44); -lean_ctor_set(x_62, 11, x_45); -lean_ctor_set(x_62, 12, x_46); -lean_ctor_set(x_62, 13, x_47); -lean_ctor_set(x_62, 14, x_48); -lean_ctor_set(x_62, 15, x_49); -lean_ctor_set(x_62, 16, x_50); -lean_ctor_set(x_62, 17, x_51); -lean_ctor_set(x_62, 18, x_52); -lean_ctor_set(x_62, 19, x_53); -lean_ctor_set(x_62, 20, x_54); -lean_ctor_set(x_62, 21, x_55); -lean_ctor_set(x_62, 22, x_56); -lean_ctor_set(x_62, 23, x_8); -lean_ctor_set(x_62, 24, x_58); -lean_ctor_set_uint8(x_62, sizeof(void*)*25, x_40); -x_63 = l_Lean_Meta_Grind_Goal_reportIssue___closed__5; -x_64 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_63, x_3, x_4, x_5, x_6, x_32); -x_65 = lean_ctor_get(x_64, 0); -lean_inc(x_65); -x_66 = lean_unbox(x_65); -lean_dec(x_65); -if (x_66 == 0) -{ -lean_object* x_67; lean_object* x_68; lean_object* x_69; -lean_dec(x_31); -x_67 = lean_ctor_get(x_64, 1); -lean_inc(x_67); -if (lean_is_exclusive(x_64)) { - lean_ctor_release(x_64, 0); - lean_ctor_release(x_64, 1); - x_68 = x_64; -} else { - lean_dec_ref(x_64); - x_68 = lean_box(0); -} -if (lean_is_scalar(x_68)) { - x_69 = lean_alloc_ctor(0, 2, 0); -} else { - x_69 = x_68; -} -lean_ctor_set(x_69, 0, x_62); -lean_ctor_set(x_69, 1, x_67); -return x_69; -} -else -{ -lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; -x_70 = lean_ctor_get(x_64, 1); -lean_inc(x_70); -lean_dec(x_64); -x_71 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_63, x_31, x_3, x_4, x_5, x_6, x_70); -x_72 = lean_ctor_get(x_71, 1); -lean_inc(x_72); -if (lean_is_exclusive(x_71)) { - lean_ctor_release(x_71, 0); - lean_ctor_release(x_71, 1); - x_73 = x_71; -} else { - lean_dec_ref(x_71); - x_73 = lean_box(0); -} -if (lean_is_scalar(x_73)) { - x_74 = lean_alloc_ctor(0, 2, 0); -} else { - x_74 = x_73; -} -lean_ctor_set(x_74, 0, x_62); -lean_ctor_set(x_74, 1, x_72); -return x_74; -} -} -} -else -{ -lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; uint8_t x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; uint8_t x_112; -x_75 = lean_ctor_get(x_8, 0); -x_76 = lean_ctor_get(x_8, 1); -lean_inc(x_76); -lean_inc(x_75); -lean_dec(x_8); -x_77 = lean_ctor_get(x_1, 0); -lean_inc(x_77); -x_78 = lean_ctor_get(x_1, 1); -lean_inc(x_78); -x_79 = lean_ctor_get(x_1, 2); -lean_inc(x_79); -x_80 = lean_ctor_get(x_1, 3); -lean_inc(x_80); -x_81 = lean_ctor_get(x_1, 4); -lean_inc(x_81); -x_82 = lean_ctor_get(x_1, 5); -lean_inc(x_82); -x_83 = lean_ctor_get(x_1, 6); -lean_inc(x_83); -x_84 = lean_ctor_get_uint8(x_1, sizeof(void*)*25); -x_85 = lean_ctor_get(x_1, 7); -lean_inc(x_85); -x_86 = lean_ctor_get(x_1, 8); -lean_inc(x_86); -x_87 = lean_ctor_get(x_1, 9); -lean_inc(x_87); -x_88 = lean_ctor_get(x_1, 10); -lean_inc(x_88); -x_89 = lean_ctor_get(x_1, 11); -lean_inc(x_89); -x_90 = lean_ctor_get(x_1, 12); -lean_inc(x_90); -x_91 = lean_ctor_get(x_1, 13); -lean_inc(x_91); -x_92 = lean_ctor_get(x_1, 14); -lean_inc(x_92); -x_93 = lean_ctor_get(x_1, 15); -lean_inc(x_93); -x_94 = lean_ctor_get(x_1, 16); -lean_inc(x_94); -x_95 = lean_ctor_get(x_1, 17); -lean_inc(x_95); -x_96 = lean_ctor_get(x_1, 18); -lean_inc(x_96); -x_97 = lean_ctor_get(x_1, 19); -lean_inc(x_97); -x_98 = lean_ctor_get(x_1, 20); -lean_inc(x_98); -x_99 = lean_ctor_get(x_1, 21); -lean_inc(x_99); -x_100 = lean_ctor_get(x_1, 22); -lean_inc(x_100); -x_101 = lean_ctor_get(x_1, 23); -lean_inc(x_101); -x_102 = lean_ctor_get(x_1, 24); -lean_inc(x_102); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - lean_ctor_release(x_1, 2); - lean_ctor_release(x_1, 3); - lean_ctor_release(x_1, 4); - lean_ctor_release(x_1, 5); - lean_ctor_release(x_1, 6); - lean_ctor_release(x_1, 7); - lean_ctor_release(x_1, 8); - lean_ctor_release(x_1, 9); - lean_ctor_release(x_1, 10); - lean_ctor_release(x_1, 11); - lean_ctor_release(x_1, 12); - lean_ctor_release(x_1, 13); - lean_ctor_release(x_1, 14); - lean_ctor_release(x_1, 15); - lean_ctor_release(x_1, 16); - lean_ctor_release(x_1, 17); - lean_ctor_release(x_1, 18); - lean_ctor_release(x_1, 19); - lean_ctor_release(x_1, 20); - lean_ctor_release(x_1, 21); - lean_ctor_release(x_1, 22); - lean_ctor_release(x_1, 23); - lean_ctor_release(x_1, 24); - x_103 = x_1; -} else { - lean_dec_ref(x_1); - x_103 = lean_box(0); -} -x_104 = l_Lean_Meta_Grind_Goal_reportIssue___closed__3; -x_105 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; -lean_inc(x_75); -x_106 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_106, 0, x_104); -lean_ctor_set(x_106, 1, x_75); -lean_ctor_set(x_106, 2, x_105); -x_107 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_107, 0, x_106); -lean_ctor_set(x_107, 1, x_101); -if (lean_is_scalar(x_103)) { - x_108 = lean_alloc_ctor(0, 25, 1); -} else { - x_108 = x_103; -} -lean_ctor_set(x_108, 0, x_77); -lean_ctor_set(x_108, 1, x_78); -lean_ctor_set(x_108, 2, x_79); -lean_ctor_set(x_108, 3, x_80); -lean_ctor_set(x_108, 4, x_81); -lean_ctor_set(x_108, 5, x_82); -lean_ctor_set(x_108, 6, x_83); -lean_ctor_set(x_108, 7, x_85); -lean_ctor_set(x_108, 8, x_86); -lean_ctor_set(x_108, 9, x_87); -lean_ctor_set(x_108, 10, x_88); -lean_ctor_set(x_108, 11, x_89); -lean_ctor_set(x_108, 12, x_90); -lean_ctor_set(x_108, 13, x_91); -lean_ctor_set(x_108, 14, x_92); -lean_ctor_set(x_108, 15, x_93); -lean_ctor_set(x_108, 16, x_94); -lean_ctor_set(x_108, 17, x_95); -lean_ctor_set(x_108, 18, x_96); -lean_ctor_set(x_108, 19, x_97); -lean_ctor_set(x_108, 20, x_98); -lean_ctor_set(x_108, 21, x_99); -lean_ctor_set(x_108, 22, x_100); -lean_ctor_set(x_108, 23, x_107); -lean_ctor_set(x_108, 24, x_102); -lean_ctor_set_uint8(x_108, sizeof(void*)*25, x_84); -x_109 = l_Lean_Meta_Grind_Goal_reportIssue___closed__5; -x_110 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_109, x_3, x_4, x_5, x_6, x_76); -x_111 = lean_ctor_get(x_110, 0); -lean_inc(x_111); -x_112 = lean_unbox(x_111); -lean_dec(x_111); -if (x_112 == 0) -{ -lean_object* x_113; lean_object* x_114; lean_object* x_115; -lean_dec(x_75); -x_113 = lean_ctor_get(x_110, 1); -lean_inc(x_113); -if (lean_is_exclusive(x_110)) { - lean_ctor_release(x_110, 0); - lean_ctor_release(x_110, 1); - x_114 = x_110; -} else { - lean_dec_ref(x_110); - x_114 = lean_box(0); -} -if (lean_is_scalar(x_114)) { - x_115 = lean_alloc_ctor(0, 2, 0); -} else { - x_115 = x_114; -} -lean_ctor_set(x_115, 0, x_108); -lean_ctor_set(x_115, 1, x_113); -return x_115; -} -else -{ -lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; -x_116 = lean_ctor_get(x_110, 1); -lean_inc(x_116); -lean_dec(x_110); -x_117 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_109, x_75, x_3, x_4, x_5, x_6, x_116); -x_118 = lean_ctor_get(x_117, 1); -lean_inc(x_118); -if (lean_is_exclusive(x_117)) { - lean_ctor_release(x_117, 0); - lean_ctor_release(x_117, 1); - x_119 = x_117; -} else { - lean_dec_ref(x_117); - x_119 = lean_box(0); -} -if (lean_is_scalar(x_119)) { - x_120 = lean_alloc_ctor(0, 2, 0); -} else { - x_120 = x_119; -} -lean_ctor_set(x_120, 0, x_108); -lean_ctor_set(x_120, 1, x_118); -return x_120; -} -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_Grind_Goal_reportIssue___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_Goal_reportIssue___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { -_start: -{ -lean_object* x_8; -x_8 = l_Lean_Meta_Grind_Goal_reportIssue(x_1, x_2, x_3, x_4, x_5, x_6, x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -return x_8; -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_11 = lean_st_ref_get(x_2, x_10); -x_12 = lean_ctor_get(x_11, 0); -lean_inc(x_12); -x_13 = lean_ctor_get(x_11, 1); -lean_inc(x_13); -lean_dec(x_11); -x_14 = l_Lean_Meta_Grind_Goal_reportIssue(x_12, x_1, x_6, x_7, x_8, x_9, x_13); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -x_16 = lean_ctor_get(x_14, 1); -lean_inc(x_16); -lean_dec(x_14); -x_17 = lean_st_ref_set(x_2, x_15, x_16); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -return x_17; -} -else -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_19 = lean_ctor_get(x_17, 0); -x_20 = lean_ctor_get(x_17, 1); -lean_inc(x_20); -lean_inc(x_19); -lean_dec(x_17); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_19); -lean_ctor_set(x_21, 1, x_20); -return x_21; -} -} -} -LEAN_EXPORT lean_object* l_Lean_Meta_Grind_reportIssue___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { -_start: -{ -lean_object* x_11; -x_11 = l_Lean_Meta_Grind_reportIssue(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); -lean_dec(x_9); -lean_dec(x_8); -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -return x_11; -} -} static lean_object* _init_l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__1() { _start: { @@ -11469,10 +11635,10 @@ x_15 = !lean_is_exclusive(x_13); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_16 = lean_ctor_get(x_13, 15); +x_16 = lean_ctor_get(x_13, 16); x_17 = lean_box(0); x_18 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markTheoremInstance___spec__1(x_16, x_1, x_17); -lean_ctor_set(x_13, 15, x_18); +lean_ctor_set(x_13, 16, x_18); x_19 = lean_st_ref_set(x_3, x_13, x_14); x_20 = !lean_is_exclusive(x_19); if (x_20 == 0) @@ -11555,7 +11721,7 @@ lean_inc(x_29); lean_inc(x_28); lean_dec(x_13); x_54 = lean_box(0); -x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markTheoremInstance___spec__1(x_44, x_1, x_54); +x_55 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markTheoremInstance___spec__1(x_45, x_1, x_54); x_56 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_56, 0, x_28); lean_ctor_set(x_56, 1, x_29); @@ -11572,8 +11738,8 @@ lean_ctor_set(x_56, 11, x_40); lean_ctor_set(x_56, 12, x_41); lean_ctor_set(x_56, 13, x_42); lean_ctor_set(x_56, 14, x_43); -lean_ctor_set(x_56, 15, x_55); -lean_ctor_set(x_56, 16, x_45); +lean_ctor_set(x_56, 15, x_44); +lean_ctor_set(x_56, 16, x_55); lean_ctor_set(x_56, 17, x_46); lean_ctor_set(x_56, 18, x_47); lean_ctor_set(x_56, 19, x_48); @@ -11621,7 +11787,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_13, 1); -x_17 = lean_ctor_get(x_15, 15); +x_17 = lean_ctor_get(x_15, 16); lean_inc(x_17); lean_dec(x_15); x_18 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_markTheoremInstance___spec__9(x_17, x_12); @@ -11651,7 +11817,7 @@ x_24 = lean_ctor_get(x_13, 1); lean_inc(x_24); lean_inc(x_23); lean_dec(x_13); -x_25 = lean_ctor_get(x_23, 15); +x_25 = lean_ctor_get(x_23, 16); lean_inc(x_25); lean_dec(x_23); x_26 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_markTheoremInstance___spec__9(x_25, x_12); @@ -11983,13 +12149,13 @@ x_16 = !lean_is_exclusive(x_14); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; uint8_t x_21; -x_17 = lean_ctor_get(x_14, 16); +x_17 = lean_ctor_get(x_14, 17); x_18 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_18, 0, x_1); lean_ctor_set(x_18, 1, x_2); lean_ctor_set(x_18, 2, x_3); x_19 = l_Std_Queue_enqueue___rarg(x_18, x_17); -lean_ctor_set(x_14, 16, x_19); +lean_ctor_set(x_14, 17, x_19); x_20 = lean_st_ref_set(x_4, x_14, x_15); x_21 = !lean_is_exclusive(x_20); if (x_21 == 0) @@ -12073,7 +12239,7 @@ x_53 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_53, 0, x_1); lean_ctor_set(x_53, 1, x_2); lean_ctor_set(x_53, 2, x_3); -x_54 = l_Std_Queue_enqueue___rarg(x_53, x_44); +x_54 = l_Std_Queue_enqueue___rarg(x_53, x_45); x_55 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_55, 0, x_27); lean_ctor_set(x_55, 1, x_28); @@ -12091,8 +12257,8 @@ lean_ctor_set(x_55, 12, x_40); lean_ctor_set(x_55, 13, x_41); lean_ctor_set(x_55, 14, x_42); lean_ctor_set(x_55, 15, x_43); -lean_ctor_set(x_55, 16, x_54); -lean_ctor_set(x_55, 17, x_45); +lean_ctor_set(x_55, 16, x_44); +lean_ctor_set(x_55, 17, x_54); lean_ctor_set(x_55, 18, x_46); lean_ctor_set(x_55, 19, x_47); lean_ctor_set(x_55, 20, x_48); @@ -12158,11 +12324,11 @@ x_18 = !lean_is_exclusive(x_16); if (x_18 == 0) { lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_19 = lean_ctor_get(x_16, 13); +x_19 = lean_ctor_get(x_16, 14); x_20 = lean_unsigned_to_nat(1u); x_21 = lean_nat_add(x_19, x_20); lean_dec(x_19); -lean_ctor_set(x_16, 13, x_21); +lean_ctor_set(x_16, 14, x_21); x_22 = lean_st_ref_set(x_4, x_16, x_17); x_23 = !lean_is_exclusive(x_22); if (x_23 == 0) @@ -12243,8 +12409,8 @@ lean_inc(x_30); lean_inc(x_29); lean_dec(x_16); x_55 = lean_unsigned_to_nat(1u); -x_56 = lean_nat_add(x_43, x_55); -lean_dec(x_43); +x_56 = lean_nat_add(x_44, x_55); +lean_dec(x_44); x_57 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_57, 0, x_29); lean_ctor_set(x_57, 1, x_30); @@ -12259,8 +12425,8 @@ lean_ctor_set(x_57, 9, x_39); lean_ctor_set(x_57, 10, x_40); lean_ctor_set(x_57, 11, x_41); lean_ctor_set(x_57, 12, x_42); -lean_ctor_set(x_57, 13, x_56); -lean_ctor_set(x_57, 14, x_44); +lean_ctor_set(x_57, 13, x_43); +lean_ctor_set(x_57, 14, x_56); lean_ctor_set(x_57, 15, x_45); lean_ctor_set(x_57, 16, x_46); lean_ctor_set(x_57, 17, x_47); @@ -12330,7 +12496,7 @@ x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_15, 3); lean_inc(x_16); lean_dec(x_15); -x_17 = lean_ctor_get(x_11, 13); +x_17 = lean_ctor_get(x_11, 14); lean_inc(x_17); lean_dec(x_11); x_18 = lean_nat_dec_le(x_16, x_17); @@ -12351,7 +12517,7 @@ lean_dec(x_13); x_22 = lean_ctor_get(x_20, 3); lean_inc(x_22); lean_dec(x_20); -x_23 = lean_ctor_get(x_11, 13); +x_23 = lean_ctor_get(x_11, 14); lean_inc(x_23); lean_dec(x_11); x_24 = lean_nat_dec_le(x_22, x_23); @@ -12400,7 +12566,7 @@ x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_15, 0); lean_inc(x_16); lean_dec(x_15); -x_17 = lean_ctor_get(x_11, 19); +x_17 = lean_ctor_get(x_11, 20); lean_inc(x_17); lean_dec(x_11); x_18 = lean_nat_dec_le(x_16, x_17); @@ -12421,7 +12587,7 @@ lean_dec(x_13); x_22 = lean_ctor_get(x_20, 0); lean_inc(x_22); lean_dec(x_20); -x_23 = lean_ctor_get(x_11, 19); +x_23 = lean_ctor_get(x_11, 20); lean_inc(x_23); lean_dec(x_11); x_24 = lean_nat_dec_le(x_22, x_23); @@ -12470,7 +12636,7 @@ x_15 = lean_ctor_get(x_13, 0); x_16 = lean_ctor_get(x_15, 1); lean_inc(x_16); lean_dec(x_15); -x_17 = lean_ctor_get(x_11, 14); +x_17 = lean_ctor_get(x_11, 15); lean_inc(x_17); lean_dec(x_11); x_18 = lean_nat_dec_le(x_16, x_17); @@ -12491,7 +12657,7 @@ lean_dec(x_13); x_22 = lean_ctor_get(x_20, 1); lean_inc(x_22); lean_dec(x_20); -x_23 = lean_ctor_get(x_11, 14); +x_23 = lean_ctor_get(x_11, 15); lean_inc(x_23); lean_dec(x_11); x_24 = lean_nat_dec_le(x_22, x_23); @@ -12655,7 +12821,7 @@ static lean_object* _init_l_Lean_Meta_Grind_throwNonInternalizedExpr___rarg___cl _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2; +x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } @@ -22361,7 +22527,7 @@ _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; x_2 = l_Lean_PersistentHashMap_toArray___at_Lean_Meta_Grind_Goal_getENodes___spec__1___closed__1; -x_3 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_3 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_4 = l_Lean_PersistentHashMap_foldlMAux___at_Lean_MetavarContext_getExprAssignmentDomain___spec__2___rarg(x_2, x_1, x_3); return x_4; } @@ -23881,7 +24047,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__1; x_2 = l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__2; -x_3 = lean_unsigned_to_nat(816u); +x_3 = lean_unsigned_to_nat(814u); x_4 = lean_unsigned_to_nat(2u); x_5 = l_Lean_Meta_Grind_foldEqc___rarg___lambda__1___closed__3; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -24372,7 +24538,7 @@ LEAN_EXPORT lean_object* l_Lean_Meta_Grind_filterENodes(lean_object* x_1, lean_o _start: { lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; -x_11 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_11 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_12 = lean_st_mk_ref(x_11, x_10); x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); @@ -25182,7 +25348,7 @@ if (x_12 == 0) { lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; x_13 = lean_ctor_get(x_11, 0); -x_14 = lean_ctor_get(x_13, 20); +x_14 = lean_ctor_get(x_13, 21); lean_inc(x_14); lean_dec(x_13); x_15 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_isResolvedCaseSplit___spec__1(x_14, x_1); @@ -25198,7 +25364,7 @@ x_18 = lean_ctor_get(x_11, 1); lean_inc(x_18); lean_inc(x_17); lean_dec(x_11); -x_19 = lean_ctor_get(x_17, 20); +x_19 = lean_ctor_get(x_17, 21); lean_inc(x_19); lean_dec(x_17); x_20 = l_Lean_PersistentHashMap_contains___at_Lean_Meta_Grind_isResolvedCaseSplit___spec__1(x_19, x_1); @@ -25777,10 +25943,10 @@ x_15 = !lean_is_exclusive(x_13); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; uint8_t x_20; -x_16 = lean_ctor_get(x_13, 20); +x_16 = lean_ctor_get(x_13, 21); x_17 = lean_box(0); x_18 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__1(x_16, x_1, x_17); -lean_ctor_set(x_13, 20, x_18); +lean_ctor_set(x_13, 21, x_18); x_19 = lean_st_ref_set(x_3, x_13, x_14); x_20 = !lean_is_exclusive(x_19); if (x_20 == 0) @@ -25859,7 +26025,7 @@ lean_inc(x_25); lean_inc(x_24); lean_dec(x_13); x_50 = lean_box(0); -x_51 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__1(x_45, x_1, x_50); +x_51 = l_Lean_PersistentHashMap_insert___at_Lean_Meta_Grind_markCaseSplitAsResolved___spec__1(x_46, x_1, x_50); x_52 = lean_alloc_ctor(0, 25, 1); lean_ctor_set(x_52, 0, x_24); lean_ctor_set(x_52, 1, x_25); @@ -25881,8 +26047,8 @@ lean_ctor_set(x_52, 16, x_41); lean_ctor_set(x_52, 17, x_42); lean_ctor_set(x_52, 18, x_43); lean_ctor_set(x_52, 19, x_44); -lean_ctor_set(x_52, 20, x_51); -lean_ctor_set(x_52, 21, x_46); +lean_ctor_set(x_52, 20, x_45); +lean_ctor_set(x_52, 21, x_51); lean_ctor_set(x_52, 22, x_47); lean_ctor_set(x_52, 23, x_48); lean_ctor_set(x_52, 24, x_49); @@ -26921,7 +27087,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed_ _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_2 = lean_array_get_size(x_1); return x_2; } @@ -26930,7 +27096,7 @@ static lean_object* _init_l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_1 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_2 = lean_unsigned_to_nat(0u); x_3 = l_Lean_Meta_Grind_getExtTheorems___lambda__1___closed__2; x_4 = l_Array_insertionSort_traverse___at_Lean_Meta_Ext_getExtTheorems___spec__1(x_1, x_2, x_3); @@ -27024,7 +27190,7 @@ size_t x_81; size_t x_82; lean_object* x_83; lean_object* x_84; lean_object* x_8 x_81 = 0; x_82 = lean_usize_of_nat(x_75); lean_dec(x_75); -x_83 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_83 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_84 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_getExtTheorems___spec__8(x_70, x_73, x_81, x_82, x_83); lean_dec(x_73); x_85 = lean_array_get_size(x_84); @@ -27294,7 +27460,7 @@ size_t x_153; size_t x_154; lean_object* x_155; lean_object* x_156; lean_object* x_153 = 0; x_154 = lean_usize_of_nat(x_147); lean_dec(x_147); -x_155 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_155 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_156 = l_Array_foldlMUnsafe_fold___at_Lean_Meta_Grind_getExtTheorems___spec__8(x_142, x_145, x_153, x_154, x_155); lean_dec(x_145); x_157 = lean_array_get_size(x_156); @@ -27519,7 +27685,7 @@ if (x_14 == 0) lean_object* x_15; lean_object* x_16; x_15 = lean_ctor_get(x_11, 0); lean_dec(x_15); -x_16 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_16 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; lean_ctor_set(x_11, 0, x_16); return x_11; } @@ -27529,7 +27695,7 @@ lean_object* x_17; lean_object* x_18; lean_object* x_19; x_17 = lean_ctor_get(x_11, 1); lean_inc(x_17); lean_dec(x_11); -x_18 = l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3; +x_18 = l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3; x_19 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_19, 0, x_18); lean_ctor_set(x_19, 1, x_17); @@ -27744,6 +27910,7 @@ lean_object* initialize_Lean_Meta_Tactic_Util(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Ext(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_ENodeKey(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Attr(uint8_t builtin, lean_object*); +lean_object* initialize_Lean_Meta_Tactic_Grind_Cases(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_Arith_Types(uint8_t builtin, lean_object*); lean_object* initialize_Lean_Meta_Tactic_Grind_EMatchTheorem(uint8_t builtin, lean_object*); static bool _G_initialized = false; @@ -27787,6 +27954,9 @@ lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Attr(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +res = initialize_Lean_Meta_Tactic_Grind_Cases(builtin, lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); res = initialize_Lean_Meta_Tactic_Grind_Arith_Types(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); @@ -27850,126 +28020,141 @@ l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__2 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__2(); l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__3 = _init_l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__3(); lean_mark_persistent(l_Lean_PersistentHashMap_insertAux___at_Lean_Meta_Grind_mkHCongrWithArity___spec__2___closed__3); +l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__1(); +l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2(); +lean_mark_persistent(l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__2); +l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3(); +lean_mark_persistent(l_Lean_addTrace___at_Lean_Meta_Grind_reportIssue___spec__2___closed__3); +l_Lean_Meta_Grind_reportIssue___closed__1 = _init_l_Lean_Meta_Grind_reportIssue___closed__1(); +lean_mark_persistent(l_Lean_Meta_Grind_reportIssue___closed__1); +l_Lean_Meta_Grind_reportIssue___closed__2 = _init_l_Lean_Meta_Grind_reportIssue___closed__2(); +lean_mark_persistent(l_Lean_Meta_Grind_reportIssue___closed__2); +l_Lean_Meta_Grind_reportIssue___closed__3 = _init_l_Lean_Meta_Grind_reportIssue___closed__3(); +lean_mark_persistent(l_Lean_Meta_Grind_reportIssue___closed__3); +l_Lean_Meta_Grind_reportIssue___closed__4 = _init_l_Lean_Meta_Grind_reportIssue___closed__4(); +lean_mark_persistent(l_Lean_Meta_Grind_reportIssue___closed__4); +l_Lean_Meta_Grind_reportIssue___closed__5 = _init_l_Lean_Meta_Grind_reportIssue___closed__5(); +lean_mark_persistent(l_Lean_Meta_Grind_reportIssue___closed__5); l_Lean_Meta_Grind_instInhabitedENode___closed__1 = _init_l_Lean_Meta_Grind_instInhabitedENode___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_instInhabitedENode___closed__1); l_Lean_Meta_Grind_instInhabitedENode___closed__2 = _init_l_Lean_Meta_Grind_instInhabitedENode___closed__2(); lean_mark_persistent(l_Lean_Meta_Grind_instInhabitedENode___closed__2); l_Lean_Meta_Grind_instInhabitedENode = _init_l_Lean_Meta_Grind_instInhabitedENode(); lean_mark_persistent(l_Lean_Meta_Grind_instInhabitedENode); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__1); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__2); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__3); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__4); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__5); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__6); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__7); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__8); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__9); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__10); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__11); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__12); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__13); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__14); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__15); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__16); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__17); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__18); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__19); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__20); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__21); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__22); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__23); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__24); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__25); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__26); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__27); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__28); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__29); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__30); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__31); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__32); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__33); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__34); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__35); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__36); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__37); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__38); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__39); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__40); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__41); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__42); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__43); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__44); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__45); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__46); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__47); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__48); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__49); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__50); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__51); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__52); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__53); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__54); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__55); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__56); -l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57(); -lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1445____closed__57); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__1); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__2); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__3); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__4); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__5); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__6); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__7); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__8); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__9); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__10); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__11); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__12); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__13); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__14); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__15); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__16); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__17); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__18); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__19); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__20); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__21); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__22); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__23); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__24); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__25); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__26); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__27); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__28); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__29); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__30); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__31); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__32); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__33); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__34); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__35); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__36); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__37); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__38); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__39); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__40); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__41); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__42); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__43); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__44); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__45); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__46); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__47); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__48); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__49); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__50); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__51); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__52); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__53); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__54); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__55); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__56); +l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57 = _init_l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57(); +lean_mark_persistent(l___private_Lean_Meta_Tactic_Grind_Types_0__Lean_Meta_Grind_reprENode____x40_Lean_Meta_Tactic_Grind_Types___hyg_1598____closed__57); l_Lean_Meta_Grind_instReprENode___closed__1 = _init_l_Lean_Meta_Grind_instReprENode___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_instReprENode___closed__1); l_Lean_Meta_Grind_instReprENode = _init_l_Lean_Meta_Grind_instReprENode(); @@ -28023,11 +28208,6 @@ l_Lean_Meta_Grind_instInhabitedGoal = _init_l_Lean_Meta_Grind_instInhabitedGoal( lean_mark_persistent(l_Lean_Meta_Grind_instInhabitedGoal); l_Lean_Meta_Grind_GoalM_run_x27___closed__1 = _init_l_Lean_Meta_Grind_GoalM_run_x27___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_GoalM_run_x27___closed__1); -l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__1(); -l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2(); -lean_mark_persistent(l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__2); -l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3 = _init_l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3(); -lean_mark_persistent(l_Lean_addTrace___at_Lean_Meta_Grind_updateLastTag___spec__2___closed__3); l_Lean_Meta_Grind_updateLastTag___closed__1 = _init_l_Lean_Meta_Grind_updateLastTag___closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_updateLastTag___closed__1); l_Lean_Meta_Grind_updateLastTag___closed__2 = _init_l_Lean_Meta_Grind_updateLastTag___closed__2(); @@ -28038,16 +28218,6 @@ l_Lean_Meta_Grind_updateLastTag___closed__4 = _init_l_Lean_Meta_Grind_updateLast lean_mark_persistent(l_Lean_Meta_Grind_updateLastTag___closed__4); l_Lean_Meta_Grind_updateLastTag___closed__5 = _init_l_Lean_Meta_Grind_updateLastTag___closed__5(); lean_mark_persistent(l_Lean_Meta_Grind_updateLastTag___closed__5); -l_Lean_Meta_Grind_Goal_reportIssue___closed__1 = _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__1(); -lean_mark_persistent(l_Lean_Meta_Grind_Goal_reportIssue___closed__1); -l_Lean_Meta_Grind_Goal_reportIssue___closed__2 = _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__2(); -lean_mark_persistent(l_Lean_Meta_Grind_Goal_reportIssue___closed__2); -l_Lean_Meta_Grind_Goal_reportIssue___closed__3 = _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__3(); -lean_mark_persistent(l_Lean_Meta_Grind_Goal_reportIssue___closed__3); -l_Lean_Meta_Grind_Goal_reportIssue___closed__4 = _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__4(); -lean_mark_persistent(l_Lean_Meta_Grind_Goal_reportIssue___closed__4); -l_Lean_Meta_Grind_Goal_reportIssue___closed__5 = _init_l_Lean_Meta_Grind_Goal_reportIssue___closed__5(); -lean_mark_persistent(l_Lean_Meta_Grind_Goal_reportIssue___closed__5); l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__1 = _init_l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__1(); lean_mark_persistent(l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__1); l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__2 = _init_l_Lean_Meta_Grind_doElemTrace__goal_x5b___x5d_______closed__2(); diff --git a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c index 3cd8678c3f..0fb3d638eb 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c +++ b/stage0/stdlib/Lean/Meta/Tactic/Simp/SimpTheorems.c @@ -17,7 +17,6 @@ lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_createNodes_ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_checkTypeIsProp(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_const___override(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_reprOrigin____x40_Lean_Meta_Tactic_Simp_SimpTheorems___hyg_82____closed__11; -lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SimpTheoremsArray_isDeclToUnfold___boxed(lean_object*, lean_object*); lean_object* l_Lean_Name_reprPrec(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_DiscrTree_0__Lean_Meta_DiscrTree_insertVal_loop___at_Lean_Meta_addSimpTheoremEntry___spec__10(lean_object*, lean_object*, lean_object*); @@ -191,6 +190,7 @@ lean_object* l_Lean_registerSimpleScopedEnvExtension___rarg(lean_object*, lean_o static lean_object* l_Lean_ScopedEnvExtension_add___at_Lean_Meta_addSimpTheorem___spec__1___closed__2; LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_containsAux___at___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_eraseIfExists___spec__2___boxed(lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); +lean_object* l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(lean_object*, lean_object*); lean_object* lean_nat_to_int(lean_object*); lean_object* l_Lean_MessageData_ofSyntax(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_Simp_SimpTheorems_0__Lean_Meta_mkSimpTheoremsFromConst(lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1014,7 +1014,7 @@ x_100 = lean_box(1); x_101 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_101, 0, x_1); lean_ctor_set(x_101, 1, x_100); -x_102 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_95, x_96); +x_102 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_95, x_96); x_103 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_103, 0, x_101); lean_ctor_set(x_103, 1, x_102); @@ -1066,7 +1066,7 @@ x_121 = lean_box(1); x_122 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_122, 0, x_120); lean_ctor_set(x_122, 1, x_121); -x_123 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2170_(x_115, x_116); +x_123 = l___private_Init_Meta_0__Lean_Syntax_reprSyntax____x40_Init_Meta___hyg_2178_(x_115, x_116); x_124 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_124, 0, x_122); lean_ctor_set(x_124, 1, x_123); diff --git a/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c b/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c index 955a372bfd..a79d82d256 100644 --- a/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c +++ b/stage0/stdlib/Lean/Meta/Tactic/SplitIf.c @@ -28,9 +28,11 @@ LEAN_EXPORT lean_object* l_Lean_Meta_simpIfLocalDecl(lean_object*, lean_object*, LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_noConfusion___rarg(uint8_t, uint8_t, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__9; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppNumArgsAux(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11; uint8_t l_Lean_Expr_isDIte(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__8; +static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__6(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_visit___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -39,14 +41,13 @@ static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_S lean_object* lean_whnf(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__3; static lean_object* l_Lean_Meta_simpIfLocalDecl___closed__3; -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__2; LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_visit___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Exception_isInterrupt(lean_object*); lean_object* l_Lean_mkAppB(lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_mix_hash(uint64_t, uint64_t); lean_object* l_Lean_Meta_isExprDefEq(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); size_t lean_uint64_to_usize(uint64_t); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__2; @@ -60,16 +61,15 @@ static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f_unsafe__1___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_toCtorIdx(uint8_t); lean_object* l_Lean_Expr_sort___override(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_checkVisited___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_commitWhenSome_x3f___at_Lean_Meta_splitIfLocalDecl_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_LocalContext_findDeclRevM_x3f___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f___elambda__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3; static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__10; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3; lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* l_Lean_MVarId_byCasesDec(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Meta_Match_MatcherInfo_arity(lean_object*); @@ -79,54 +79,55 @@ static lean_object* l_Lean_Meta_SplitKind_noConfusion___rarg___closed__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__7; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_go(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__1; -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getBoundedAppFn(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f___closed__1; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1; uint8_t l_Lean_Expr_isAppOf(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__3___closed__3; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10; -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1; lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_stringToMessageData(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__5; static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__5; static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__3; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__8; static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__9; static lean_object* l_Lean_Meta_simpIfTarget___closed__6; +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9; lean_object* l_Lean_Meta_getSimpCongrTheorems___rarg(lean_object*, lean_object*); lean_object* l_Lean_Expr_appArg_x21(lean_object*); static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__4; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__6; static uint64_t l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__1; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_visit_visitApp_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; lean_object* l_Lean_LocalDecl_index(lean_object*); static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__2; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1; uint8_t l_Lean_Expr_hasMVar(lean_object*); size_t lean_ptr_addr(lean_object*); lean_object* l_Lean_Name_mkStr3(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___closed__2; LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13; size_t lean_usize_of_nat(lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__4; LEAN_EXPORT uint8_t l_Lean_Meta_SplitKind_considerIte(uint8_t); LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_noConfusion(lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5; static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6; extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_Meta_instInhabitedSimpTheorems___spec__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__1; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Expr_getRevArg_x21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_find_x3f_unsafe__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__6; static lean_object* l_Lean_Meta_simpIfTarget___closed__3; @@ -134,22 +135,24 @@ static lean_object* l_Lean_Meta_simpIfTarget___closed__8; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__3; static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__12; uint64_t lean_uint64_shift_right(uint64_t, uint64_t); -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690_(lean_object*); lean_object* l_Lean_Meta_getFunInfo(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_usize_to_uint64(size_t); static lean_object* l_Lean_Meta_simpIfTarget___closed__5; lean_object* lean_nat_div(lean_object*, lean_object*); lean_object* l_Lean_MVarId_getType(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4; lean_object* l_Lean_registerTraceClass(lean_object*, uint8_t, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevM_x3f___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__3; lean_object* l_Lean_Meta_SavedState_restore(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5; LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_checkVisited___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_simpIfTarget___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___closed__1; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2; lean_object* l_Lean_MessageData_ofFormat(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_Meta_synthPendingImp___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -163,14 +166,12 @@ LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f(lean_object*, lean_object LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevMAux___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_splitIfLocalDecl_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l_Lean_Expr_hasLooseBVars(lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_num___override(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_getSimpContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9; lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_Simp_congrArgs___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_levelZero; LEAN_EXPORT lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -184,14 +185,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f(uint8_t, lean_objec uint64_t l_Lean_Expr_hash(lean_object*); lean_object* l_Lean_Meta_mkDecide(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7; uint8_t lean_name_eq(lean_object*, lean_object*); lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__11; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15; lean_object* l_Lean_Meta_Simp_mkContext(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f___elambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_simpIfTarget(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13; lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_considerIte___boxed(lean_object*); uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Expr_NumObjs_visit___spec__1(lean_object*, lean_object*); @@ -201,39 +201,41 @@ lean_object* l_Lean_Meta_saveState___rarg(lean_object*, lean_object*, lean_objec LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_considerMatch___boxed(lean_object*); static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__7; uint8_t l_Lean_LocalDecl_isAuxDecl(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__6; static lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___closed__1; static lean_object* l_Lean_Meta_simpIfTarget___closed__2; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4; -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__1; static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__1; LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_mkDischarge_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_MessageData_ofExpr(lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__7; LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15; +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786_(lean_object*); +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__5(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1; +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; static lean_object* l_Lean_Meta_simpIfTarget___closed__10; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f___closed__5; uint8_t lean_nat_dec_eq(lean_object*, lean_object*); lean_object* l_Lean_mkApp3(lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6; +static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2; uint8_t lean_nat_dec_lt(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__1___boxed(lean_object*); +static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f(lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8; lean_object* l_Lean_Meta_mkEqRefl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_indentExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_noConfusion___rarg___lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8; static lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___closed__2; uint8_t l_Lean_Expr_isConstOf(lean_object*, lean_object*); static lean_object* l_Std_Range_forIn_x27_loop___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___spec__1___closed__1; @@ -241,7 +243,6 @@ lean_object* lean_array_set(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_simpIfTarget___closed__4; lean_object* l_Lean_LocalDecl_type(lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12; LEAN_EXPORT lean_object* l_Lean_Meta_SplitKind_noConfusion___rarg___lambda__1(lean_object*); lean_object* l_Lean_addTrace___at_Lean_Meta_Simp_congrArgs___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -252,6 +253,7 @@ uint64_t lean_uint64_shift_left(uint64_t, uint64_t); LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_checkVisited___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_commitWhenSome_x3f___at_Lean_Meta_splitIfTarget_x3f___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_PersistentHashMap_mkEmptyEntriesArray(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; lean_object* l_Lean_Meta_SimpTheorems_addConst(lean_object*, lean_object*, uint8_t, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__7; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f___closed__3; @@ -260,7 +262,6 @@ lean_object* lean_array_mk(lean_object*); LEAN_EXPORT uint8_t l_Lean_Meta_SplitKind_considerMatch(uint8_t); LEAN_EXPORT lean_object* l_Array_findSomeRevM_x3f_find___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__4; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10; LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_find_x3f_unsafe__1(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__6; extern lean_object* l_Lean_Meta_Simp_defaultMaxSteps; @@ -273,7 +274,8 @@ lean_object* l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(lean LEAN_EXPORT lean_object* l_Lean_Expr_withAppAux___at_Lean_Meta_FindSplitImpl_visit_visitApp_x3f___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f_find_x3f___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_local_ctx_num_indices(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3; +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__3___closed__4; lean_object* l___private_Lean_Expr_0__Lean_Expr_getAppArgsAux(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__5; @@ -282,7 +284,6 @@ static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_di extern lean_object* l_Lean_PersistentHashMap_empty___at_Lean_KeyedDeclsAttribute_instInhabitedExtensionState___spec__1; lean_object* l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___closed__5; -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4; lean_object* lean_array_get_size(lean_object*); lean_object* l_Lean_LocalDecl_toExpr(lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentArray_findSomeRevM_x3f___at___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -290,23 +291,24 @@ LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindS LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_checkVisited(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_infer_type(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14; +static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1; static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__7; uint64_t l_Lean_Meta_TransparencyMode_toUInt64(uint8_t); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__4; -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2; uint8_t l_Lean_Exception_isRuntime(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__13; -static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; uint8_t l_Lean_Meta_ParamInfo_isExplicit(lean_object*); +static lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5; lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Lean_Meta_findSplit_x3f___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11; LEAN_EXPORT lean_object* l_Lean_Meta_FindSplitImpl_visit(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___lambda__2___closed__8; LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Meta_SplitIf_getSimpContext___closed__2; +static lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; lean_object* l_Lean_Meta_isProof(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_FindSplitImpl_isCandidate_x3f___lambda__3___closed__1; lean_object* l_panic___at_Lean_Meta_subst_substEq___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -7261,7 +7263,18 @@ lean_dec(x_3); return x_8; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; +x_7 = lean_box(0); +x_8 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_8, 0, x_7); +lean_ctor_set(x_8, 1, x_6); +return x_8; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; @@ -7319,7 +7332,7 @@ return x_22; } } } -static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1() { _start: { lean_object* x_1; @@ -7327,16 +7340,16 @@ x_1 = lean_mk_string_unchecked("splitting on ", 13, 13); return x_1; } } -static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1; +x_1 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9) { _start: { lean_object* x_10; lean_object* x_11; lean_object* x_12; uint8_t x_13; @@ -7353,7 +7366,7 @@ x_14 = lean_ctor_get(x_11, 1); lean_inc(x_14); lean_dec(x_11); x_15 = lean_box(0); -x_16 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_4, x_15, x_5, x_6, x_7, x_8, x_14); +x_16 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_2, x_3, x_4, x_15, x_5, x_6, x_7, x_8, x_14); return x_16; } else @@ -7368,7 +7381,7 @@ x_19 = lean_ctor_get(x_11, 0); lean_dec(x_19); lean_inc(x_3); x_20 = l_Lean_MessageData_ofExpr(x_3); -x_21 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2; +x_21 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2; lean_ctor_set_tag(x_11, 7); lean_ctor_set(x_11, 1, x_20); lean_ctor_set(x_11, 0, x_21); @@ -7382,7 +7395,7 @@ lean_inc(x_25); x_26 = lean_ctor_get(x_24, 1); lean_inc(x_26); lean_dec(x_24); -x_27 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_4, x_25, x_5, x_6, x_7, x_8, x_26); +x_27 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_2, x_3, x_4, x_25, x_5, x_6, x_7, x_8, x_26); lean_dec(x_25); return x_27; } @@ -7394,7 +7407,7 @@ lean_inc(x_28); lean_dec(x_11); lean_inc(x_3); x_29 = l_Lean_MessageData_ofExpr(x_3); -x_30 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2; +x_30 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2; x_31 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_31, 0, x_30); lean_ctor_set(x_31, 1, x_29); @@ -7408,14 +7421,39 @@ lean_inc(x_35); x_36 = lean_ctor_get(x_34, 1); lean_inc(x_36); lean_dec(x_34); -x_37 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_4, x_35, x_5, x_6, x_7, x_8, x_36); +x_37 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_2, x_3, x_4, x_35, x_5, x_6, x_7, x_8, x_36); lean_dec(x_35); return x_37; } } } } -static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1() { +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1___boxed), 6, 0); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("could not find if to split:", 27, 27); +return x_1; +} +} +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2; +x_2 = l_Lean_stringToMessageData(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4() { _start: { lean_object* x_1; @@ -7423,140 +7461,368 @@ x_1 = lean_mk_string_unchecked("h", 1, 1); return x_1; } } -static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2() { +static lean_object* _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1; +x_2 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_9; uint8_t x_10; x_9 = l_Lean_instantiateMVars___at___private_Lean_Meta_Basic_0__Lean_Meta_isClassApp_x3f___spec__1(x_1, x_4, x_5, x_6, x_7, x_8); -x_10 = lean_ctor_get(x_9, 0); -lean_inc(x_10); -x_11 = lean_ctor_get(x_9, 1); +x_10 = !lean_is_exclusive(x_9); +if (x_10 == 0) +{ +lean_object* x_11; lean_object* x_12; lean_object* x_13; +x_11 = lean_ctor_get(x_9, 0); +x_12 = lean_ctor_get(x_9, 1); +lean_inc(x_7); +lean_inc(x_6); +lean_inc(x_5); +lean_inc(x_4); lean_inc(x_11); +x_13 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f(x_11, x_4, x_5, x_6, x_7, x_12); +if (lean_obj_tag(x_13) == 0) +{ +lean_object* x_14; +x_14 = lean_ctor_get(x_13, 0); +lean_inc(x_14); +if (lean_obj_tag(x_14) == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; +lean_dec(x_3); +lean_dec(x_2); +x_15 = lean_ctor_get(x_13, 1); +lean_inc(x_15); +lean_dec(x_13); +x_16 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; +x_17 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_16, x_4, x_5, x_6, x_7, x_15); +x_18 = !lean_is_exclusive(x_17); +if (x_18 == 0) +{ +lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; +x_19 = lean_ctor_get(x_17, 0); +x_20 = lean_ctor_get(x_17, 1); +x_21 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; +x_22 = lean_unbox(x_19); +lean_dec(x_19); +if (x_22 == 0) +{ +lean_object* x_23; lean_object* x_24; +lean_free_object(x_17); +lean_free_object(x_9); +lean_dec(x_11); +x_23 = lean_box(0); +x_24 = lean_apply_6(x_21, x_23, x_4, x_5, x_6, x_7, x_20); +return x_24; +} +else +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +x_25 = l_Lean_indentExpr(x_11); +x_26 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3; +lean_ctor_set_tag(x_17, 7); +lean_ctor_set(x_17, 1, x_25); +lean_ctor_set(x_17, 0, x_26); +x_27 = l_Lean_Meta_findSplit_x3f_find_x3f___closed__7; +lean_ctor_set_tag(x_9, 7); +lean_ctor_set(x_9, 1, x_27); +lean_ctor_set(x_9, 0, x_17); +x_28 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_16, x_9, x_4, x_5, x_6, x_7, x_20); +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +x_30 = lean_ctor_get(x_28, 1); +lean_inc(x_30); +lean_dec(x_28); +x_31 = lean_apply_6(x_21, x_29, x_4, x_5, x_6, x_7, x_30); +return x_31; +} +} +else +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; uint8_t x_35; +x_32 = lean_ctor_get(x_17, 0); +x_33 = lean_ctor_get(x_17, 1); +lean_inc(x_33); +lean_inc(x_32); +lean_dec(x_17); +x_34 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; +x_35 = lean_unbox(x_32); +lean_dec(x_32); +if (x_35 == 0) +{ +lean_object* x_36; lean_object* x_37; +lean_free_object(x_9); +lean_dec(x_11); +x_36 = lean_box(0); +x_37 = lean_apply_6(x_34, x_36, x_4, x_5, x_6, x_7, x_33); +return x_37; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; +x_38 = l_Lean_indentExpr(x_11); +x_39 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3; +x_40 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_40, 0, x_39); +lean_ctor_set(x_40, 1, x_38); +x_41 = l_Lean_Meta_findSplit_x3f_find_x3f___closed__7; +lean_ctor_set_tag(x_9, 7); +lean_ctor_set(x_9, 1, x_41); +lean_ctor_set(x_9, 0, x_40); +x_42 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_16, x_9, x_4, x_5, x_6, x_7, x_33); +x_43 = lean_ctor_get(x_42, 0); +lean_inc(x_43); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); +lean_dec(x_42); +x_45 = lean_apply_6(x_34, x_43, x_4, x_5, x_6, x_7, x_44); +return x_45; +} +} +} +else +{ +lean_object* x_46; +lean_free_object(x_9); +lean_dec(x_11); +x_46 = lean_ctor_get(x_14, 0); +lean_inc(x_46); +lean_dec(x_14); +if (lean_obj_tag(x_3) == 0) +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_47 = lean_ctor_get(x_13, 1); +lean_inc(x_47); +lean_dec(x_13); +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_ctor_get(x_46, 1); +lean_inc(x_49); +lean_dec(x_46); +x_50 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5; +x_51 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_50, x_6, x_7, x_47); +x_52 = lean_ctor_get(x_51, 0); +lean_inc(x_52); +x_53 = lean_ctor_get(x_51, 1); +lean_inc(x_53); +lean_dec(x_51); +x_54 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(x_2, x_48, x_49, x_52, x_4, x_5, x_6, x_7, x_53); +return x_54; +} +else +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; +x_55 = lean_ctor_get(x_13, 1); +lean_inc(x_55); +lean_dec(x_13); +x_56 = lean_ctor_get(x_46, 0); +lean_inc(x_56); +x_57 = lean_ctor_get(x_46, 1); +lean_inc(x_57); +lean_dec(x_46); +x_58 = lean_ctor_get(x_3, 0); +lean_inc(x_58); +lean_dec(x_3); +x_59 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(x_2, x_56, x_57, x_58, x_4, x_5, x_6, x_7, x_55); +return x_59; +} +} +} +else +{ +uint8_t x_60; +lean_free_object(x_9); +lean_dec(x_11); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +x_60 = !lean_is_exclusive(x_13); +if (x_60 == 0) +{ +return x_13; +} +else +{ +lean_object* x_61; lean_object* x_62; lean_object* x_63; +x_61 = lean_ctor_get(x_13, 0); +x_62 = lean_ctor_get(x_13, 1); +lean_inc(x_62); +lean_inc(x_61); +lean_dec(x_13); +x_63 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_63, 0, x_61); +lean_ctor_set(x_63, 1, x_62); +return x_63; +} +} +} +else +{ +lean_object* x_64; lean_object* x_65; lean_object* x_66; +x_64 = lean_ctor_get(x_9, 0); +x_65 = lean_ctor_get(x_9, 1); +lean_inc(x_65); +lean_inc(x_64); lean_dec(x_9); lean_inc(x_7); lean_inc(x_6); lean_inc(x_5); lean_inc(x_4); -x_12 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f(x_10, x_4, x_5, x_6, x_7, x_11); -if (lean_obj_tag(x_12) == 0) +lean_inc(x_64); +x_66 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_findIfToSplit_x3f(x_64, x_4, x_5, x_6, x_7, x_65); +if (lean_obj_tag(x_66) == 0) { -lean_object* x_13; -x_13 = lean_ctor_get(x_12, 0); -lean_inc(x_13); -if (lean_obj_tag(x_13) == 0) +lean_object* x_67; +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +if (lean_obj_tag(x_67) == 0) { -uint8_t x_14; -lean_dec(x_7); -lean_dec(x_6); -lean_dec(x_5); -lean_dec(x_4); +lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; lean_dec(x_3); lean_dec(x_2); -x_14 = !lean_is_exclusive(x_12); -if (x_14 == 0) +x_68 = lean_ctor_get(x_66, 1); +lean_inc(x_68); +lean_dec(x_66); +x_69 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; +x_70 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_69, x_4, x_5, x_6, x_7, x_68); +x_71 = lean_ctor_get(x_70, 0); +lean_inc(x_71); +x_72 = lean_ctor_get(x_70, 1); +lean_inc(x_72); +if (lean_is_exclusive(x_70)) { + lean_ctor_release(x_70, 0); + lean_ctor_release(x_70, 1); + x_73 = x_70; +} else { + lean_dec_ref(x_70); + x_73 = lean_box(0); +} +x_74 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; +x_75 = lean_unbox(x_71); +lean_dec(x_71); +if (x_75 == 0) { -lean_object* x_15; lean_object* x_16; -x_15 = lean_ctor_get(x_12, 0); -lean_dec(x_15); -x_16 = lean_box(0); -lean_ctor_set(x_12, 0, x_16); -return x_12; +lean_object* x_76; lean_object* x_77; +lean_dec(x_73); +lean_dec(x_64); +x_76 = lean_box(0); +x_77 = lean_apply_6(x_74, x_76, x_4, x_5, x_6, x_7, x_72); +return x_77; } else { -lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = lean_ctor_get(x_12, 1); -lean_inc(x_17); -lean_dec(x_12); -x_18 = lean_box(0); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_17); -return x_19; +lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; +x_78 = l_Lean_indentExpr(x_64); +x_79 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3; +if (lean_is_scalar(x_73)) { + x_80 = lean_alloc_ctor(7, 2, 0); +} else { + x_80 = x_73; + lean_ctor_set_tag(x_80, 7); +} +lean_ctor_set(x_80, 0, x_79); +lean_ctor_set(x_80, 1, x_78); +x_81 = l_Lean_Meta_findSplit_x3f_find_x3f___closed__7; +x_82 = lean_alloc_ctor(7, 2, 0); +lean_ctor_set(x_82, 0, x_80); +lean_ctor_set(x_82, 1, x_81); +x_83 = l_Lean_addTrace___at_Lean_Meta_processPostponed_loop___spec__2(x_69, x_82, x_4, x_5, x_6, x_7, x_72); +x_84 = lean_ctor_get(x_83, 0); +lean_inc(x_84); +x_85 = lean_ctor_get(x_83, 1); +lean_inc(x_85); +lean_dec(x_83); +x_86 = lean_apply_6(x_74, x_84, x_4, x_5, x_6, x_7, x_85); +return x_86; } } else { -lean_object* x_20; -x_20 = lean_ctor_get(x_13, 0); -lean_inc(x_20); -lean_dec(x_13); +lean_object* x_87; +lean_dec(x_64); +x_87 = lean_ctor_get(x_67, 0); +lean_inc(x_87); +lean_dec(x_67); if (lean_obj_tag(x_3) == 0) { -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_21 = lean_ctor_get(x_12, 1); -lean_inc(x_21); -lean_dec(x_12); -x_22 = lean_ctor_get(x_20, 0); -lean_inc(x_22); -x_23 = lean_ctor_get(x_20, 1); -lean_inc(x_23); -lean_dec(x_20); -x_24 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2; -x_25 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_24, x_6, x_7, x_21); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); -x_27 = lean_ctor_get(x_25, 1); -lean_inc(x_27); -lean_dec(x_25); -x_28 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_2, x_22, x_23, x_26, x_4, x_5, x_6, x_7, x_27); -return x_28; +lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; +x_88 = lean_ctor_get(x_66, 1); +lean_inc(x_88); +lean_dec(x_66); +x_89 = lean_ctor_get(x_87, 0); +lean_inc(x_89); +x_90 = lean_ctor_get(x_87, 1); +lean_inc(x_90); +lean_dec(x_87); +x_91 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5; +x_92 = l___private_Lean_CoreM_0__Lean_Core_mkFreshNameImp(x_91, x_6, x_7, x_88); +x_93 = lean_ctor_get(x_92, 0); +lean_inc(x_93); +x_94 = lean_ctor_get(x_92, 1); +lean_inc(x_94); +lean_dec(x_92); +x_95 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(x_2, x_89, x_90, x_93, x_4, x_5, x_6, x_7, x_94); +return x_95; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; -x_29 = lean_ctor_get(x_12, 1); -lean_inc(x_29); -lean_dec(x_12); -x_30 = lean_ctor_get(x_20, 0); -lean_inc(x_30); -x_31 = lean_ctor_get(x_20, 1); -lean_inc(x_31); -lean_dec(x_20); -x_32 = lean_ctor_get(x_3, 0); -lean_inc(x_32); +lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; +x_96 = lean_ctor_get(x_66, 1); +lean_inc(x_96); +lean_dec(x_66); +x_97 = lean_ctor_get(x_87, 0); +lean_inc(x_97); +x_98 = lean_ctor_get(x_87, 1); +lean_inc(x_98); +lean_dec(x_87); +x_99 = lean_ctor_get(x_3, 0); +lean_inc(x_99); lean_dec(x_3); -x_33 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_2, x_30, x_31, x_32, x_4, x_5, x_6, x_7, x_29); -return x_33; +x_100 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3(x_2, x_97, x_98, x_99, x_4, x_5, x_6, x_7, x_96); +return x_100; } } } else { -uint8_t x_34; +lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; +lean_dec(x_64); lean_dec(x_7); lean_dec(x_6); lean_dec(x_5); lean_dec(x_4); lean_dec(x_3); lean_dec(x_2); -x_34 = !lean_is_exclusive(x_12); -if (x_34 == 0) -{ -return x_12; +x_101 = lean_ctor_get(x_66, 0); +lean_inc(x_101); +x_102 = lean_ctor_get(x_66, 1); +lean_inc(x_102); +if (lean_is_exclusive(x_66)) { + lean_ctor_release(x_66, 0); + lean_ctor_release(x_66, 1); + x_103 = x_66; +} else { + lean_dec_ref(x_66); + x_103 = lean_box(0); } -else -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_35 = lean_ctor_get(x_12, 0); -x_36 = lean_ctor_get(x_12, 1); -lean_inc(x_36); -lean_inc(x_35); -lean_dec(x_12); -x_37 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_37, 0, x_35); -lean_ctor_set(x_37, 1, x_36); -return x_37; +if (lean_is_scalar(x_103)) { + x_104 = lean_alloc_ctor(1, 2, 0); +} else { + x_104 = x_103; +} +lean_ctor_set(x_104, 0, x_101); +lean_ctor_set(x_104, 1, x_102); +return x_104; } } } @@ -7566,7 +7832,7 @@ _start: { lean_object* x_9; lean_object* x_10; lean_inc(x_1); -x_9 = lean_alloc_closure((void*)(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3), 8, 3); +x_9 = lean_alloc_closure((void*)(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4), 8, 3); lean_closure_set(x_9, 0, x_2); lean_closure_set(x_9, 1, x_1); lean_closure_set(x_9, 2, x_3); @@ -7574,11 +7840,24 @@ x_10 = l_Lean_MVarId_withContext___at___private_Lean_Meta_SynthInstance_0__Lean_ return x_10; } } -LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; +x_7 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_7; +} +} +LEAN_EXPORT lean_object* l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8, lean_object* x_9, lean_object* x_10) { _start: { lean_object* x_11; -x_11 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); +x_11 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8, x_9, x_10); lean_dec(x_5); return x_11; } @@ -7696,7 +7975,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_simpIfTarget___closed__8; x_2 = l_Lean_Meta_simpIfTarget___closed__9; -x_3 = lean_unsigned_to_nat(203u); +x_3 = lean_unsigned_to_nat(204u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Meta_simpIfTarget___closed__10; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -7920,7 +8199,7 @@ _start: lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Lean_Meta_simpIfTarget___closed__8; x_2 = l_Lean_Meta_simpIfLocalDecl___closed__2; -x_3 = lean_unsigned_to_nat(210u); +x_3 = lean_unsigned_to_nat(211u); x_4 = lean_unsigned_to_nat(4u); x_5 = l_Lean_Meta_simpIfTarget___closed__10; x_6 = l___private_Init_Util_0__mkPanicMessageWithDecl(x_1, x_2, x_3, x_4, x_5); @@ -8326,18 +8605,7 @@ return x_21; } } } -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; lean_object* x_8; -x_7 = lean_box(0); -x_8 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_8, 0, x_7); -lean_ctor_set(x_8, 1, x_6); -return x_8; -} -} -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1() { _start: { lean_object* x_1; @@ -8345,25 +8613,17 @@ x_1 = lean_mk_string_unchecked("failure", 7, 7); return x_1; } } -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Lean_Meta_findSplit_x3f_find_x3f___closed__1; -x_2 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1; +x_2 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3() { -_start: -{ -lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Lean_Meta_splitIfTarget_x3f___lambda__1___boxed), 6, 0); -return x_1; -} -} -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3() { _start: { lean_object* x_1; @@ -8371,16 +8631,16 @@ x_1 = lean_mk_string_unchecked("`split` tactic failed to simplify target using n return x_1; } } -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4; +x_1 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5() { _start: { lean_object* x_1; @@ -8388,16 +8648,16 @@ x_1 = lean_mk_string_unchecked("\n", 1, 1); return x_1; } } -static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7() { +static lean_object* _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6; +x_1 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5; x_2 = l_Lean_stringToMessageData(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__2(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; @@ -8561,7 +8821,7 @@ lean_free_object(x_21); lean_dec(x_28); lean_free_object(x_20); lean_free_object(x_12); -x_42 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_42 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_43 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_42, x_3, x_4, x_5, x_6, x_39); x_44 = !lean_is_exclusive(x_43); if (x_44 == 0) @@ -8569,7 +8829,7 @@ if (x_44 == 0) lean_object* x_45; lean_object* x_46; lean_object* x_47; uint8_t x_48; x_45 = lean_ctor_get(x_43, 0); x_46 = lean_ctor_get(x_43, 1); -x_47 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_47 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_48 = lean_unbox(x_45); lean_dec(x_45); if (x_48 == 0) @@ -8587,11 +8847,11 @@ else lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; x_51 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_51, 0, x_31); -x_52 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_52 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; lean_ctor_set_tag(x_43, 7); lean_ctor_set(x_43, 1, x_51); lean_ctor_set(x_43, 0, x_52); -x_53 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_53 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_54 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_54, 0, x_43); lean_ctor_set(x_54, 1, x_53); @@ -8622,7 +8882,7 @@ x_64 = lean_ctor_get(x_43, 1); lean_inc(x_64); lean_inc(x_63); lean_dec(x_43); -x_65 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_65 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_66 = lean_unbox(x_63); lean_dec(x_63); if (x_66 == 0) @@ -8639,11 +8899,11 @@ else lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; x_69 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_69, 0, x_31); -x_70 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_70 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; x_71 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_71, 0, x_70); lean_ctor_set(x_71, 1, x_69); -x_72 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_72 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_73 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_73, 0, x_71); lean_ctor_set(x_73, 1, x_72); @@ -8730,7 +8990,7 @@ lean_free_object(x_21); lean_dec(x_28); lean_free_object(x_20); lean_free_object(x_12); -x_88 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_88 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_89 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_88, x_3, x_4, x_5, x_6, x_83); x_90 = lean_ctor_get(x_89, 0); lean_inc(x_90); @@ -8744,7 +9004,7 @@ if (lean_is_exclusive(x_89)) { lean_dec_ref(x_89); x_92 = lean_box(0); } -x_93 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_93 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_94 = lean_unbox(x_90); lean_dec(x_90); if (x_94 == 0) @@ -8762,7 +9022,7 @@ else lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; x_97 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_97, 0, x_31); -x_98 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_98 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_92)) { x_99 = lean_alloc_ctor(7, 2, 0); } else { @@ -8771,7 +9031,7 @@ if (lean_is_scalar(x_92)) { } lean_ctor_set(x_99, 0, x_98); lean_ctor_set(x_99, 1, x_97); -x_100 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_100 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_101 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_101, 0, x_99); lean_ctor_set(x_101, 1, x_100); @@ -8925,7 +9185,7 @@ lean_free_object(x_21); lean_dec(x_28); lean_free_object(x_20); lean_free_object(x_12); -x_126 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_126 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_127 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_126, x_3, x_4, x_5, x_6, x_118); x_128 = lean_ctor_get(x_127, 0); lean_inc(x_128); @@ -8939,7 +9199,7 @@ if (lean_is_exclusive(x_127)) { lean_dec_ref(x_127); x_130 = lean_box(0); } -x_131 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_131 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_132 = lean_unbox(x_128); lean_dec(x_128); if (x_132 == 0) @@ -8957,7 +9217,7 @@ else lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; x_135 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_135, 0, x_31); -x_136 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_136 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_130)) { x_137 = lean_alloc_ctor(7, 2, 0); } else { @@ -8966,7 +9226,7 @@ if (lean_is_scalar(x_130)) { } lean_ctor_set(x_137, 0, x_136); lean_ctor_set(x_137, 1, x_135); -x_138 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_138 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_139 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_139, 0, x_137); lean_ctor_set(x_139, 1, x_138); @@ -9191,7 +9451,7 @@ lean_dec(x_163); lean_dec(x_157); lean_free_object(x_20); lean_free_object(x_12); -x_177 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_177 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_178 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_177, x_3, x_4, x_5, x_6, x_167); x_179 = lean_ctor_get(x_178, 0); lean_inc(x_179); @@ -9205,7 +9465,7 @@ if (lean_is_exclusive(x_178)) { lean_dec_ref(x_178); x_181 = lean_box(0); } -x_182 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_182 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_183 = lean_unbox(x_179); lean_dec(x_179); if (x_183 == 0) @@ -9223,7 +9483,7 @@ else lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; x_186 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_186, 0, x_160); -x_187 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_187 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_181)) { x_188 = lean_alloc_ctor(7, 2, 0); } else { @@ -9232,7 +9492,7 @@ if (lean_is_scalar(x_181)) { } lean_ctor_set(x_188, 0, x_187); lean_ctor_set(x_188, 1, x_186); -x_189 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_189 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_190 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_190, 0, x_188); lean_ctor_set(x_190, 1, x_189); @@ -9480,7 +9740,7 @@ lean_dec(x_216); lean_dec(x_210); lean_dec(x_209); lean_free_object(x_12); -x_232 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_232 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_233 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_232, x_3, x_4, x_5, x_6, x_220); x_234 = lean_ctor_get(x_233, 0); lean_inc(x_234); @@ -9494,7 +9754,7 @@ if (lean_is_exclusive(x_233)) { lean_dec_ref(x_233); x_236 = lean_box(0); } -x_237 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_237 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_238 = lean_unbox(x_234); lean_dec(x_234); if (x_238 == 0) @@ -9512,7 +9772,7 @@ else lean_object* x_241; lean_object* x_242; lean_object* x_243; lean_object* x_244; lean_object* x_245; lean_object* x_246; lean_object* x_247; lean_object* x_248; lean_object* x_249; lean_object* x_250; lean_object* x_251; lean_object* x_252; lean_object* x_253; x_241 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_241, 0, x_213); -x_242 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_242 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_236)) { x_243 = lean_alloc_ctor(7, 2, 0); } else { @@ -9521,7 +9781,7 @@ if (lean_is_scalar(x_236)) { } lean_ctor_set(x_243, 0, x_242); lean_ctor_set(x_243, 1, x_241); -x_244 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_244 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_245 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_245, 0, x_243); lean_ctor_set(x_245, 1, x_244); @@ -9794,7 +10054,7 @@ lean_dec(x_275); lean_dec(x_269); lean_dec(x_268); lean_dec(x_266); -x_293 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_293 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_294 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_293, x_3, x_4, x_5, x_6, x_279); x_295 = lean_ctor_get(x_294, 0); lean_inc(x_295); @@ -9808,7 +10068,7 @@ if (lean_is_exclusive(x_294)) { lean_dec_ref(x_294); x_297 = lean_box(0); } -x_298 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_298 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_299 = lean_unbox(x_295); lean_dec(x_295); if (x_299 == 0) @@ -9826,7 +10086,7 @@ else lean_object* x_302; lean_object* x_303; lean_object* x_304; lean_object* x_305; lean_object* x_306; lean_object* x_307; lean_object* x_308; lean_object* x_309; lean_object* x_310; lean_object* x_311; lean_object* x_312; lean_object* x_313; lean_object* x_314; x_302 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_302, 0, x_272); -x_303 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_303 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_297)) { x_304 = lean_alloc_ctor(7, 2, 0); } else { @@ -9835,7 +10095,7 @@ if (lean_is_scalar(x_297)) { } lean_ctor_set(x_304, 0, x_303); lean_ctor_set(x_304, 1, x_302); -x_305 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_305 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_306 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_306, 0, x_304); lean_ctor_set(x_306, 1, x_305); @@ -9994,26 +10254,13 @@ LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f(lean_object* x_1, lean_ob _start: { lean_object* x_8; lean_object* x_9; -x_8 = lean_alloc_closure((void*)(l_Lean_Meta_splitIfTarget_x3f___lambda__2), 7, 2); +x_8 = lean_alloc_closure((void*)(l_Lean_Meta_splitIfTarget_x3f___lambda__1), 7, 2); lean_closure_set(x_8, 0, x_1); lean_closure_set(x_8, 1, x_2); x_9 = l_Lean_commitWhenSome_x3f___at_Lean_Meta_splitIfTarget_x3f___spec__1(x_8, x_3, x_4, x_5, x_6, x_7); return x_9; } } -LEAN_EXPORT lean_object* l_Lean_Meta_splitIfTarget_x3f___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { -_start: -{ -lean_object* x_7; -x_7 = l_Lean_Meta_splitIfTarget_x3f___lambda__1(x_1, x_2, x_3, x_4, x_5, x_6); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_7; -} -} LEAN_EXPORT lean_object* l_Lean_commitWhenSome_x3f___at_Lean_Meta_splitIfLocalDecl_x3f___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { _start: { @@ -10375,7 +10622,7 @@ lean_object* x_38; lean_object* x_39; uint8_t x_40; lean_free_object(x_32); lean_free_object(x_22); lean_free_object(x_14); -x_38 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_38 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_39 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_38, x_5, x_6, x_7, x_8, x_35); x_40 = !lean_is_exclusive(x_39); if (x_40 == 0) @@ -10383,7 +10630,7 @@ if (x_40 == 0) lean_object* x_41; lean_object* x_42; lean_object* x_43; uint8_t x_44; x_41 = lean_ctor_get(x_39, 0); x_42 = lean_ctor_get(x_39, 1); -x_43 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_43 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_44 = lean_unbox(x_41); lean_dec(x_41); if (x_44 == 0) @@ -10401,11 +10648,11 @@ else lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; x_47 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_47, 0, x_29); -x_48 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_48 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; lean_ctor_set_tag(x_39, 7); lean_ctor_set(x_39, 1, x_47); lean_ctor_set(x_39, 0, x_48); -x_49 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_49 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_50 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_50, 0, x_39); lean_ctor_set(x_50, 1, x_49); @@ -10436,7 +10683,7 @@ x_60 = lean_ctor_get(x_39, 1); lean_inc(x_60); lean_inc(x_59); lean_dec(x_39); -x_61 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_61 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_62 = lean_unbox(x_59); lean_dec(x_59); if (x_62 == 0) @@ -10453,11 +10700,11 @@ else lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; x_65 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_65, 0, x_29); -x_66 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_66 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; x_67 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_67, 0, x_66); lean_ctor_set(x_67, 1, x_65); -x_68 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_68 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_69 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_69, 0, x_67); lean_ctor_set(x_69, 1, x_68); @@ -10532,7 +10779,7 @@ else lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; uint8_t x_90; lean_free_object(x_22); lean_free_object(x_14); -x_84 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_84 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_85 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_84, x_5, x_6, x_7, x_8, x_79); x_86 = lean_ctor_get(x_85, 0); lean_inc(x_86); @@ -10546,7 +10793,7 @@ if (lean_is_exclusive(x_85)) { lean_dec_ref(x_85); x_88 = lean_box(0); } -x_89 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_89 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_90 = lean_unbox(x_86); lean_dec(x_86); if (x_90 == 0) @@ -10564,7 +10811,7 @@ else lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; x_93 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_93, 0, x_29); -x_94 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_94 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_88)) { x_95 = lean_alloc_ctor(7, 2, 0); } else { @@ -10573,7 +10820,7 @@ if (lean_is_scalar(x_88)) { } lean_ctor_set(x_95, 0, x_94); lean_ctor_set(x_95, 1, x_93); -x_96 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_96 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_97 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_97, 0, x_95); lean_ctor_set(x_97, 1, x_96); @@ -10766,7 +11013,7 @@ else lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; uint8_t x_137; lean_dec(x_124); lean_free_object(x_14); -x_131 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_131 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_132 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_131, x_5, x_6, x_7, x_8, x_123); x_133 = lean_ctor_get(x_132, 0); lean_inc(x_133); @@ -10780,7 +11027,7 @@ if (lean_is_exclusive(x_132)) { lean_dec_ref(x_132); x_135 = lean_box(0); } -x_136 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_136 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_137 = lean_unbox(x_133); lean_dec(x_133); if (x_137 == 0) @@ -10798,7 +11045,7 @@ else lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; x_140 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_140, 0, x_118); -x_141 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_141 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_135)) { x_142 = lean_alloc_ctor(7, 2, 0); } else { @@ -10807,7 +11054,7 @@ if (lean_is_scalar(x_135)) { } lean_ctor_set(x_142, 0, x_141); lean_ctor_set(x_142, 1, x_140); -x_143 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_143 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_144 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_144, 0, x_142); lean_ctor_set(x_144, 1, x_143); @@ -11025,7 +11272,7 @@ else lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; uint8_t x_189; lean_dec(x_174); lean_dec(x_165); -x_183 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2; +x_183 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2; x_184 = l_Lean_isTracingEnabledFor___at_Lean_Meta_processPostponed_loop___spec__1(x_183, x_5, x_6, x_7, x_8, x_173); x_185 = lean_ctor_get(x_184, 0); lean_inc(x_185); @@ -11039,7 +11286,7 @@ if (lean_is_exclusive(x_184)) { lean_dec_ref(x_184); x_187 = lean_box(0); } -x_188 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3; +x_188 = l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1; x_189 = lean_unbox(x_185); lean_dec(x_185); if (x_189 == 0) @@ -11057,7 +11304,7 @@ else lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; x_192 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_192, 0, x_168); -x_193 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5; +x_193 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4; if (lean_is_scalar(x_187)) { x_194 = lean_alloc_ctor(7, 2, 0); } else { @@ -11066,7 +11313,7 @@ if (lean_is_scalar(x_187)) { } lean_ctor_set(x_194, 0, x_193); lean_ctor_set(x_194, 1, x_192); -x_195 = l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7; +x_195 = l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6; x_196 = lean_alloc_ctor(7, 2, 0); lean_ctor_set(x_196, 0, x_194); lean_ctor_set(x_196, 1, x_195); @@ -11237,7 +11484,7 @@ x_12 = l_Lean_commitWhenSome_x3f___at_Lean_Meta_splitIfLocalDecl_x3f___spec__1(x return x_12; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1() { _start: { lean_object* x_1; @@ -11245,27 +11492,27 @@ x_1 = lean_mk_string_unchecked("Lean", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2; x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4() { _start: { lean_object* x_1; @@ -11273,17 +11520,17 @@ x_1 = lean_mk_string_unchecked("initFn", 6, 6); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6() { _start: { lean_object* x_1; @@ -11291,47 +11538,47 @@ x_1 = lean_mk_string_unchecked("_@", 2, 2); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8; x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__1; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9; x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__2; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11() { _start: { lean_object* x_1; @@ -11339,17 +11586,17 @@ x_1 = lean_mk_string_unchecked("SplitIf", 7, 7); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13() { _start: { lean_object* x_1; @@ -11357,33 +11604,33 @@ x_1 = lean_mk_string_unchecked("_hyg", 4, 4); return x_1; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12; -x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13; +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12; +x_2 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15() { +static lean_object* _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14; -x_2 = lean_unsigned_to_nat(3690u); +x_1 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14; +x_2 = lean_unsigned_to_nat(3786u); x_3 = l_Lean_Name_num___override(x_1, x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786_(lean_object* x_1) { _start: { lean_object* x_2; uint8_t x_3; lean_object* x_4; lean_object* x_5; x_2 = l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__4; x_3 = 0; -x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15; +x_4 = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15; x_5 = l_Lean_registerTraceClass(x_2, x_3, x_4, x_1); return x_5; } @@ -11532,14 +11779,20 @@ l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__10); l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__11 = _init_l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__11(); lean_mark_persistent(l___private_Lean_Meta_Tactic_SplitIf_0__Lean_Meta_SplitIf_discharge_x3f___closed__11); -l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__1); -l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__2___closed__2); l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__1); l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2(); lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__3___closed__2); +l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1(); +lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__1); +l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2(); +lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__2); +l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3(); +lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__3); +l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4(); +lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__4); +l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5 = _init_l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5(); +lean_mark_persistent(l_Lean_Meta_SplitIf_splitIfAt_x3f___lambda__4___closed__5); l_Lean_Meta_simpIfTarget___closed__1 = _init_l_Lean_Meta_simpIfTarget___closed__1(); lean_mark_persistent(l_Lean_Meta_simpIfTarget___closed__1); l_Lean_Meta_simpIfTarget___closed__2 = _init_l_Lean_Meta_simpIfTarget___closed__2(); @@ -11568,51 +11821,49 @@ l_Lean_Meta_simpIfLocalDecl___closed__2 = _init_l_Lean_Meta_simpIfLocalDecl___cl lean_mark_persistent(l_Lean_Meta_simpIfLocalDecl___closed__2); l_Lean_Meta_simpIfLocalDecl___closed__3 = _init_l_Lean_Meta_simpIfLocalDecl___closed__3(); lean_mark_persistent(l_Lean_Meta_simpIfLocalDecl___closed__3); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__1); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__2); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__3); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__4); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__5); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__6); -l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7(); -lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__2___closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__1); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__2); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__3); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__4); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__5); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__6); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__7); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__8); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__9); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__10); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__11); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__12); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__13); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__14); -l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15(); -lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690____closed__15); -if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3690_(lean_io_mk_world()); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__1); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__2); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__3); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__4); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__5); +l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6 = _init_l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6(); +lean_mark_persistent(l_Lean_Meta_splitIfTarget_x3f___lambda__1___closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__1); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__2); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__3); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__4); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__5); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__6); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__7); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__8); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__9); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__10); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__11); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__12); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__13); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__14); +l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15 = _init_l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15(); +lean_mark_persistent(l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786____closed__15); +if (builtin) {res = l_Lean_Meta_initFn____x40_Lean_Meta_Tactic_SplitIf___hyg_3786_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Parser/Term.c b/stage0/stdlib/Lean/Parser/Term.c index fd16eca674..514d640f9f 100644 --- a/stage0/stdlib/Lean/Parser/Term.c +++ b/stage0/stdlib/Lean/Parser/Term.c @@ -20,6 +20,7 @@ static lean_object* l_Lean_Parser_Term_suffices___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_strictImplicitBinder_parenthesizer___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_structInstLVal_formatter__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_binderTactic_formatter__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29; static lean_object* l___regBuiltin_Lean_Parser_Term_pipeProj_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_letI___closed__9; static lean_object* l_Lean_Parser_Term_showTermElabImpl___closed__1; @@ -47,6 +48,7 @@ static lean_object* l_Lean_Parser_Tactic_quotSeq___closed__4; static lean_object* l_Lean_Parser_Term_matchExprPat_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_let__delayed_formatter___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10; static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeContainsMVar_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_noErrorIfUnused_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_whereDecls_parenthesizer___closed__4; @@ -271,6 +273,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_identProjKind; static lean_object* l_Lean_Parser_Term_letExpr___closed__16; static lean_object* l_Lean_Parser_Term_haveI___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_attrInstance_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_letDecl___closed__3; lean_object* l_Lean_addBuiltinDocString(lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_unsafe_formatter___closed__4; @@ -316,7 +319,6 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExpr_formatter(lean_object*, le static lean_object* l_Lean_Parser_Term_match___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_clear_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_depArrow_declRange__1___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17; static lean_object* l_Lean_Parser_Term_leading__parser___closed__6; static lean_object* l_Lean_Parser_Term_noindex___closed__9; static lean_object* l_Lean_Parser_Term_basicFun_parenthesizer___closed__9; @@ -339,6 +341,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_suffix_parenthes static lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_x27_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_let__delayed___closed__7; static lean_object* l_Lean_Parser_Term_namedPattern_formatter___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_proj_formatter__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_withAnonymousAntiquot; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_structInstFieldDef_parenthesizer__1(lean_object*); @@ -358,6 +361,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_nomatch_formatter(lean_object*, lean static lean_object* l_Lean_Parser_Term_binderType___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_ensureExpectedType_declRange__1___closed__5; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__14; static lean_object* l_Lean_Parser_Termination_suffix___closed__8; static lean_object* l_Lean_Parser_Command_docComment___closed__3; static lean_object* l_Lean_Parser_Term_clear___closed__2; @@ -438,9 +442,11 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_attrKind_docString__1(l static lean_object* l_Lean_Parser_Term_scoped___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_typeAscription_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_hole___closed__5; +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_withAnonymousAntiquot_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_depArrow_parenthesizer__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_noImplicitLambda_declRange__1___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38; static lean_object* l_Lean_Parser_Term_typeAscription_formatter___closed__7; static lean_object* l_Lean_Parser_Term_depArrow___closed__7; static lean_object* l_Lean_Parser_Term_fromTerm___closed__4; @@ -480,6 +486,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_optTypeForStructInst_parenthesizer(l static lean_object* l___regBuiltin_Lean_Parser_Term_structInst_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_letI_formatter___closed__4; static lean_object* l_Lean_Parser_Tactic_quot_formatter___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46; static lean_object* l___regBuiltin_Lean_Parser_Term_structInstField_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_letRecDecl___closed__5; static lean_object* l_Lean_Parser_Term_typeOf_parenthesizer___closed__4; @@ -497,6 +504,7 @@ static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed_formatter___closed__ static lean_object* l_Lean_Parser_Term_ensureTypeOf_formatter___closed__4; static lean_object* l_Lean_Parser_Term_fromTerm_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Tactic_tacticSeq_docString__1___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7; static lean_object* l_Lean_Parser_Term_matchDiscr___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_argument_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_paren_parenthesizer___closed__6; @@ -520,6 +528,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_scoped_parenthesizer(lean_object*, l static lean_object* l_Lean_Parser_Term_byTactic_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_arrow___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_optIdent_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_match___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_implicitBinder_docString__1(lean_object*); static lean_object* l_Lean_Parser_Term_suffices___closed__12; @@ -578,6 +587,7 @@ static lean_object* l_Lean_Parser_Term_hole_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_structInst___closed__26; static lean_object* l___regBuiltin_Lean_Parser_Term_scientific_declRange__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_decreasingBy_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43; static lean_object* l_Lean_Parser_Term_letIdDecl_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot___closed__9; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstArrayRef_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -593,7 +603,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_let_parenthesizer__1___close LEAN_EXPORT lean_object* l_Lean_Parser_Term_optExprPrecedence_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Tactic_quotSeq_declRange__1___closed__1; static lean_object* l_Lean_Parser_Term_binderType_formatter___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14; static lean_object* l_Lean_Parser_Term_local___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_sort_declRange__1___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_ensureExpectedType_formatter__1(lean_object*); @@ -655,12 +664,14 @@ static lean_object* l_Lean_Parser_Term_structInstArrayRef_parenthesizer___closed static lean_object* l_Lean_Parser_Term_explicitUniv___closed__11; static lean_object* l_Lean_Parser_Termination_decreasingBy___closed__1; static lean_object* l_Lean_Parser_Term_binderTactic___closed__5; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49; static lean_object* l___regBuiltin_Lean_Parser_Term_explicit_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_structInstField_formatter___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_binderTactic_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_pipeCompletion___closed__1; static lean_object* l_Lean_Parser_Term_local___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_dynamicQuot_declRange__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45; static lean_object* l_Lean_Parser_Term_sorry___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_instBinder_docString__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_structInstFieldEqns_formatter__1(lean_object*); @@ -668,6 +679,7 @@ static lean_object* l_Lean_Parser_Term_structInst_formatter___closed__7; static lean_object* l_Lean_Parser_Term_binop_formatter___closed__4; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveId_formatter__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_anonymousCtor_declRange__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19; static lean_object* l___regBuiltin_Lean_Parser_Term_explicitBinder_docString__1___closed__2; static lean_object* l_Lean_Parser_Term_ellipsis___closed__11; static lean_object* l_Lean_Parser_Term_matchExpr_parenthesizer___closed__7; @@ -677,6 +689,7 @@ static lean_object* l_Lean_Parser_Termination_terminationBy_parenthesizer___clos static lean_object* l_Lean_Parser_Term_strictImplicitRightBracket_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_dotIdent___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_attrKind_docString__1___closed__3; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41; lean_object* l_Lean_Parser_withCache_formatter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_tacticSeq1Indented_formatter___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_quotedName_formatter__1(lean_object*); @@ -709,12 +722,14 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_strictImplicitBinder___boxed(lean_ob static lean_object* l___regBuiltin_Lean_Parser_Term_typeOf_declRange__1___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_app_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_nomatch_declRange__1___closed__7; +static lean_object* l_Lean_Parser_Termination_terminationBy_formatter___closed__14; static lean_object* l___regBuiltin_Lean_Parser_Term_nomatch_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_trailing__parser_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_sufficesDecl_formatter__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_arrow__1(lean_object*); static lean_object* l_Lean_Parser_Term_letIdLhs_parenthesizer___closed__4; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16; static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed___closed__3; static lean_object* l_Lean_Parser_Term_match_formatter___closed__14; LEAN_EXPORT lean_object* l_Lean_Parser_Term_typeOf_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -791,6 +806,7 @@ static lean_object* l_Lean_Parser_Term_letI_formatter___closed__5; lean_object* l_Lean_Parser_sepByIndent_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_letI_parenthesizer___closed__1; lean_object* l_Lean_Parser_categoryParser(lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_panic_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_defaultOrOfNonempty_formatter___closed__3; static lean_object* l_Lean_Parser_Term_bracketedBinder___closed__1; @@ -806,11 +822,9 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveI_parenthesizer__1( LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_sort_docString__1(lean_object*); static lean_object* l_Lean_Parser_Term_prop_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_structInstArrayRef_formatter___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48; LEAN_EXPORT lean_object* l_Lean_Parser_Term_basicFun_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_showTermElabImpl___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_unop_declRange__1___closed__7; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_rightact_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Termination_terminationBy_x3f_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_typeOf_declRange__1___closed__6; @@ -869,7 +883,6 @@ static lean_object* l_Lean_Parser_Term_rightact___closed__3; static lean_object* l_Lean_Parser_Term_byTactic_parenthesizer___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_completion_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_letrec_formatter___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letMVar_declRange__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_binderDefault_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_dbgTrace___closed__8; @@ -939,12 +952,14 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_let_formatter__1___closed__1 static lean_object* l_Lean_Parser_Term_tuple___closed__12; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_prop_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_panic_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_match_formatter___closed__13; static lean_object* l_Lean_Parser_Term_haveIdDecl_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_type_formatter__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__8; static lean_object* l_Lean_Parser_Tactic_quotSeq___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_quot_declRange__1(lean_object*); static lean_object* l_Lean_Parser_Term_pipeProj_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_let__tmp___closed__5; @@ -993,6 +1008,7 @@ static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Termination_terminationBy_x3f_parenthesizer___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_byTactic_declRange__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_dotIdent_declRange__1___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59; static lean_object* l_Lean_Parser_Term_matchAltsWhereDecls_formatter___closed__3; static lean_object* l_Lean_Parser_Term_withDeclName___closed__12; static lean_object* l_Lean_Parser_Term_motive_parenthesizer___closed__1; @@ -1006,6 +1022,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_haveI_declRange__1___closed_ static lean_object* l_Lean_Parser_Term_motive___closed__5; static lean_object* l_Lean_Parser_Term_tuple_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_funStrictImplicitBinder_formatter___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_noindex_declRange__1___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_panic_declRange__1___closed__4; lean_object* l_Lean_Parser_nameLit_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1034,6 +1051,7 @@ lean_object* l_Lean_Parser_ppDedent_parenthesizer(lean_object*, lean_object*, le static lean_object* l_Lean_Parser_Term_ensureExpectedType_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_match_parenthesizer___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_rightact_declRange__1___closed__7; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_let__delayed_formatter___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_binderTactic_parenthesizer__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_leftact_parenthesizer__1(lean_object*); @@ -1140,7 +1158,6 @@ static lean_object* l_Lean_Parser_Term_cdot___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_ident_declRange__1___closed__1; static lean_object* l_Lean_Parser_Term_quotedName_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_let_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46; static lean_object* l_Lean_Parser_Tactic_quotSeq_parenthesizer___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_haveDecl_formatter__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_namedPattern_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1170,6 +1187,7 @@ static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_dbgTrace___closed__3; static lean_object* l_Lean_Parser_Term_matchAlt___closed__11; static lean_object* l_Lean_Parser_Term_defaultOrOfNonempty_parenthesizer___closed__6; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_optExprPrecedence_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_let__tmp_declRange__1___closed__1; lean_object* l_Lean_PrettyPrinter_Formatter_checkNoWsBefore_formatter___boxed(lean_object*); @@ -1192,7 +1210,6 @@ static lean_object* l_Lean_Parser_Term_dynamicQuot___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_explicit_declRange__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_suffices_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Tactic_quotSeq_declRange__1___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13; static lean_object* l___regBuiltin_Lean_Parser_Term_dynamicQuot_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_letMVar_parenthesizer___closed__9; lean_object* l_Lean_addBuiltinDeclarationRanges(lean_object*, lean_object*, lean_object*); @@ -1210,6 +1227,7 @@ static lean_object* l_Lean_Parser_Term_structInstLVal_formatter___closed__4; static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__3; static lean_object* l_Lean_Parser_Term_assert___closed__10; static lean_object* l_Lean_Parser_Term_binderDefault___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56; static lean_object* l_Lean_Parser_Term_letPatDecl_parenthesizer___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_let__tmp_docString__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprElseAlt_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1221,7 +1239,9 @@ static lean_object* l_Lean_Parser_Term_binderTactic_formatter___closed__7; static lean_object* l_Lean_Parser_Term_initFn____x40_Lean_Parser_Term___hyg_2101____closed__6; extern lean_object* l_Lean_Parser_hygieneInfo; static lean_object* l_Lean_Parser_Term_forInMacro_formatter___closed__5; +static lean_object* l_Lean_Parser_Termination_suffix_formatter___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_leftact_formatter__1___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22; static lean_object* l___regBuiltin_Lean_Parser_Term_inaccessible_declRange__1___closed__3; static lean_object* l_Lean_Parser_Term_explicit_parenthesizer___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_motive_parenthesizer__1(lean_object*); @@ -1281,8 +1301,10 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_suffix_formatter static lean_object* l_Lean_Parser_Term_scoped_formatter___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letRecDecls_parenthesizer__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letEqnsDecl_parenthesizer__1(lean_object*); +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_haveI_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_structInstField___closed__10; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_syntheticHole_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_forInMacro_x27_formatter___closed__2; static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed___closed__10; @@ -1295,6 +1317,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_matchDiscr_docString__1___cl LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_trailing__parser_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_whereDecls_formatter___closed__4; uint8_t l_Lean_Syntax_isOfKind(lean_object*, lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6; static lean_object* l_Lean_Parser_Term_noindex_formatter___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letIdDecl_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_forInMacro___closed__4; @@ -1315,6 +1338,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_pipeProj_declRange__1___clos static lean_object* l___regBuiltin_Lean_Parser_Term_proj_declRange__1___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_strictImplicitBinder_docString__1___closed__3; static lean_object* l_Lean_Parser_Term_binrel_formatter___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4; static lean_object* l_Lean_Parser_Term_ensureExpectedType___closed__9; static lean_object* l_Lean_Parser_Term_prop___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_pipeProj_declRange__1___closed__7; @@ -1330,6 +1354,7 @@ static lean_object* l_Lean_Parser_Term_matchAlt_formatter___closed__2; static lean_object* l_Lean_Parser_Term_binop__lazy_formatter___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_show_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_typeAscription___closed__16; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47; LEAN_EXPORT lean_object* l_Lean_Parser_Term_waitIfTypeMVar_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Termination_decreasingBy_formatter__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_clear_docString__1(lean_object*); @@ -1340,6 +1365,7 @@ static lean_object* l_Lean_Parser_Termination_terminationBy_formatter___closed__ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_forall_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_motive_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_termParser_formatter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15; static lean_object* l_Lean_Parser_Term_matchExprAlts___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_byTactic_parenthesizer__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_noErrorIfUnused; @@ -1403,7 +1429,6 @@ static lean_object* l_Lean_Parser_semicolonOrLinebreak_formatter___closed__4; static lean_object* l_Lean_Parser_Termination_suffix_formatter___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused_formatter__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_binderType_parenthesizer(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40; LEAN_EXPORT lean_object* l_Lean_Parser_Term_haveIdDecl; static lean_object* l_Lean_Parser_Term_letMVar_formatter___closed__4; static lean_object* l_Lean_Parser_Term_letIdLhs___closed__1; @@ -1455,9 +1480,11 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_whereDecls; static lean_object* l_Lean_Parser_Term_attributes_formatter___closed__6; static lean_object* l_Lean_Parser_Term_let__tmp_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Term_declName_formatter___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51; static lean_object* l_Lean_Parser_Term_letMVar___closed__6; static lean_object* l_Lean_Parser_Term_type___closed__13; static lean_object* l_Lean_Parser_Term_letRecDecl_parenthesizer___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__2; static lean_object* l_Lean_Parser_Term_funImplicitBinder_formatter___closed__4; static lean_object* l_Lean_Parser_Term_haveIdDecl_formatter___closed__6; static lean_object* l_Lean_Parser_Term_sufficesDecl_parenthesizer___closed__2; @@ -1478,6 +1505,7 @@ static lean_object* l_Lean_Parser_Term_binderTactic___closed__11; static lean_object* l___regBuiltin_Lean_Parser_Term_paren_formatter__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_leftact_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_structInstLVal_parenthesizer___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35; static lean_object* l_Lean_Parser_Command_docComment___closed__10; static lean_object* l_Lean_Parser_Term_declName___closed__8; static lean_object* l_Lean_Parser_Term_showTermElabImpl___closed__4; @@ -1490,7 +1518,6 @@ static lean_object* l_Lean_Parser_Term_letPatDecl_formatter___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_macroDollarArg_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_haveEqnsDecl_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_let___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32; static lean_object* l_Lean_Parser_Term_depArrow_formatter___closed__4; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_num__1(lean_object*); lean_object* l_Lean_Parser_rawCh(uint32_t, uint8_t); @@ -1502,6 +1529,7 @@ static lean_object* l_Lean_Parser_Term_structInstArrayRef_parenthesizer___closed static lean_object* l___regBuiltin_Lean_Parser_Term_sort_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_waitIfTypeContainsMVar_formatter___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letEqnsDecl_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48; static lean_object* l_Lean_Parser_Term_letRecDecl_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Term_syntheticHole___closed__6; static lean_object* l_Lean_Parser_Term_pipeProj_parenthesizer___closed__5; @@ -1522,6 +1550,7 @@ static lean_object* l_Lean_Parser_Term_waitIfContainsMVar___closed__3; static lean_object* l_Lean_Parser_Term_structInstField_parenthesizer___closed__12; static lean_object* l___regBuiltin_Lean_Parser_Term_instBinder_parenthesizer__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_sepBy1IndentSemicolon_docString__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24; static lean_object* l_Lean_Parser_Term_structInstLVal_parenthesizer___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_declRange__1___closed__7; static lean_object* l_Lean_Parser_Term_falseVal_parenthesizer___closed__1; @@ -1529,6 +1558,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_tuple_formatter__1___closed_ static lean_object* l_Lean_Parser_Term_forInMacro___closed__8; static lean_object* l_Lean_Parser_Term_whereDecls_formatter___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Tactic_sepByIndentSemicolon_docString__1___closed__3; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_sepBy1IndentSemicolon(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_parenthesizer__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstLVal_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1553,6 +1583,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_type_declRange__1(lean_ static lean_object* l___regBuiltin_Lean_Parser_Term_match_docString__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_ident_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_proj_declRange__1___closed__7; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6; static lean_object* l_Lean_Parser_Term_let__tmp___closed__8; static lean_object* l_Lean_Parser_Term_match___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Term_local_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -1575,23 +1606,28 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_suffices_declRange__1___clos LEAN_EXPORT lean_object* l_Lean_Parser_Term_funBinder; static lean_object* l_Lean_Parser_Term_paren___closed__10; static lean_object* l_Lean_Parser_Term_borrowed___closed__8; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11; static lean_object* l___regBuiltin_Lean_Parser_Tactic_quot_parenthesizer__1___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9; static lean_object* l_Lean_Parser_Term_structInstLVal_formatter___closed__3; static lean_object* l_Lean_Parser_Term_typeAscription_formatter___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_typeOf_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_haveIdDecl_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Tactic_quot___closed__11; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeContainsMVar_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_let__fun_formatter___closed__5; static lean_object* l_Lean_Parser_Term_local_formatter___closed__1; lean_object* l_Lean_Parser_sepByIndent_parenthesizer(lean_object*, lean_object*, lean_object*, uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_waitIfContainsMVar_formatter___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8; static lean_object* l_Lean_Parser_Term_have_formatter___closed__4; static lean_object* l_Lean_Parser_Term_ensureExpectedType_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_subst_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_letExpr___closed__15; static lean_object* l_Lean_Parser_Term_matchAlt_formatter___closed__3; static lean_object* l_Lean_Parser_Term_funImplicitBinder_formatter___closed__5; +static lean_object* l_Lean_Parser_Termination_terminationBy_formatter___closed__15; LEAN_EXPORT lean_object* l_Lean_Parser_Term_forInMacro_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused_declRange__1___closed__4; static lean_object* l_Lean_Parser_Term_attrInstance_formatter___closed__6; @@ -1636,7 +1672,6 @@ static lean_object* l_Lean_Parser_Term_byTactic___closed__2; static lean_object* l_Lean_Parser_Term_sort_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_noindex_formatter__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_leftact__1(lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_unop_parenthesizer__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_bracketedBinder_parenthesizer(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_structInst___closed__5; @@ -1688,11 +1723,11 @@ static lean_object* l_Lean_Parser_Term_explicit___closed__6; static lean_object* l_Lean_Parser_Term_binderTactic___closed__4; static lean_object* l_Lean_Parser_Term_match_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_explicitUniv_formatter___closed__5; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__12; static lean_object* l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_ensureTypeOf; LEAN_EXPORT lean_object* l_Lean_Parser_Command_commentBody_parenthesizer___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_haveId_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39; LEAN_EXPORT lean_object* l_Lean_Parser_Term_leading__parser; static lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_x27_declRange__1___closed__5; static lean_object* l_Lean_Parser_Term_matchExpr_parenthesizer___closed__8; @@ -1707,7 +1742,6 @@ static lean_object* l_Lean_Parser_Term_binrel___closed__13; LEAN_EXPORT lean_object* l_Lean_Parser_Term_proj; static lean_object* l_Lean_Parser_Term_declName___closed__3; static lean_object* l_Lean_Parser_Term_trueVal___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54; static lean_object* l_Lean_Parser_Term_defaultOrOfNonempty___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letIdDecl_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_cdot_declRange__1___closed__6; @@ -1746,8 +1780,10 @@ static lean_object* l_Lean_Parser_Term_matchAltsWhereDecls_formatter___closed__6 static lean_object* l_Lean_Parser_Term_binop___closed__3; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot___closed__13; static lean_object* l_Lean_Parser_Term_dbgTrace_parenthesizer___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__11; static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__14; static lean_object* l_Lean_Parser_Term_structInstFieldDef___closed__5; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58; lean_object* l_Lean_Parser_mkAntiquot_formatter___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_waitIfTypeContainsMVar___closed__5; static lean_object* l_Lean_Parser_Term_clear___closed__6; @@ -1805,7 +1841,6 @@ static lean_object* l_Lean_Parser_Term_inaccessible_formatter___closed__6; static lean_object* l_Lean_Parser_Term_dbgTrace___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_match_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_namedArgument_formatter___closed__5; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22; static lean_object* l_Lean_Parser_Term_unreachable___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_match_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_trailing__parser_declRange__1___closed__6; @@ -1880,6 +1915,7 @@ static lean_object* l_Lean_Parser_Command_docComment___closed__1; static lean_object* l_Lean_Parser_Term_binop__lazy___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_paren_declRange__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_haveI_parenthesizer__1___closed__1; +static lean_object* l_Lean_Parser_Termination_terminationBy___closed__17; static lean_object* l_Lean_Parser_Term_ellipsis___closed__9; static lean_object* l___regBuiltin_Lean_Parser_Term_depArrow_declRange__1___closed__5; static lean_object* l_Lean_Parser_Term_structInstArrayRef_parenthesizer___closed__1; @@ -1894,6 +1930,7 @@ static lean_object* l_Lean_Parser_Term_attributes___closed__12; static lean_object* l___regBuiltin_Lean_Parser_Term_matchAltsWhereDecls_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_show_declRange__1___closed__5; static lean_object* l_Lean_Parser_Term_show___closed__8; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9; static lean_object* l_Lean_Parser_Term_let__delayed_parenthesizer___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_clear_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_funImplicitBinder___closed__3; @@ -1925,6 +1962,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_nofun_formatter(lean_object*, lean_o LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_quot_parenthesizer__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_typeAscription_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_explicitBinder_parenthesizer___closed__3; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__17; static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__6; static lean_object* l_Lean_Parser_Term_let__fun___closed__1; static lean_object* l_Lean_Parser_Term_typeAscription_parenthesizer___closed__7; @@ -1940,6 +1978,7 @@ static lean_object* l_Lean_Parser_Term_pipeProj___closed__2; static lean_object* l_Lean_Parser_Term_explicitUniv___closed__10; static lean_object* l_Lean_Parser_Term_binrel___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_formatter__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15; static lean_object* l_Lean_Parser_Termination_suffix_formatter___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_parenthesizer__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_suffices_parenthesizer__1___closed__2; @@ -2035,7 +2074,6 @@ static lean_object* l_Lean_Parser_Term_let_formatter___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveI_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_dbgTrace__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_show_declRange__1___closed__6; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27; static lean_object* l_Lean_Parser_Term_prop___closed__4; static lean_object* l_Lean_Parser_Term_byTactic_parenthesizer___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_letExpr_declRange__1___closed__1; @@ -2055,6 +2093,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_noImplicitLambda_formatter__ lean_object* l_Lean_Parser_many1_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Termination_decreasingBy___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letIdLhs_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12; LEAN_EXPORT lean_object* l_Lean_Parser_Term_completion_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_paren_parenthesizer___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_showRhs_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2078,9 +2117,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_x27_parenthe static lean_object* l_Lean_Parser_Term_type___closed__2; static lean_object* l_Lean_Parser_Term_matchExprPat_formatter___closed__8; LEAN_EXPORT lean_object* l_Lean_Parser_Term_type_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58; LEAN_EXPORT lean_object* l_Lean_Parser_Term_motive; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25; static lean_object* l_Lean_Parser_Term_panic___closed__2; static lean_object* l_Lean_Parser_Term_binderDefault___closed__6; static lean_object* l_Lean_Parser_Command_docComment_formatter___closed__4; @@ -2109,6 +2146,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_waitIfTypeContainsMVar_formatter(lea LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_typeAscription_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_match___closed__17; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_inaccessible_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21; static lean_object* l_Lean_Parser_Term_structInstFieldBinder_parenthesizer___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_clear_parenthesizer__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfContainsMVar_declRange__1___closed__2; @@ -2160,7 +2198,6 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_letEqnsDecl; static lean_object* l___regBuiltin_Lean_Parser_Term_showTermElabImpl_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_dbgTrace_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_matchExprAlts___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26; lean_object* l_Lean_Parser_adaptCacheableContext(lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_clear_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_char___closed__1; @@ -2179,16 +2216,17 @@ static lean_object* l_Lean_Parser_Term_binderDefault_formatter___closed__3; static lean_object* l_Lean_Parser_Term_structInst___closed__23; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_subst_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1(lean_object*); +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_defaultOrOfNonempty_declRange__1___closed__6; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_attrKind_docString__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_anonymousCtor_docString__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchDiscr_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61; static lean_object* l_Lean_Parser_Term_letrec_formatter___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_doubleQuotedName_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_binop___closed__4; static lean_object* l_Lean_Parser_Term_letIdBinder___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__3; static lean_object* l_Lean_Parser_Term_letI_parenthesizer___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_app_declRange__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_structInstLVal_parenthesizer__1(lean_object*); @@ -2288,7 +2326,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_dbgTrace_declRange__1___clos static lean_object* l_Lean_Parser_Tactic_tacticSeqIndentGt___closed__3; static lean_object* l_Lean_Parser_Term_attrInstance___closed__4; static lean_object* l_Lean_Parser_Term_forInMacro_x27___closed__5; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47; static lean_object* l_Lean_Parser_Tactic_quot___closed__8; static lean_object* l_Lean_Parser_Term_ellipsis___closed__5; static lean_object* l_Lean_Parser_Tactic_tacticSeqIndentGt_parenthesizer___closed__1; @@ -2309,6 +2346,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_leading__parser_declRange__1 lean_object* l_Lean_PrettyPrinter_Parenthesizer_visitToken___rarg(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_assert_declRange__1___closed__7; static lean_object* l_Lean_Parser_Term_stateRefT_parenthesizer___closed__5; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__15; static lean_object* l_Lean_Parser_Term_letrec_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_binrel___closed__12; static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed___closed__8; @@ -2349,6 +2387,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_tacticParser_parenthesizer(lean_object*, static lean_object* l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_haveI___closed__1; static lean_object* l_Lean_Parser_Term_typeAscription_parenthesizer___closed__3; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letrec__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_sorry_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_matchExprAlt___closed__1; @@ -2364,7 +2403,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_forall_parenthesizer__1___cl static lean_object* l_Lean_Parser_Term_attributes_formatter___closed__3; static lean_object* l_Lean_Parser_Term_cdot___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_hole_declRange__1___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeContainsMVar_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_noindex___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused_parenthesizer__1___closed__1; @@ -2389,6 +2427,7 @@ static lean_object* l_Lean_Parser_Term_structInst_formatter___closed__11; static lean_object* l_Lean_Parser_Term_sufficesDecl_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_binderTactic___closed__13; static lean_object* l_Lean_Parser_Term_instBinder_parenthesizer___closed__10; +static lean_object* l_Lean_Parser_Termination_suffix___closed__10; static lean_object* l___regBuiltin_Lean_Parser_Term_noImplicitLambda_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_structInstArrayRef___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_scoped_parenthesizer__1(lean_object*); @@ -2414,10 +2453,13 @@ static lean_object* l_Lean_Parser_Term_matchExprPat___closed__4; static lean_object* l_Lean_Parser_Term_typeOf___closed__5; static lean_object* l_Lean_Parser_Term_basicFun___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_inaccessible_declRange__1___closed__6; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_matchExpr_formatter__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_declName; static lean_object* l___regBuiltin_Lean_Parser_Term_match_declRange__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_type_parenthesizer__1(lean_object*); +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1(lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3; lean_object* l_Lean_PrettyPrinter_Formatter_visitAtom(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letDecl_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_borrowed___closed__1; @@ -2426,7 +2468,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeMVar_declRange__1_ static lean_object* l_Lean_Parser_Term_binrel_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Term_have_parenthesizer___closed__5; lean_object* l_Lean_PrettyPrinter_Formatter_parserOfStack_formatter___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38; static lean_object* l___regBuiltin_Lean_Parser_Term_structInstFieldDef_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_waitIfTypeContainsMVar___closed__2; static lean_object* l_Lean_Parser_Termination_decreasingBy___closed__8; @@ -2442,7 +2483,6 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_leftact; static lean_object* l___regBuiltin_Lean_Parser_Term_binop_parenthesizer__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_showTermElabImpl_formatter__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_let__delayed_declRange__1___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7; static lean_object* l_Lean_Parser_Term_let__delayed___closed__3; static lean_object* l_Lean_Parser_Term_letExpr_formatter___closed__3; static lean_object* l_Lean_Parser_Term_assert___closed__4; @@ -2456,7 +2496,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_declName_declRange__1___clos static lean_object* l_Lean_Parser_Term_inaccessible___closed__6; static lean_object* l_Lean_Parser_Term_strictImplicitLeftBracket___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_unreachable_declRange__1___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31; static lean_object* l_Lean_Parser_Term_matchExprElseAlt___closed__2; static lean_object* l_Lean_Parser_Term_motive___closed__12; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_paren__1(lean_object*); @@ -2467,14 +2506,12 @@ static lean_object* l_Lean_Parser_Tactic_quotSeq_parenthesizer___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_matchDiscr_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_typeOf_declRange__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_declName_docString__1(lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21; static lean_object* l_Lean_Parser_Term_matchAlt___closed__9; static lean_object* l_Lean_Parser_Tactic_sepByIndentSemicolon___closed__1; static lean_object* l_Lean_Parser_Term_ensureTypeOf_formatter___closed__6; static lean_object* l_Lean_Parser_Term_forall_parenthesizer___closed__9; static lean_object* l_Lean_Parser_Term_letExpr_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_optTypeForStructInst___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16; static lean_object* l___regBuiltin_Lean_Parser_Term_dotIdent_declRange__1___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_macroDollarArg_formatter__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_generalizingParam; @@ -2482,7 +2519,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_structInst_declRange__1___cl LEAN_EXPORT lean_object* l_Lean_Parser_Term_omission_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_doubleQuotedName___closed__10; static lean_object* l_Lean_Parser_Term_explicitBinder_formatter___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35; static lean_object* l_Lean_Parser_Term_haveId___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_borrowed_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_instBinder_formatter___closed__6; @@ -2504,6 +2540,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_paren; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_explicitUniv_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_unsafe_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_depArrow___closed__10; +static lean_object* l_Lean_Parser_Termination_suffix_parenthesizer___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_structInst_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_haveI_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Tactic_tacticSeq1Indented___closed__5; @@ -2543,6 +2580,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_completion_declRange__1___cl static lean_object* l___regBuiltin_Lean_Parser_Term_scientific__1___closed__1; static lean_object* l_Lean_Parser_Tactic_quot_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_optEllipsis___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letDecl; static lean_object* l___regBuiltin_Lean_Parser_Term_letrec_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_tuple_parenthesizer___closed__5; @@ -2649,7 +2687,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_letExpr_declRange__1___close static lean_object* l_Lean_Parser_Term_byTactic_formatter___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveEqnsDecl_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_letEqnsDecl_parenthesizer___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Term_funBinder_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstFieldBinder_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_typeSpec_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -2748,6 +2785,7 @@ static lean_object* l_Lean_Parser_Term_dynamicQuot_formatter___closed__4; static lean_object* l_Lean_Parser_Term_letPatDecl___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_macroLastArg_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_strictImplicitLeftBracket___closed__6; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__13; static lean_object* l_Lean_Parser_Term_defaultOrOfNonempty_formatter___closed__4; static lean_object* l_Lean_Parser_Term_forInMacro_x27___closed__2; static lean_object* l_Lean_Parser_Term_binderTactic_formatter___closed__4; @@ -2777,6 +2815,7 @@ static lean_object* l_Lean_Parser_Term_inaccessible___closed__5; static lean_object* l_Lean_Parser_Term_doubleQuotedName_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_dynamicQuot_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_tuple___closed__9; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5; static lean_object* l_Lean_Parser_Tactic_tacticSeqIndentGt___closed__5; static lean_object* l_Lean_Parser_Term_let__fun_formatter___closed__6; static lean_object* l_Lean_Parser_Term_haveId___closed__3; @@ -2805,7 +2844,6 @@ static lean_object* l_Lean_Parser_Term_unop_formatter___closed__2; extern lean_object* l_Lean_Parser_nameLit; static lean_object* l_Lean_Parser_Term_borrowed_formatter___closed__3; static lean_object* l_Lean_Parser_Term_doubleQuotedName_parenthesizer___closed__7; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43; static lean_object* l___regBuiltin_Lean_Parser_Term_explicitUniv_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_binderDefault___closed__5; static lean_object* l_Lean_Parser_Term_sorry_formatter___closed__3; @@ -2902,7 +2940,9 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_quotSeq__1(lean_objec static lean_object* l_Lean_Parser_Term_forall___closed__3; static lean_object* l_Lean_Parser_Term_matchExprPat___closed__5; static lean_object* l_Lean_Parser_Term_matchExprAlts___closed__3; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letRecDecls; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40; static lean_object* l___regBuiltin_Lean_Parser_Term_withDeclName_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_waitIfTypeMVar___closed__9; static lean_object* l___regBuiltin_Lean_Parser_Term_tuple_formatter__1___closed__2; @@ -2928,6 +2968,7 @@ static lean_object* l_Lean_Parser_Term_letIdBinder___closed__3; static lean_object* l_Lean_Parser_Term_let_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Term_letDecl___closed__2; static lean_object* l_Lean_Parser_Term_basicFun_formatter___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55; static lean_object* l_Lean_Parser_Term_letRecDecls_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_sorry_formatter___closed__2; static lean_object* l_Lean_Parser_Term_funStrictImplicitBinder_formatter___closed__5; @@ -2966,7 +3007,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_letRecDecl_parenthesizer__1_ static lean_object* l_Lean_Parser_Term_letMVar___closed__1; lean_object* l_Lean_PrettyPrinter_Parenthesizer_checkColGt_parenthesizer___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_declRange__1___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50; static lean_object* l_Lean_Parser_Term_fromTerm___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprAlt_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_let__fun_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -3011,7 +3051,6 @@ static lean_object* l_Lean_Parser_Term_namedPattern_formatter___closed__4; static lean_object* l_Lean_Parser_Term_let__tmp_formatter___closed__6; static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__16; static lean_object* l_Lean_Parser_Term_structInstLVal_parenthesizer___closed__5; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51; static lean_object* l___regBuiltin_Lean_Parser_Term_binrel_declRange__1___closed__5; static lean_object* l_Lean_Parser_Term_generalizingParam_parenthesizer___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_panic_formatter__1___closed__1; @@ -3040,6 +3079,8 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_app_declRange__1___closed__1 static lean_object* l_Lean_Parser_Term_str___closed__1; static lean_object* l_Lean_Parser_Tactic_quot___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_dbgTrace_declRange__1___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62; static lean_object* l___regBuiltin_Lean_Parser_Term_explicitUniv_declRange__1___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_explicit_declRange__1___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_stateRefT_declRange__1___closed__1; @@ -3082,6 +3123,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused__1(lean static lean_object* l_Lean_Parser_Term_motive___closed__11; static lean_object* l_Lean_Parser_Term_structInstFieldEqns_formatter___closed__2; static lean_object* l_Lean_Parser_Term_binrel__no__prop_parenthesizer___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31; static lean_object* l___regBuiltin_Lean_Parser_Term_leftact_parenthesizer__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_pipeProj_declRange__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Term_unop; @@ -3090,6 +3132,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_suffix_docString static lean_object* l___regBuiltin_Lean_Parser_Term_declName_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_attrInstance_parenthesizer___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_let__delayed__1(lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_haveI_declRange__1___closed__1; static lean_object* l_Lean_Parser_Term_typeSpec___closed__4; static lean_object* l_Lean_Parser_Term_matchExprPat_parenthesizer___closed__8; @@ -3099,6 +3142,7 @@ static lean_object* l_Lean_Parser_Term_trueVal___closed__6; static lean_object* l___regBuiltin_Lean_Parser_Term_falseVal_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_matchAltsWhereDecls___closed__3; static lean_object* l_Lean_Parser_Term_macroDollarArg___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeMVar_declRange__1___closed__1; static lean_object* l_Lean_Parser_Term_inaccessible___closed__10; static lean_object* l_Lean_Parser_Term_show_formatter___closed__4; @@ -3169,7 +3213,6 @@ static lean_object* l_Lean_Parser_Term_binrel__no__prop_formatter___closed__1; static lean_object* l_Lean_Parser_Tactic_quot___closed__4; static lean_object* l_Lean_Parser_Term_let__delayed___closed__2; static lean_object* l_Lean_Parser_Term_trueVal___closed__8; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_proj_declRange__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_pipeProj_declRange__1(lean_object*); static lean_object* l_Lean_Parser_Term_showRhs___closed__1; @@ -3207,6 +3250,7 @@ static lean_object* l_Lean_Parser_Term_letDecl___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_seq1_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_optIdent_formatter___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_haveIdLhs_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9; lean_object* l_Lean_PrettyPrinter_Parenthesizer_checkPrec_parenthesizer___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_letRecDecls_formatter___closed__3; static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__5; @@ -3261,6 +3305,7 @@ static lean_object* l_Lean_Parser_Termination_terminationBy___closed__7; static lean_object* l_Lean_Parser_Term_depArrow___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_show; static lean_object* l___regBuiltin_Lean_Parser_Term_borrowed_formatter__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50; static lean_object* l_Lean_Parser_Term_letrec_formatter___closed__8; static lean_object* l_Lean_Parser_Term_optIdent___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_unsafe_docString__1___closed__1; @@ -3294,6 +3339,7 @@ static lean_object* l_Lean_Parser_Term_let__delayed_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_fun_formatter___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_defaultOrOfNonempty_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_letMVar_declRange__1___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42; static lean_object* l_Lean_Parser_Term_letDecl_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_let__fun_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Term_letRecDecl_formatter___closed__5; @@ -3302,7 +3348,6 @@ static lean_object* l_Lean_Parser_Term_defaultOrOfNonempty___closed__6; static lean_object* l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_arrow_declRange__1___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_clear_declRange__1(lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29; static lean_object* l_Lean_Parser_Term_pipeProj___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Term_namedArgument_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_binrel_docString__1(lean_object*); @@ -3313,6 +3358,7 @@ static lean_object* l_Lean_Parser_Term_letIdDecl___closed__9; static lean_object* l_Lean_Parser_Term_attributes___closed__13; static lean_object* l_Lean_Parser_Term_whereDecls___closed__1; static lean_object* l_Lean_Parser_Term_structInstArrayRef___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57; static lean_object* l_Lean_Parser_Term_letrec___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_let__delayed_formatter__1___closed__1; static lean_object* l_Lean_Parser_Tactic_seq1_parenthesizer___closed__1; @@ -3381,6 +3427,7 @@ static lean_object* l_Lean_Parser_Term_leading__parser___closed__11; static lean_object* l___regBuiltin_Lean_Parser_Term_letI_declRange__1___closed__3; static lean_object* l_Lean_Parser_Term_matchDiscr_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Term_match_parenthesizer___closed__14; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26; static lean_object* l_Lean_Parser_Term_binderDefault_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_arrow_parenthesizer___closed__4; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_showTermElabImpl_formatter__1(lean_object*); @@ -3403,6 +3450,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_unop_declRange__1___closed__ static lean_object* l___regBuiltin_Lean_Parser_Term_subst_formatter__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_basicFun_parenthesizer__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_haveI_declRange__1___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstFieldDeclParser_formatter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_optIdent_formatter___closed__1; static lean_object* l_Lean_Parser_Termination_terminationBy___closed__3; @@ -3436,7 +3484,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_forall_formatter__1___closed static lean_object* l_Lean_Parser_Term_byTactic_x27_formatter___closed__1; static lean_object* l_Lean_Parser_Term_letrec_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_structInst___closed__19; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42; static lean_object* l_Lean_Parser_Tactic_seq1___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_fun_declRange__1___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_show_declRange__1(lean_object*); @@ -3445,6 +3492,7 @@ static lean_object* l_Lean_Parser_Tactic_quot_formatter___closed__1; static lean_object* l_Lean_Parser_Term_matchAltsWhereDecls_formatter___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_leftact_declRange__1(lean_object*); static lean_object* l_Lean_Parser_Term_dotIdent_parenthesizer___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_withDeclName_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_falseVal_formatter__1(lean_object*); static lean_object* l_Lean_Parser_Term_sufficesDecl_formatter___closed__5; @@ -3477,6 +3525,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_optExprPrecedence; static lean_object* l_Lean_Parser_Term_letIdLhs_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Term_quotedName___closed__5; static lean_object* l_Lean_Parser_Term_matchExprAlts___closed__9; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14; static lean_object* l_Lean_Parser_Tactic_tacticSeq_formatter___closed__2; static lean_object* l_Lean_Parser_Term_suffices_formatter___closed__1; static lean_object* l_Lean_Parser_Term_let__tmp_formatter___closed__2; @@ -3518,6 +3567,7 @@ static lean_object* l_Lean_Parser_Term_instBinder___closed__4; static lean_object* l_Lean_Parser_Term_let___closed__6; static lean_object* l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Term_attrInstance___closed__7; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_unsafe_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_syntheticHole___closed__9; static lean_object* l_Lean_Parser_Termination_decreasingBy_formatter___closed__5; @@ -3556,6 +3606,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Tactic_seq1_parenthesizer__1___cl static lean_object* l_Lean_Parser_Termination_decreasingBy_formatter___closed__4; static lean_object* l_Lean_Parser_Term_sufficesDecl_parenthesizer___closed__12; static lean_object* l_Lean_Parser_Term_motive___closed__3; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10; static lean_object* l_Lean_Parser_Term_waitIfTypeContainsMVar_formatter___closed__1; static lean_object* l_Lean_Parser_Term_letRecDecls___closed__3; static lean_object* l_Lean_Parser_Term_basicFun_formatter___closed__2; @@ -3570,7 +3621,6 @@ static lean_object* l_Lean_Parser_Term_dbgTrace___closed__10; extern lean_object* l_Lean_Parser_rawIdent; static lean_object* l_Lean_Parser_Term_nofun___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_waitIfTypeMVar_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55; static lean_object* l___regBuiltin_Lean_Parser_Term_structInstFieldEqns_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_showTermElabImpl_declRange__1___closed__2; static lean_object* l_Lean_Parser_Term_letExpr___closed__4; @@ -3639,6 +3689,8 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprPat_formatter(lean_object*, static lean_object* l___regBuiltin_Lean_Parser_Term_withDeclName_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_strictImplicitRightBracket_formatter___closed__3; static lean_object* l_Lean_Parser_Term_assert_formatter___closed__6; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__18; static lean_object* l_Lean_Parser_Term_forall_parenthesizer___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_depArrow_formatter__1___closed__1; static lean_object* l_Lean_Parser_Term_haveIdDecl_parenthesizer___closed__1; @@ -3672,6 +3724,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_namedArgument_formatter__1__ static lean_object* l___regBuiltin_Lean_Parser_Term_trailing__parser_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_structInstLVal_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_declName_declRange__1___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34; LEAN_EXPORT lean_object* l_Lean_Parser_Term_stateRefT_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_instBinder___closed__5; static lean_object* l_Lean_Parser_Term_byTactic_x27___closed__1; @@ -3756,6 +3809,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_proj__1(lean_object*); static lean_object* l_Lean_Parser_Termination_decreasingBy_formatter___closed__6; static lean_object* l_Lean_Parser_Term_generalizingParam_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_assert_parenthesizer___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44; static lean_object* l___regBuiltin_Lean_Parser_Term_tuple_declRange__1___closed__4; static lean_object* l_Lean_Parser_Term_binop__lazy___closed__7; static lean_object* l_Lean_Parser_Tactic_quotSeq_parenthesizer___closed__6; @@ -3797,6 +3851,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_bracketedBinder___boxed(lean_object* static lean_object* l_Lean_Parser_Term_typeAscription_formatter___closed__11; static lean_object* l_Lean_Parser_Term_motive_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_scientific_formatter___closed__1; +LEAN_EXPORT lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532_(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_binrel__no__prop_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_doubleQuotedName_parenthesizer___closed__3___boxed__const__1; static lean_object* l_Lean_Parser_Term_letIdDecl___closed__5; @@ -3838,6 +3893,7 @@ static lean_object* l_Lean_Parser_Term_basicFun_parenthesizer___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_ident__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_binrel_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Tactic_quotSeq_formatter___closed__3; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__10; static lean_object* l___regBuiltin_Lean_Parser_Term_letRecDecl_docString__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_motive_formatter__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_type; @@ -4021,6 +4077,7 @@ static lean_object* l_Lean_Parser_Term_leading__parser___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_binrel__no__prop_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_matchExprPat___closed__8; static lean_object* l_Lean_Parser_Term_structInst___closed__13; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__16; static lean_object* l___regBuiltin_Lean_Parser_Term_num_declRange__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_binrel_declRange__1___closed__7; static lean_object* l_Lean_Parser_Term_noImplicitLambda___closed__5; @@ -4049,7 +4106,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_namedPattern_declRange_ static lean_object* l___regBuiltin_Lean_Parser_Term_letDecl_docString__1___closed__1; static lean_object* l_Lean_Parser_Tactic_quotSeq_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_arrow___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15; static lean_object* l_Lean_Parser_Term_whereDecls_parenthesizer___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Tactic_seq1_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_funImplicitBinder___closed__2; @@ -4069,6 +4125,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_withDeclName__1(lean_ob static lean_object* l_Lean_Parser_Term_dbgTrace_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_noImplicitLambda___closed__3; lean_object* l_Lean_Parser_withoutForbidden_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_nomatch___closed__9; static lean_object* l_Lean_Parser_Term_dynamicQuot___closed__10; LEAN_EXPORT lean_object* l_Lean_Parser_Term_haveIdLhs; @@ -4105,13 +4162,16 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_letMVar_parenthesizer__1___c LEAN_EXPORT lean_object* l_Lean_Parser_Term_letDecl_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_structInst_declRange__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchAltExpr; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10; static lean_object* l_Lean_Parser_Term_withDeclName___closed__1; static lean_object* l_Lean_Parser_Term_let__tmp_parenthesizer___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_trailing__parser_declRange__1___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_waitIfContainsMVar_formatter__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52; static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__7; static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__2; static lean_object* l_Lean_Parser_Term_forInMacro_x27_parenthesizer___closed__2; +static lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; static lean_object* l_Lean_Parser_Term_namedPattern___closed__1; static lean_object* l_Lean_Parser_Term_suffices_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_byTactic_x27___closed__4; @@ -4119,7 +4179,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_ident__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_dynamicQuot___closed__12; static lean_object* l___regBuiltin_Lean_Parser_Term_letDecl_formatter__1___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36; static lean_object* l___regBuiltin_Lean_Parser_Term_scientific_declRange__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_rightact_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_type___closed__8; @@ -4140,13 +4199,11 @@ static lean_object* l_Lean_Parser_Term_macroDollarArg_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_arrow_formatter__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_assert_parenthesizer__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letPatDecl_formatter__1(lean_object*); -LEAN_EXPORT lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_attributes_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_quot_formatter___closed__6; static lean_object* l_Lean_Parser_Term_basicFun_formatter___closed__6; static lean_object* l_Lean_Parser_Term_ensureTypeOf_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_binderTactic___closed__10; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11; static lean_object* l___regBuiltin_Lean_Parser_Term_sorry_declRange__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_namedArgument_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_funStrictImplicitBinder_formatter___closed__4; @@ -4166,7 +4223,6 @@ static lean_object* l_Lean_Parser_Tactic_seq1___closed__1; static lean_object* l_Lean_Parser_Term_leftact_parenthesizer___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Termination_terminationBy_x3f; static lean_object* l_Lean_Parser_Term_letMVar___closed__11; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24; static lean_object* l_Lean_Parser_Term_haveId___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_letPatDecl_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_nomatch_parenthesizer___closed__3; @@ -4183,6 +4239,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_dbgTrace_declRange__1___clos static lean_object* l_Lean_Parser_Command_docComment___closed__5; static lean_object* l_Lean_Parser_Term_doubleQuotedName___closed__9; static lean_object* l_Lean_Parser_Term_syntheticHole___closed__7; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__4; static lean_object* l_Lean_Parser_Tactic_quot_formatter___closed__3; static lean_object* l_Lean_Parser_Term_anonymousCtor_formatter___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_type_parenthesizer__1___closed__1; @@ -4209,7 +4266,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_letExpr_declRange__1___close static lean_object* l___regBuiltin_Lean_Parser_Term_panic_declRange__1___closed__7; static lean_object* l_Lean_Parser_Term_show___closed__7; static lean_object* l_Lean_Parser_Tactic_sepByIndentSemicolon___closed__10; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63; static lean_object* l_Lean_Parser_Term_letRecDecl___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_noImplicitLambda_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_optEllipsis___closed__8; @@ -4266,13 +4322,13 @@ static lean_object* l_Lean_Parser_Term_letI___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_explicit; static lean_object* l_Lean_Parser_Term_haveIdDecl___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_structInstLVal_formatter__1___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52; LEAN_EXPORT lean_object* l_Lean_Parser_Term_macroArg_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Parser_skip; static lean_object* l_Lean_Parser_Term_doubleQuotedName_formatter___closed__3; static lean_object* l_Lean_Parser_Term_nomatch___closed__6; static lean_object* l_Lean_Parser_Term_forInMacro___closed__10; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_subst_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13; static lean_object* l___regBuiltin_Lean_Parser_Term_binop__lazy_declRange__1___closed__6; lean_object* l_Lean_Parser_ppIndent_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_quotSeq; @@ -4298,10 +4354,12 @@ static lean_object* l_Lean_Parser_Term_letIdDecl___closed__3; static lean_object* l_Lean_Parser_Tactic_seq1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_inaccessible_docString__1(lean_object*); static lean_object* l_Lean_Parser_Term_letRecDecls_formatter___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25; static lean_object* l_Lean_Parser_Term_dotIdent_formatter___closed__3; lean_object* l_Lean_Parser_parserOfStack(lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_let__fun___closed__7; static lean_object* l_Lean_Parser_Term_typeAscription___closed__11; +static lean_object* l_Lean_Parser_Termination_terminationBy___closed__19; static lean_object* l_Lean_Parser_Term_structInst___closed__15; static lean_object* l_Lean_Parser_Term_letrec___closed__5; LEAN_EXPORT lean_object* l_Lean_Parser_Term_anonymousCtor; @@ -4314,7 +4372,6 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Command_commentBody_parenthesizer___boxed LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_defaultOrOfNonempty__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_matchExpr_parenthesizer__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_binrel_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19; static lean_object* l___regBuiltin_Lean_Parser_Term_num_declRange__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstFields_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Parser_unicodeSymbol_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -4326,7 +4383,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_let_declRange__1___closed__7 LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_let_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_binderDefault_parenthesizer___closed__4; static lean_object* l_Lean_Parser_Tactic_initFn____x40_Lean_Parser_Term___hyg_185____closed__14; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12; static lean_object* l_Lean_Parser_Term_panic___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprAlts(lean_object*); static lean_object* l_Lean_Parser_Term_motive_formatter___closed__3; @@ -4337,7 +4393,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_dynamicQuot_declRange__1___c static lean_object* l_Lean_Parser_Term_motive_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_matchExprAlts___closed__7; static lean_object* l_Lean_Parser_Term_trailing__parser_formatter___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_clear_formatter__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_let__tmp_declRange__1___closed__3; static lean_object* l_Lean_Parser_Term_unreachable_parenthesizer___closed__3; @@ -4353,6 +4408,7 @@ static lean_object* l_Lean_Parser_Term_byTactic_x27___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Tactic_tacticSeqIndentGt_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_typeAscription_formatter___closed__5; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61; LEAN_EXPORT lean_object* l_Lean_Parser_Term_binderDefault_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_str_declRange__1___closed__3; LEAN_EXPORT lean_object* l_Lean_Parser_Term_assert; @@ -4367,6 +4423,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_namedArgument; static lean_object* l_Lean_Parser_Term_haveI_formatter___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Term_instCoeTSyntaxConsSyntaxNodeKindMkStr4Nil__lean__1___boxed(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_byTactic_declRange__1___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17; LEAN_EXPORT lean_object* l_Lean_Parser_Term_have_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_nofun___closed__3; static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__11; @@ -4448,6 +4505,7 @@ static lean_object* l_Lean_Parser_Term_dotIdent_formatter___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letrec_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Term_haveId_formatter___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_rightact_docString__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60; static lean_object* l___regBuiltin_Lean_Parser_Term_completion_declRange__1___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_implicitBinder_docString__1___closed__3; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot_formatter___closed__3; @@ -4472,13 +4530,13 @@ static lean_object* l_Lean_Parser_Term_scientific___closed__1; static lean_object* l_Lean_Parser_Term_depArrow___closed__1; static lean_object* l_Lean_Parser_Term_anonymousCtor___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_let__tmp_formatter__1(lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56; static lean_object* l_Lean_Parser_Term_dbgTrace___closed__6; static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__6; static lean_object* l_Lean_Parser_Term_binrel_formatter___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_rightact_declRange__1___closed__1; static lean_object* l_Lean_Parser_Term_fun_parenthesizer___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_defaultOrOfNonempty_parenthesizer__1___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54; static lean_object* l_Lean_Parser_Term_identProjKind___closed__2; static lean_object* l_Lean_Parser_Term_forInMacro___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_hole_declRange__1___closed__7; @@ -4520,7 +4578,6 @@ static lean_object* l_Lean_Parser_Term_matchExprPat___closed__7; static lean_object* l_Lean_Parser_Term_unreachable___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_scoped_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_generalizingParam_formatter___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57; static lean_object* l_Lean_Parser_Term_let__fun_formatter___closed__4; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_waitIfContainsMVar_formatter__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_omission_docString__1___closed__1; @@ -4542,7 +4599,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_nomatch_parenthesizer__1___c static lean_object* l_Lean_Parser_Term_paren_parenthesizer___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_trailing__parser_declRange__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_macroLastArg; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49; static lean_object* l_Lean_Parser_Term_instBinder_parenthesizer___closed__9; LEAN_EXPORT lean_object* l_Lean_Parser_Term_showTermElabImpl_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_haveId_parenthesizer__1___closed__2; @@ -4617,7 +4673,6 @@ static lean_object* l_Lean_Parser_Term_trailing__parser___closed__9; lean_object* l_Lean_PrettyPrinter_Formatter_andthen_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Tactic_quot_parenthesizer___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused_docString__1___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_doubleQuotedName_docString__1(lean_object*); static lean_object* l_Lean_Parser_Term_explicitUniv_parenthesizer___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_haveEqnsDecl_parenthesizer__1___closed__1; @@ -4690,6 +4745,7 @@ static lean_object* l_Lean_Parser_Term_letMVar___closed__14; static lean_object* l_Lean_Parser_Term_leading__parser___closed__5; static lean_object* l_Lean_Parser_Term_borrowed___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_whereDecls_parenthesizer__1___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36; static lean_object* l_Lean_Parser_Term_omission___closed__4; static lean_object* l_Lean_Parser_Term_letExpr___closed__10; static lean_object* l_Lean_Parser_Term_letEqnsDecl_formatter___closed__2; @@ -4762,7 +4818,6 @@ static lean_object* l_Lean_Parser_Term_letExpr_formatter___closed__11; static lean_object* l_Lean_Parser_Term_structInst___closed__8; static lean_object* l___regBuiltin_Lean_Parser_Term_assert_formatter__1___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_fromTerm; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20; static lean_object* l_Lean_Parser_Term_namedArgument___closed__10; LEAN_EXPORT lean_object* l_Lean_Parser_Term_whereDecls_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_byTactic_x27_parenthesizer__1___closed__1; @@ -4806,7 +4861,6 @@ static lean_object* l_Lean_Parser_Term_nomatch_parenthesizer___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Term_dbgTrace_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_let__fun_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_basicFun_formatter___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34; static lean_object* l_Lean_Parser_Term_dynamicQuot___closed__7; static lean_object* l___regBuiltin_Lean_Parser_Term_matchExpr_declRange__1___closed__6; static lean_object* l_Lean_Parser_Term_haveIdDecl_parenthesizer___closed__3; @@ -4836,6 +4890,7 @@ static lean_object* l_Lean_Parser_Term_nofun___closed__2; static lean_object* l_Lean_Parser_Term_waitIfTypeMVar_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_falseVal___closed__6; static lean_object* l_Lean_Parser_Term_sufficesDecl___closed__7; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30; LEAN_EXPORT lean_object* l_Lean_Parser_Term_funStrictImplicitBinder_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_ensureExpectedType_parenthesizer__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_typeAscription_declRange__1___closed__1; @@ -4896,6 +4951,7 @@ lean_object* l_Lean_Parser_sepBy1_parenthesizer___boxed(lean_object*, lean_objec static lean_object* l_Lean_Parser_Term_ensureTypeOf_formatter___closed__2; lean_object* l_Lean_Parser_lookahead(lean_object*); static lean_object* l_Lean_Parser_Term_str_formatter___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32; static lean_object* l_Lean_Parser_Term_ellipsis_parenthesizer___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_sorry_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot_parenthesizer___closed__2; @@ -4970,7 +5026,6 @@ static lean_object* l_Lean_Parser_Term_ellipsis_formatter___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_declName_parenthesizer__1(lean_object*); static lean_object* l_Lean_Parser_Termination_terminationBy_x3f___closed__2; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8; static lean_object* l_Lean_Parser_Term_let__delayed_formatter___closed__4; static lean_object* l_Lean_Parser_Term_unreachable___closed__5; static lean_object* l_Lean_Parser_Term_leading__parser_formatter___closed__8; @@ -5005,7 +5060,6 @@ static lean_object* l_Lean_Parser_Term_let__delayed_parenthesizer___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_have_declRange__1___closed__6; static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed___closed__6; static lean_object* l_Lean_Parser_Term_namedPattern_parenthesizer___closed__2; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44; static lean_object* l___regBuiltin_Lean_Parser_Term_suffices_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_ensureTypeOf_formatter___closed__3; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_paren_formatter__1(lean_object*); @@ -5047,7 +5101,6 @@ static lean_object* l_Lean_Parser_Term_funStrictImplicitBinder_parenthesizer___c static lean_object* l_Lean_Parser_Term_suffices_parenthesizer___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInst_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_unop_formatter___closed__5; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45; static lean_object* l_Lean_Parser_Term_instBinder___closed__6; static lean_object* l_Lean_Parser_Term_haveI_parenthesizer___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_parenthesizer__1(lean_object*); @@ -5079,6 +5132,7 @@ static lean_object* l_Lean_Parser_Tactic_sepByIndentSemicolon___closed__11; static lean_object* l___regBuiltin_Lean_Parser_Term_subst_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_sort_declRange__1___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_falseVal_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__9; static lean_object* l_Lean_Parser_Term_whereDecls___closed__8; static lean_object* l_Lean_Parser_Term_letExpr_parenthesizer___closed__8; static lean_object* l_Lean_Parser_Term_doubleQuotedName___closed__13; @@ -5087,8 +5141,10 @@ static lean_object* l_Lean_Parser_Term_leading__parser___closed__9; static lean_object* l_Lean_Parser_Term_dynamicQuot_formatter___closed__7; static lean_object* l_Lean_Parser_Term_explicit___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_binop__lazy_docString__1___closed__1; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveIdDecl_formatter__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_fun_formatter__1___closed__1; +static lean_object* l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14; static lean_object* l_Lean_Parser_Term_letExpr_parenthesizer___closed__11; static lean_object* l___regBuiltin_Lean_Parser_Term_noImplicitLambda_parenthesizer__1___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_have_declRange__1(lean_object*); @@ -5123,6 +5179,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_binderTactic_formatter__1___ static lean_object* l_Lean_Parser_Term_matchExpr_formatter___closed__6; static lean_object* l_Lean_Parser_Term_leading__parser_parenthesizer___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_showTermElabImpl_parenthesizer__1(lean_object*); +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__5; static lean_object* l_Lean_Parser_Term_matchExpr_formatter___closed__8; static lean_object* l_Lean_Parser_Term_argument___closed__7; static lean_object* l_Lean_Parser_Term_noErrorIfUnused___closed__8; @@ -5167,9 +5224,9 @@ static lean_object* l_Lean_Parser_Term_sufficesDecl_parenthesizer___closed__10; static lean_object* l_Lean_Parser_Term_tuple_parenthesizer___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_basicFun; static lean_object* l_Lean_Parser_Term_attrKind_parenthesizer___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39; static lean_object* l___regBuiltin_Lean_Parser_Term_show_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_let_parenthesizer__1___closed__1; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37; static lean_object* l_Lean_Parser_Term_generalizingParam___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_doubleQuotedName_declRange__1___closed__3; static lean_object* l_Lean_Parser_Tactic_tacticSeq1Indented___closed__3; @@ -5184,6 +5241,7 @@ lean_object* l_Lean_Parser_sepBy_parenthesizer___boxed(lean_object*, lean_object static lean_object* l___regBuiltin_Lean_Parser_Term_syntheticHole_parenthesizer__1___closed__1; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_namedArgument_formatter__1(lean_object*); +LEAN_EXPORT lean_object* l_Lean_Parser_Termination_partialFixpoint; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_rightact__1(lean_object*); static lean_object* l_Lean_Parser_Term_scoped_formatter___closed__1; static lean_object* l_Lean_Parser_Term_withDeclName___closed__5; @@ -5201,9 +5259,9 @@ static lean_object* l_Lean_Parser_Term_letIdLhs_formatter___closed__6; LEAN_EXPORT lean_object* l_Lean_Parser_Term_structInstLVal_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_haveI_declRange__1(lean_object*); static lean_object* l_Lean_Parser_Term_fun___closed__9; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41; static lean_object* l_Lean_Parser_Term_syntheticHole___closed__1; static lean_object* l_Lean_Parser_Term_structInstArrayRef_parenthesizer___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37; static lean_object* l___regBuiltin_Lean_Parser_Term_noErrorIfUnused_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_letExpr_declRange__1___closed__3; static lean_object* l_Lean_Parser_Term_match_parenthesizer___closed__2; @@ -5215,8 +5273,8 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_borrowed_parenthesizer__1___ static lean_object* l___regBuiltin_Lean_Parser_Term_ensureTypeOf_declRange__1___closed__6; static lean_object* l_Lean_Parser_Term_forInMacro_x27_parenthesizer___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_matchDiscr_formatter__1___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3; static lean_object* l_Lean_Parser_Term_fun_formatter___closed__3; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18; LEAN_EXPORT lean_object* l_Lean_Parser_Term_optType; static lean_object* l___regBuiltin_Lean_Parser_Term_show_parenthesizer__1___closed__2; static lean_object* l_Lean_Parser_Term_tuple___closed__4; @@ -5298,6 +5356,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_declName_declRange__1___clos static lean_object* l_Lean_Parser_Term_funBinder_parenthesizer___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_type_docString__1___closed__1; static lean_object* l_Lean_Parser_Term_typeAscription_parenthesizer___closed__8; +static lean_object* l_Lean_Parser_Termination_terminationBy___closed__18; static lean_object* l_Lean_Parser_Term_matchAlt_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_letDecl___closed__7; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_paren_parenthesizer__1(lean_object*); @@ -5334,7 +5393,6 @@ static lean_object* l_Lean_Parser_Term_matchExprPat_formatter___closed__6; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_byTactic_declRange__1(lean_object*); static lean_object* l___regBuiltin_Lean_Parser_Term_noImplicitLambda_declRange__1___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Term_noErrorIfUnused_formatter(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23; static lean_object* l_Lean_Parser_Term_haveId___closed__7; LEAN_EXPORT lean_object* l_Lean_Parser_Tactic_sepByIndentSemicolon(lean_object*); static lean_object* l_Lean_Parser_Term_forall___closed__9; @@ -5432,8 +5490,10 @@ static lean_object* l_Lean_Parser_Term_structInst_parenthesizer___closed__7; static lean_object* l_Lean_Parser_Term_withAnonymousAntiquot___closed__8; static lean_object* l_Lean_Parser_Term_trueVal_formatter___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_let__delayed_declRange__1___closed__2; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63; static lean_object* l_Lean_Parser_Term_macroDollarArg___closed__1; static lean_object* l_Lean_Parser_Termination_terminationBy___closed__10; +static lean_object* l_Lean_Parser_Termination_partialFixpoint___closed__1; static lean_object* l_Lean_Parser_Term_letDecl_formatter___closed__5; static lean_object* l_Lean_Parser_Term_ensureTypeOf___closed__8; static lean_object* l_Lean_Parser_Term_leading__parser_formatter___closed__6; @@ -5508,6 +5568,7 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_show_parenthesizer__1(l static lean_object* l___regBuiltin_Lean_Parser_Term_clear_declRange__1___closed__4; LEAN_EXPORT lean_object* l_Lean_Parser_Term_letrec; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_waitIfTypeContainsMVar__1(lean_object*); +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23; static lean_object* l_Lean_Parser_Term_subst___closed__6; static lean_object* l_Lean_Parser_Term_generalizingParam___closed__9; static lean_object* l_Lean_Parser_Term_typeAscription___closed__13; @@ -5517,7 +5578,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_unop_formatter__1___closed__ static lean_object* l_Lean_Parser_Termination_terminationBy_x3f_parenthesizer___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_binrel__no__prop_parenthesizer__1(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_Term_explicitBinder(uint8_t); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33; static lean_object* l_Lean_Parser_Term_leftact_formatter___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_explicit_formatter__1(lean_object*); LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_ensureExpectedType__1(lean_object*); @@ -5581,6 +5641,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_sort_declRange__1___closed__ static lean_object* l_Lean_Parser_Term_binop__lazy_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_forall_parenthesizer___closed__12; static lean_object* l_Lean_Parser_Term_namedArgument___closed__6; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20; static lean_object* l_Lean_Parser_Tactic_tacticSeqBracketed_formatter___closed__1; static lean_object* l___regBuiltin_Lean_Parser_Term_let__delayed_declRange__1___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_attrKind_formatter__1(lean_object*); @@ -5641,7 +5702,6 @@ static lean_object* l_Lean_Parser_Term_panic_parenthesizer___closed__2; static lean_object* l_Lean_Parser_Term_typeAscription___closed__21; lean_object* l_Lean_Parser_withoutForbidden_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_generalizingParam_formatter___closed__8; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53; static lean_object* l_Lean_Parser_Term_matchAlts_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_ensureTypeOf___closed__2; static lean_object* l_Lean_Parser_Term_local___closed__5; @@ -5668,7 +5728,6 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_anonymousCtor_declRange__1__ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_letExpr__1(lean_object*); static lean_object* l_Lean_Parser_Term_let__tmp_parenthesizer___closed__2; LEAN_EXPORT lean_object* l_Lean_Parser_Term_nofun_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59; static lean_object* l_Lean_Parser_Term_pipeProj___closed__9; static lean_object* l___regBuiltin_Lean_Parser_Term_paren_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_waitIfContainsMVar___closed__1; @@ -5687,6 +5746,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_nofun_parenthesizer__1___clo static lean_object* l_Lean_Parser_Term_matchAltExpr___closed__1; static lean_object* l_Lean_Parser_Term_depArrow_parenthesizer___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_tuple_declRange__1___closed__1; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53; static lean_object* l_Lean_Parser_Term_explicitUniv_parenthesizer___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_structInst_declRange__1___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_forInMacro__1(lean_object*); @@ -5713,6 +5773,7 @@ static lean_object* l_Lean_Parser_Term_letIdLhs_formatter___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Term_rightact_formatter__1___closed__2; static lean_object* l___regBuiltin_Lean_Parser_Tactic_quotSeq_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_omission_formatter___closed__3; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33; static lean_object* l_Lean_Parser_Term_strictImplicitLeftBracket_formatter___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_cdot_parenthesizer__1___closed__1; static lean_object* l_Lean_Parser_Term_motive_parenthesizer___closed__3; @@ -5720,7 +5781,6 @@ static lean_object* l_Lean_Parser_Term_haveIdDecl_parenthesizer___closed__5; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_pipeCompletion_declRange__1(lean_object*); static lean_object* l_Lean_Parser_Term_structInstField___closed__13; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_inaccessible__1(lean_object*); -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1; static lean_object* l_Lean_Parser_Term_explicit_formatter___closed__4; static lean_object* l___regBuiltin_Lean_Parser_Term_depArrow_declRange__1___closed__6; static lean_object* l_Lean_Parser_Term_letrec___closed__13; @@ -5783,6 +5843,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_pipeCompletion_parenthesizer static lean_object* l_Lean_Parser_Term_typeAscription_formatter___closed__10; static lean_object* l_Lean_Parser_Term_structInstField___closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_haveDecl_parenthesizer__1___closed__2; +static lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5; static lean_object* l_Lean_Parser_Term_local_parenthesizer___closed__1; LEAN_EXPORT lean_object* l_Lean_Parser_Term_let__delayed_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_ensureExpectedType___closed__5; @@ -5880,7 +5941,6 @@ LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_withDeclName_formatter_ static lean_object* l_Lean_Parser_Term_structInst___closed__17; LEAN_EXPORT lean_object* l_Lean_Parser_Term_dotIdent_parenthesizer(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Parser_Term_proj_formatter___closed__4; -static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5; static lean_object* l___regBuiltin_Lean_Parser_Term_binop__lazy_formatter__1___closed__2; static lean_object* l_Lean_Parser_Term_binrel__no__prop___closed__3; static lean_object* l___regBuiltin_Lean_Parser_Term_proj_declRange__1___closed__6; @@ -5888,6 +5948,7 @@ static lean_object* l___regBuiltin_Lean_Parser_Term_ensureExpectedType_declRange LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_prop__1(lean_object*); static lean_object* l_Lean_Parser_Term_cdot_parenthesizer___closed__1; static lean_object* l_Lean_Parser_Term_borrowed_parenthesizer___closed__4; +static lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5; static lean_object* l_Lean_Parser_Term_assert___closed__2; static lean_object* l_Lean_Parser_Term_falseVal___closed__2; LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Term_dynamicQuot__1(lean_object*); @@ -42497,7 +42558,7 @@ static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__4() _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("structural ", 11, 11); +x_1 = lean_mk_string_unchecked("tailrecursion", 13, 13); return x_1; } } @@ -42514,13 +42575,31 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__6() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("structural ", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__7() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbol(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__8() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__5; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__7; x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__7() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__9() { _start: { lean_object* x_1; lean_object* x_2; @@ -42529,60 +42608,40 @@ x_2 = l_Lean_Parser_many(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__8() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__10() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__7; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__9; x_2 = l_Lean_Parser_darrow___closed__2; x_3 = l_Lean_Parser_andthen(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__9() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__8; -x_2 = l_Lean_Parser_atomic(x_1); -return x_2; -} -} -static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__10() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__9; -x_2 = l_Lean_Parser_optional(x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__11() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Termination_terminationBy___closed__10; -x_2 = l_Lean_Parser_Term_typeAscription___closed__6; -x_3 = l_Lean_Parser_andthen(x_1, x_2); -return x_3; +x_2 = l_Lean_Parser_atomic(x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__12() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__6; -x_2 = l_Lean_Parser_Termination_terminationBy___closed__11; -x_3 = l_Lean_Parser_andthen(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__11; +x_2 = l_Lean_Parser_optional(x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__13() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__3; -x_2 = l_Lean_Parser_Termination_terminationBy___closed__12; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__12; +x_2 = l_Lean_Parser_Term_typeAscription___closed__6; x_3 = l_Lean_Parser_andthen(x_1, x_2); return x_3; } @@ -42590,21 +42649,20 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__14() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; -x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_terminationBy___closed__13; -x_4 = l_Lean_Parser_leadingNode(x_1, x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__8; +x_2 = l_Lean_Parser_Termination_terminationBy___closed__13; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__1; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__5; x_2 = l_Lean_Parser_Termination_terminationBy___closed__14; -x_3 = l_Lean_Parser_withAntiquot(x_1, x_2); +x_3 = l_Lean_Parser_orelse(x_1, x_2); return x_3; } } @@ -42612,8 +42670,39 @@ static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__16() _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__3; x_2 = l_Lean_Parser_Termination_terminationBy___closed__15; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; +x_2 = lean_unsigned_to_nat(1024u); +x_3 = l_Lean_Parser_Termination_terminationBy___closed__16; +x_4 = l_Lean_Parser_leadingNode(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__18() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__1; +x_2 = l_Lean_Parser_Termination_terminationBy___closed__17; +x_3 = l_Lean_Parser_withAntiquot(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy___closed__19() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; +x_2 = l_Lean_Parser_Termination_terminationBy___closed__18; x_3 = l_Lean_Parser_withCache(x_1, x_2); return x_3; } @@ -42622,7 +42711,7 @@ static lean_object* _init_l_Lean_Parser_Termination_terminationBy() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Termination_terminationBy___closed__16; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__19; return x_1; } } @@ -42724,6 +42813,222 @@ x_1 = l_Lean_Parser_Termination_terminationBy_x3f___closed__6; return x_1; } } +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partialFixpoint", 15, 15); +return x_1; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Lean_Parser_Command_docComment___closed__1; +x_2 = l_Lean_Parser_Command_docComment___closed__2; +x_3 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__1; +x_4 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Defines a possibly non-terminating function as a fixed-point in a suitable partial order.\n\nSuch a function is compiled as if it was marked `partial`, but its equations are provided as\ntheorems, so that it can be verified.\n\nIn general it accepts functions whose return type has a `Lean.Order.CCPO` instance and whose\ndefinition is `Lean.Order.monotone` with regard to its recursive calls.\n\nCommon special cases are\n\n* Functions whose type is inhabited a-priori (as with `partial`), and where all recursive\n calls are in tail-call position.\n* Monadic in certain “monotone chain-complete monads” (in particular, `Option`) composed using\n the bind operator and other supported monadic combinators.\n\nBy default, the onotonicity proof is performed by the compositional `monotonicity` tactic. Using\nthe syntax `partial_fixpoint monotonicity by $tac` the proof can be done manually.\n", 881, 877); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_3 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3; +x_4 = l_Lean_addBuiltinDocString(x_2, x_3, x_1); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; uint8_t x_4; lean_object* x_5; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_3 = 1; +x_4 = 0; +x_5 = l_Lean_Parser_mkAntiquot(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("partial_fixpoint", 16, 16); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__2; +x_2 = l_Lean_Parser_symbol(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__4() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("indentation", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__4; +x_2 = l_Lean_Parser_checkColGt(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__6() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("monotonicity ", 13, 13); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__7() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__6; +x_2 = 0; +x_3 = l_Lean_Parser_nonReservedSymbol(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__8() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("indented monotonicity proof", 27, 27); +return x_1; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__8; +x_2 = l_Lean_Parser_checkColGt(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__9; +x_2 = l_Lean_Parser_Term_typeAscription___closed__6; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__11() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__7; +x_2 = l_Lean_Parser_Termination_partialFixpoint___closed__10; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__12() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__5; +x_2 = l_Lean_Parser_Termination_partialFixpoint___closed__11; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__12; +x_2 = l_Lean_Parser_optional(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__3; +x_2 = l_Lean_Parser_Termination_partialFixpoint___closed__13; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__14; +x_2 = l_Lean_Parser_withPosition(x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_2 = lean_unsigned_to_nat(1024u); +x_3 = l_Lean_Parser_Termination_partialFixpoint___closed__15; +x_4 = l_Lean_Parser_leadingNode(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__1; +x_2 = l_Lean_Parser_Termination_partialFixpoint___closed__16; +x_3 = l_Lean_Parser_withAntiquot(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint___closed__18() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_2 = l_Lean_Parser_Termination_partialFixpoint___closed__17; +x_3 = l_Lean_Parser_withCache(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__18; +return x_1; +} +} static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__1() { _start: { @@ -42904,8 +43209,8 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__2() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_x3f; -x_2 = l_Lean_Parser_Termination_terminationBy; +x_1 = l_Lean_Parser_Termination_terminationBy; +x_2 = l_Lean_Parser_Termination_partialFixpoint; x_3 = l_Lean_Parser_orelse(x_1, x_2); return x_3; } @@ -42914,22 +43219,32 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__3() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_skip; +x_1 = l_Lean_Parser_Termination_terminationBy_x3f; x_2 = l_Lean_Parser_Termination_suffix___closed__2; -x_3 = l_Lean_Parser_andthen(x_1, x_2); +x_3 = l_Lean_Parser_orelse(x_1, x_2); return x_3; } } static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_skip; +x_2 = l_Lean_Parser_Termination_suffix___closed__3; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_suffix___closed__3; +x_1 = l_Lean_Parser_Termination_suffix___closed__4; x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__5() { +static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -42938,43 +43253,43 @@ x_2 = l_Lean_Parser_optional(x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_suffix___closed__4; -x_2 = l_Lean_Parser_Termination_suffix___closed__5; -x_3 = l_Lean_Parser_andthen(x_1, x_2); -return x_3; -} -} static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__7() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; -x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_suffix___closed__6; -x_4 = l_Lean_Parser_leadingNode(x_1, x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_suffix___closed__5; +x_2 = l_Lean_Parser_Termination_suffix___closed__6; +x_3 = l_Lean_Parser_andthen(x_1, x_2); +return x_3; } } static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__8() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_suffix___closed__1; -x_2 = l_Lean_Parser_Termination_suffix___closed__7; -x_3 = l_Lean_Parser_withAntiquot(x_1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; +x_2 = lean_unsigned_to_nat(1024u); +x_3 = l_Lean_Parser_Termination_suffix___closed__7; +x_4 = l_Lean_Parser_leadingNode(x_1, x_2, x_3); +return x_4; } } static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__9() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; +x_1 = l_Lean_Parser_Termination_suffix___closed__1; x_2 = l_Lean_Parser_Termination_suffix___closed__8; +x_3 = l_Lean_Parser_withAntiquot(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_suffix___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; +x_2 = l_Lean_Parser_Termination_suffix___closed__9; x_3 = l_Lean_Parser_withCache(x_1, x_2); return x_3; } @@ -42983,7 +43298,7 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix() { _start: { lean_object* x_1; -x_1 = l_Lean_Parser_Termination_suffix___closed__9; +x_1 = l_Lean_Parser_Termination_suffix___closed__10; return x_1; } } @@ -44257,14 +44572,27 @@ return x_4; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__4() { _start: { +lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__6; +x_2 = 0; +x_3 = lean_box(x_2); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol_formatter___boxed), 7, 2); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__3; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__4; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__5() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -44274,7 +44602,7 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__6() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -44284,34 +44612,24 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__7() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__5; -x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__6; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__6; +x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__7; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__7; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_atomic_formatter), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__9() { _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__8; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_atomic_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -44319,21 +44637,19 @@ return x_2; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__10() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__9; -x_2 = l_Lean_Parser_Term_typeAscription_formatter___closed__5; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__4; -x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__10; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__10; +x_2 = l_Lean_Parser_Term_typeAscription_formatter___closed__5; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -44344,7 +44660,7 @@ static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___cl _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__2; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__5; x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__11; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -44355,10 +44671,34 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__13() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__3; +x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__12; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_orelse_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy_formatter___closed__2; +x_2 = l_Lean_Parser_Termination_terminationBy_formatter___closed__13; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__15() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_terminationBy_formatter___closed__12; +x_3 = l_Lean_Parser_Termination_terminationBy_formatter___closed__14; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -44371,7 +44711,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Termination_terminationBy_formatter___closed__1; -x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__13; +x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__15; x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -44409,6 +44749,172 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_3 = 1; +x_4 = 0; +x_5 = lean_box(x_3); +x_6 = lean_box(x_4); +x_7 = lean_alloc_closure((void*)(l_Lean_Parser_mkAntiquot_formatter___boxed), 9, 4); +lean_closure_set(x_7, 0, x_1); +lean_closure_set(x_7, 1, x_2); +lean_closure_set(x_7, 2, x_5); +lean_closure_set(x_7, 3, x_6); +return x_7; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__2; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__6; +x_2 = 0; +x_3 = lean_box(x_2); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol_formatter___boxed), 7, 2); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_tacticSeqIndentGt_formatter___closed__2; +x_2 = l_Lean_Parser_Term_typeAscription_formatter___closed__5; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3; +x_2 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_tacticSeqIndentGt_formatter___closed__2; +x_2 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2; +x_2 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_withPosition_formatter), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_2 = lean_unsigned_to_nat(1024u); +x_3 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9; +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_2); +lean_closure_set(x_4, 2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Parser_Termination_partialFixpoint_formatter(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1; +x_7 = l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10; +x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); +return x_8; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Parser_Command_docComment___closed__1; +x_2 = l_Lean_Parser_Command_docComment___closed__2; +x_3 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__1; +x_4 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_5 = l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_formatter__1___closed__1; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Termination_partialFixpoint_formatter), 5, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_formatter__1___closed__3; +x_3 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_4 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1; +x_5 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2; +x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} static lean_object* _init_l_Lean_Parser_Termination_decreasingBy_formatter___closed__1() { _start: { @@ -44550,8 +45056,8 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__2 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_formatter__1___closed__2; -x_2 = l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__2; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__2; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_orelse_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -44562,9 +45068,9 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__3 _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_decreasingBy_formatter___closed__2; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_formatter__1___closed__2; x_2 = l_Lean_Parser_Termination_suffix_formatter___closed__2; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_orelse_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -44573,14 +45079,26 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_decreasingBy_formatter___closed__2; +x_2 = l_Lean_Parser_Termination_suffix_formatter___closed__3; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_suffix_formatter___closed__3; +x_1 = l_Lean_Parser_Termination_suffix_formatter___closed__4; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_formatter), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__5() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -44590,25 +45108,25 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__6() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_suffix_formatter___closed__4; -x_2 = l_Lean_Parser_Termination_suffix_formatter___closed__5; +x_1 = l_Lean_Parser_Termination_suffix_formatter___closed__5; +x_2 = l_Lean_Parser_Termination_suffix_formatter___closed__6; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__7() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_formatter___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_suffix_formatter___closed__6; +x_3 = l_Lean_Parser_Termination_suffix_formatter___closed__7; x_4 = lean_alloc_closure((void*)(l_Lean_Parser_leadingNode_formatter___boxed), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -44621,7 +45139,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Termination_suffix_formatter___closed__1; -x_7 = l_Lean_Parser_Termination_suffix_formatter___closed__7; +x_7 = l_Lean_Parser_Termination_suffix_formatter___closed__8; x_8 = l_Lean_PrettyPrinter_Formatter_orelse_formatter(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -45804,14 +46322,27 @@ return x_4; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__4() { _start: { +lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Termination_terminationBy___closed__6; +x_2 = 0; +x_3 = lean_box(x_2); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol_parenthesizer___boxed), 7, 2); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__3; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__4; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__5() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -45821,7 +46352,7 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -45831,34 +46362,24 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7() { +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__5; -x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6; +x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__8() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7; -x_2 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_atomic_parenthesizer), 6, 1); -lean_closure_set(x_2, 0, x_1); -return x_2; -} -} static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__9() { _start: { lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__8; -x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); +x_2 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_atomic_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } @@ -45866,21 +46387,19 @@ return x_2; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__10() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; +lean_object* x_1; lean_object* x_2; x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__9; -x_2 = l_Lean_Parser_Term_typeAscription_parenthesizer___closed__3; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); -lean_closure_set(x_3, 0, x_1); -lean_closure_set(x_3, 1, x_2); -return x_3; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; } } static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__4; -x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__10; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__10; +x_2 = l_Lean_Parser_Term_typeAscription_parenthesizer___closed__3; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -45891,7 +46410,7 @@ static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer_ _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__2; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__5; x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__11; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); @@ -45902,10 +46421,34 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__3; +x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__12; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__2; +x_2 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__3; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__12; +x_3 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14; x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -45918,7 +46461,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__1; -x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13; +x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15; x_8 = l_Lean_PrettyPrinter_Parenthesizer_withAntiquot_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -45956,6 +46499,172 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; uint8_t x_3; uint8_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_3 = 1; +x_4 = 0; +x_5 = lean_box(x_3); +x_6 = lean_box(x_4); +x_7 = lean_alloc_closure((void*)(l_Lean_Parser_mkAntiquot_parenthesizer___boxed), 9, 4); +lean_closure_set(x_7, 0, x_1); +lean_closure_set(x_7, 1, x_2); +lean_closure_set(x_7, 2, x_5); +lean_closure_set(x_7, 3, x_6); +return x_7; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__2; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_symbol_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3() { +_start: +{ +lean_object* x_1; uint8_t x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Lean_Parser_Termination_partialFixpoint___closed__6; +x_2 = 0; +x_3 = lean_box(x_2); +x_4 = lean_alloc_closure((void*)(l_Lean_Parser_nonReservedSymbol_parenthesizer___boxed), 7, 2); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_3); +return x_4; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_tacticSeqIndentGt_parenthesizer___closed__2; +x_2 = l_Lean_Parser_Term_typeAscription_parenthesizer___closed__3; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3; +x_2 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Tactic_tacticSeqIndentGt_parenthesizer___closed__2; +x_2 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6; +x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2; +x_2 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8; +x_2 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_withPosition_parenthesizer), 6, 1); +lean_closure_set(x_2, 0, x_1); +return x_2; +} +} +static lean_object* _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_2 = lean_unsigned_to_nat(1024u); +x_3 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9; +x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer), 8, 3); +lean_closure_set(x_4, 0, x_1); +lean_closure_set(x_4, 1, x_2); +lean_closure_set(x_4, 2, x_3); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Lean_Parser_Termination_partialFixpoint_parenthesizer(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +_start: +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1; +x_7 = l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10; +x_8 = l_Lean_PrettyPrinter_Parenthesizer_withAntiquot_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); +return x_8; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Lean_Parser_Command_docComment___closed__1; +x_2 = l_Lean_Parser_Command_docComment___closed__2; +x_3 = l___regBuiltin_Lean_Parser_Termination_terminationBy_docString__1___closed__1; +x_4 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1; +x_5 = l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_parenthesizer__1___closed__1; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Termination_partialFixpoint_parenthesizer), 5, 0); +return x_1; +} +} +LEAN_EXPORT lean_object* l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1(lean_object* x_1) { +_start: +{ +lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_2 = l___regBuiltin_Lean_Parser_Tactic_tacticSeqBracketed_parenthesizer__1___closed__3; +x_3 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2; +x_4 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1; +x_5 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2; +x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); +return x_6; +} +} static lean_object* _init_l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__1() { _start: { @@ -46097,8 +46806,8 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___close _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_parenthesizer__1___closed__2; -x_2 = l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__2; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__2; +x_2 = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); @@ -46109,9 +46818,9 @@ static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___close _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__2; +x_1 = l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_parenthesizer__1___closed__2; x_2 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__2; -x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_orelse_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; @@ -46120,14 +46829,26 @@ return x_3; static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__4() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__2; +x_2 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__3; +x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); +lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__5() { +_start: +{ lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__3; +x_1 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__4; x_2 = lean_alloc_closure((void*)(l_Lean_Parser_optional_parenthesizer), 6, 1); lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__5() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__6() { _start: { lean_object* x_1; lean_object* x_2; @@ -46137,25 +46858,25 @@ lean_closure_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__6() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__7() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__4; -x_2 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__5; +x_1 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__5; +x_2 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__6; x_3 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_3, 0, x_1); lean_closure_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__7() { +static lean_object* _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__8() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l___regBuiltin_Lean_Parser_Termination_suffix_docString__1___closed__2; x_2 = lean_unsigned_to_nat(1024u); -x_3 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__6; +x_3 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__7; x_4 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_leadingNode_parenthesizer), 8, 3); lean_closure_set(x_4, 0, x_1); lean_closure_set(x_4, 1, x_2); @@ -46168,7 +46889,7 @@ _start: { lean_object* x_6; lean_object* x_7; lean_object* x_8; x_6 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__1; -x_7 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__7; +x_7 = l_Lean_Parser_Termination_suffix_parenthesizer___closed__8; x_8 = l_Lean_PrettyPrinter_Parenthesizer_withAntiquot_parenthesizer(x_6, x_7, x_1, x_2, x_3, x_4, x_5); return x_8; } @@ -67347,7 +68068,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprAlt_formatter(lean_object* _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__6; +x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__7; x_8 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_8, 0, x_7); lean_closure_set(x_8, 1, x_1); @@ -67394,7 +68115,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprElseAlt_formatter(lean_obje _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__6; +x_7 = l_Lean_Parser_Termination_terminationBy_formatter___closed__7; x_8 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Formatter_andthen_formatter), 7, 2); lean_closure_set(x_8, 0, x_7); lean_closure_set(x_8, 1, x_1); @@ -67818,7 +68539,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprAlt_parenthesizer(lean_obje _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6; +x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7; x_8 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_8, 0, x_7); lean_closure_set(x_8, 1, x_1); @@ -67865,7 +68586,7 @@ LEAN_EXPORT lean_object* l_Lean_Parser_Term_matchExprElseAlt_parenthesizer(lean_ _start: { lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__6; +x_7 = l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__7; x_8 = lean_alloc_closure((void*)(l_Lean_PrettyPrinter_Parenthesizer_andthen_parenthesizer), 7, 2); lean_closure_set(x_8, 0, x_7); lean_closure_set(x_8, 1, x_1); @@ -69869,7 +70590,7 @@ x_6 = l_Lean_KeyedDeclsAttribute_addBuiltin___rarg(x_2, x_3, x_4, x_5, x_1); return x_6; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -69879,7 +70600,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2() { _start: { lean_object* x_1; lean_object* x_2; @@ -69889,7 +70610,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3() { _start: { lean_object* x_1; lean_object* x_2; @@ -69899,7 +70620,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4() { _start: { lean_object* x_1; lean_object* x_2; @@ -69909,7 +70630,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5() { _start: { lean_object* x_1; lean_object* x_2; @@ -69919,7 +70640,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -69929,7 +70650,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7() { _start: { lean_object* x_1; lean_object* x_2; @@ -69939,7 +70660,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8() { _start: { lean_object* x_1; lean_object* x_2; @@ -69949,7 +70670,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9() { _start: { lean_object* x_1; lean_object* x_2; @@ -69959,7 +70680,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10() { _start: { lean_object* x_1; lean_object* x_2; @@ -69969,7 +70690,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -69979,7 +70700,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12() { _start: { lean_object* x_1; lean_object* x_2; @@ -69989,7 +70710,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13() { _start: { lean_object* x_1; lean_object* x_2; @@ -69999,7 +70720,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14() { _start: { lean_object* x_1; lean_object* x_2; @@ -70009,7 +70730,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15() { _start: { lean_object* x_1; lean_object* x_2; @@ -70019,7 +70740,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70029,7 +70750,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17() { _start: { lean_object* x_1; lean_object* x_2; @@ -70039,7 +70760,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18() { _start: { lean_object* x_1; lean_object* x_2; @@ -70049,7 +70770,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19() { _start: { lean_object* x_1; lean_object* x_2; @@ -70059,7 +70780,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20() { _start: { lean_object* x_1; lean_object* x_2; @@ -70069,7 +70790,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70079,7 +70800,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22() { _start: { lean_object* x_1; lean_object* x_2; @@ -70089,7 +70810,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23() { _start: { lean_object* x_1; lean_object* x_2; @@ -70099,7 +70820,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24() { _start: { lean_object* x_1; lean_object* x_2; @@ -70109,7 +70830,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25() { _start: { lean_object* x_1; lean_object* x_2; @@ -70119,7 +70840,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70129,7 +70850,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27() { _start: { lean_object* x_1; lean_object* x_2; @@ -70139,7 +70860,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28() { _start: { lean_object* x_1; lean_object* x_2; @@ -70149,7 +70870,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29() { _start: { lean_object* x_1; lean_object* x_2; @@ -70159,7 +70880,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30() { _start: { lean_object* x_1; lean_object* x_2; @@ -70169,7 +70890,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70179,7 +70900,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32() { _start: { lean_object* x_1; lean_object* x_2; @@ -70189,7 +70910,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33() { _start: { lean_object* x_1; lean_object* x_2; @@ -70199,7 +70920,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34() { _start: { lean_object* x_1; lean_object* x_2; @@ -70209,7 +70930,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35() { _start: { lean_object* x_1; lean_object* x_2; @@ -70219,7 +70940,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70229,7 +70950,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37() { _start: { lean_object* x_1; lean_object* x_2; @@ -70239,7 +70960,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38() { _start: { lean_object* x_1; lean_object* x_2; @@ -70249,7 +70970,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39() { _start: { lean_object* x_1; lean_object* x_2; @@ -70259,7 +70980,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40() { _start: { lean_object* x_1; lean_object* x_2; @@ -70269,7 +70990,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70279,7 +71000,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42() { _start: { lean_object* x_1; lean_object* x_2; @@ -70289,7 +71010,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43() { _start: { lean_object* x_1; lean_object* x_2; @@ -70299,7 +71020,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44() { _start: { lean_object* x_1; lean_object* x_2; @@ -70309,7 +71030,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45() { _start: { lean_object* x_1; lean_object* x_2; @@ -70319,7 +71040,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46() { _start: { lean_object* x_1; @@ -70327,29 +71048,29 @@ x_1 = lean_mk_string_unchecked("optSemicolon", 12, 12); return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46; +x_2 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46; x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_1 = l_Lean_Parser_Command_docComment___closed__1; x_2 = l_Lean_Parser_Command_docComment___closed__2; x_3 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_71____closed__14; -x_4 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46; +x_4 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46; x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); return x_5; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49() { _start: { lean_object* x_1; @@ -70357,27 +71078,27 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_optSemicolon), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52() { _start: { lean_object* x_1; @@ -70385,17 +71106,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_optSemicolon_formatter), 6, return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54() { _start: { lean_object* x_1; @@ -70403,17 +71124,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_optSemicolon_parenthesizer), return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; @@ -70423,7 +71144,7 @@ x_3 = l_Lean_Name_str___override(x_1, x_2); return x_3; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57() { _start: { lean_object* x_1; @@ -70431,17 +71152,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_structInstFields), 1, 0); return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59() { _start: { lean_object* x_1; lean_object* x_2; @@ -70451,7 +71172,7 @@ lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60() { _start: { lean_object* x_1; @@ -70459,17 +71180,17 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_structInstFields_formatter), return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62() { _start: { lean_object* x_1; @@ -70477,24 +71198,24 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Parser_Term_structInstFields_parenthesiz return x_1; } } -static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63() { +static lean_object* _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62; +x_1 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62; x_2 = lean_alloc_ctor(1, 1, 0); lean_ctor_set(x_2, 0, x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481_(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532_(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_2 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1; +x_2 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1; x_3 = l___regBuiltin_Lean_Parser_Term_letDecl_docString__1___closed__2; -x_4 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2; -x_5 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3; +x_4 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2; +x_5 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3; x_6 = l_Lean_Parser_Tactic_initFn____x40_Lean_Parser_Term___hyg_185____closed__6; x_7 = l_Lean_Parser_registerAlias(x_2, x_3, x_4, x_5, x_6, x_1); if (lean_obj_tag(x_7) == 0) @@ -70504,7 +71225,7 @@ x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); lean_dec(x_7); x_9 = l_Lean_Parser_Tactic_initFn____x40_Lean_Parser_Term___hyg_185____closed__9; -x_10 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4; +x_10 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4; x_11 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_2, x_10, x_8); if (lean_obj_tag(x_11) == 0) { @@ -70513,7 +71234,7 @@ x_12 = lean_ctor_get(x_11, 1); lean_inc(x_12); lean_dec(x_11); x_13 = l_Lean_Parser_Tactic_initFn____x40_Lean_Parser_Term___hyg_185____closed__12; -x_14 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5; +x_14 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5; x_15 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_2, x_14, x_12); if (lean_obj_tag(x_15) == 0) { @@ -70521,10 +71242,10 @@ lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean x_16 = lean_ctor_get(x_15, 1); lean_inc(x_16); lean_dec(x_15); -x_17 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6; +x_17 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6; x_18 = l___regBuiltin_Lean_Parser_Term_haveDecl_docString__1___closed__2; -x_19 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7; -x_20 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8; +x_19 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7; +x_20 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8; x_21 = l_Lean_Parser_registerAlias(x_17, x_18, x_19, x_20, x_6, x_16); if (lean_obj_tag(x_21) == 0) { @@ -70532,7 +71253,7 @@ lean_object* x_22; lean_object* x_23; lean_object* x_24; x_22 = lean_ctor_get(x_21, 1); lean_inc(x_22); lean_dec(x_21); -x_23 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9; +x_23 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9; x_24 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_17, x_23, x_22); if (lean_obj_tag(x_24) == 0) { @@ -70540,7 +71261,7 @@ lean_object* x_25; lean_object* x_26; lean_object* x_27; x_25 = lean_ctor_get(x_24, 1); lean_inc(x_25); lean_dec(x_24); -x_26 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10; +x_26 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10; x_27 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_17, x_26, x_25); if (lean_obj_tag(x_27) == 0) { @@ -70548,10 +71269,10 @@ lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean x_28 = lean_ctor_get(x_27, 1); lean_inc(x_28); lean_dec(x_27); -x_29 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11; +x_29 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11; x_30 = l___regBuiltin_Lean_Parser_Term_sufficesDecl_docString__1___closed__2; -x_31 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12; -x_32 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13; +x_31 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12; +x_32 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13; x_33 = l_Lean_Parser_registerAlias(x_29, x_30, x_31, x_32, x_6, x_28); if (lean_obj_tag(x_33) == 0) { @@ -70559,7 +71280,7 @@ lean_object* x_34; lean_object* x_35; lean_object* x_36; x_34 = lean_ctor_get(x_33, 1); lean_inc(x_34); lean_dec(x_33); -x_35 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14; +x_35 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14; x_36 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_29, x_35, x_34); if (lean_obj_tag(x_36) == 0) { @@ -70567,7 +71288,7 @@ lean_object* x_37; lean_object* x_38; lean_object* x_39; x_37 = lean_ctor_get(x_36, 1); lean_inc(x_37); lean_dec(x_36); -x_38 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15; +x_38 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15; x_39 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_29, x_38, x_37); if (lean_obj_tag(x_39) == 0) { @@ -70575,10 +71296,10 @@ lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean x_40 = lean_ctor_get(x_39, 1); lean_inc(x_40); lean_dec(x_39); -x_41 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16; +x_41 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16; x_42 = l_Lean_Parser_Term_letRecDecls___closed__2; -x_43 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17; -x_44 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18; +x_43 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17; +x_44 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18; x_45 = l_Lean_Parser_registerAlias(x_41, x_42, x_43, x_44, x_6, x_40); if (lean_obj_tag(x_45) == 0) { @@ -70586,7 +71307,7 @@ lean_object* x_46; lean_object* x_47; lean_object* x_48; x_46 = lean_ctor_get(x_45, 1); lean_inc(x_46); lean_dec(x_45); -x_47 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19; +x_47 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19; x_48 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_41, x_47, x_46); if (lean_obj_tag(x_48) == 0) { @@ -70594,7 +71315,7 @@ lean_object* x_49; lean_object* x_50; lean_object* x_51; x_49 = lean_ctor_get(x_48, 1); lean_inc(x_49); lean_dec(x_48); -x_50 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20; +x_50 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20; x_51 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_41, x_50, x_49); if (lean_obj_tag(x_51) == 0) { @@ -70602,10 +71323,10 @@ lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean x_52 = lean_ctor_get(x_51, 1); lean_inc(x_52); lean_dec(x_51); -x_53 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21; +x_53 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21; x_54 = l_Lean_Parser_Term_hole___closed__2; -x_55 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22; -x_56 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23; +x_55 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22; +x_56 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23; x_57 = l_Lean_Parser_registerAlias(x_53, x_54, x_55, x_56, x_6, x_52); if (lean_obj_tag(x_57) == 0) { @@ -70613,7 +71334,7 @@ lean_object* x_58; lean_object* x_59; lean_object* x_60; x_58 = lean_ctor_get(x_57, 1); lean_inc(x_58); lean_dec(x_57); -x_59 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24; +x_59 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24; x_60 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_53, x_59, x_58); if (lean_obj_tag(x_60) == 0) { @@ -70621,7 +71342,7 @@ lean_object* x_61; lean_object* x_62; lean_object* x_63; x_61 = lean_ctor_get(x_60, 1); lean_inc(x_61); lean_dec(x_60); -x_62 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25; +x_62 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25; x_63 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_53, x_62, x_61); if (lean_obj_tag(x_63) == 0) { @@ -70629,10 +71350,10 @@ lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean x_64 = lean_ctor_get(x_63, 1); lean_inc(x_64); lean_dec(x_63); -x_65 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26; +x_65 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26; x_66 = l_Lean_Parser_Term_syntheticHole___closed__2; -x_67 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27; -x_68 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28; +x_67 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27; +x_68 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28; x_69 = l_Lean_Parser_registerAlias(x_65, x_66, x_67, x_68, x_6, x_64); if (lean_obj_tag(x_69) == 0) { @@ -70640,7 +71361,7 @@ lean_object* x_70; lean_object* x_71; lean_object* x_72; x_70 = lean_ctor_get(x_69, 1); lean_inc(x_70); lean_dec(x_69); -x_71 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29; +x_71 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29; x_72 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_65, x_71, x_70); if (lean_obj_tag(x_72) == 0) { @@ -70648,7 +71369,7 @@ lean_object* x_73; lean_object* x_74; lean_object* x_75; x_73 = lean_ctor_get(x_72, 1); lean_inc(x_73); lean_dec(x_72); -x_74 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30; +x_74 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30; x_75 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_65, x_74, x_73); if (lean_obj_tag(x_75) == 0) { @@ -70656,10 +71377,10 @@ lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean x_76 = lean_ctor_get(x_75, 1); lean_inc(x_76); lean_dec(x_75); -x_77 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31; +x_77 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31; x_78 = l___regBuiltin_Lean_Parser_Term_matchDiscr_docString__1___closed__2; -x_79 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32; -x_80 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33; +x_79 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32; +x_80 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33; x_81 = l_Lean_Parser_registerAlias(x_77, x_78, x_79, x_80, x_6, x_76); if (lean_obj_tag(x_81) == 0) { @@ -70667,7 +71388,7 @@ lean_object* x_82; lean_object* x_83; lean_object* x_84; x_82 = lean_ctor_get(x_81, 1); lean_inc(x_82); lean_dec(x_81); -x_83 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34; +x_83 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34; x_84 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_77, x_83, x_82); if (lean_obj_tag(x_84) == 0) { @@ -70675,7 +71396,7 @@ lean_object* x_85; lean_object* x_86; lean_object* x_87; x_85 = lean_ctor_get(x_84, 1); lean_inc(x_85); lean_dec(x_84); -x_86 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35; +x_86 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35; x_87 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_77, x_86, x_85); if (lean_obj_tag(x_87) == 0) { @@ -70683,10 +71404,10 @@ lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean x_88 = lean_ctor_get(x_87, 1); lean_inc(x_88); lean_dec(x_87); -x_89 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36; +x_89 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36; x_90 = l___regBuiltin_Lean_Parser_Term_bracketedBinder_docString__1___closed__2; -x_91 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37; -x_92 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38; +x_91 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37; +x_92 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38; x_93 = l_Lean_Parser_registerAlias(x_89, x_90, x_91, x_92, x_6, x_88); if (lean_obj_tag(x_93) == 0) { @@ -70694,7 +71415,7 @@ lean_object* x_94; lean_object* x_95; lean_object* x_96; x_94 = lean_ctor_get(x_93, 1); lean_inc(x_94); lean_dec(x_93); -x_95 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39; +x_95 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39; x_96 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_89, x_95, x_94); if (lean_obj_tag(x_96) == 0) { @@ -70702,7 +71423,7 @@ lean_object* x_97; lean_object* x_98; lean_object* x_99; x_97 = lean_ctor_get(x_96, 1); lean_inc(x_97); lean_dec(x_96); -x_98 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40; +x_98 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40; x_99 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_89, x_98, x_97); if (lean_obj_tag(x_99) == 0) { @@ -70710,10 +71431,10 @@ lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; x_100 = lean_ctor_get(x_99, 1); lean_inc(x_100); lean_dec(x_99); -x_101 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41; +x_101 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41; x_102 = l___regBuiltin_Lean_Parser_Term_attrKind_docString__1___closed__2; -x_103 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42; -x_104 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43; +x_103 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42; +x_104 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43; x_105 = l_Lean_Parser_registerAlias(x_101, x_102, x_103, x_104, x_6, x_100); if (lean_obj_tag(x_105) == 0) { @@ -70721,7 +71442,7 @@ lean_object* x_106; lean_object* x_107; lean_object* x_108; x_106 = lean_ctor_get(x_105, 1); lean_inc(x_106); lean_dec(x_105); -x_107 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44; +x_107 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44; x_108 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_101, x_107, x_106); if (lean_obj_tag(x_108) == 0) { @@ -70729,7 +71450,7 @@ lean_object* x_109; lean_object* x_110; lean_object* x_111; x_109 = lean_ctor_get(x_108, 1); lean_inc(x_109); lean_dec(x_108); -x_110 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45; +x_110 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45; x_111 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_101, x_110, x_109); if (lean_obj_tag(x_111) == 0) { @@ -70737,10 +71458,10 @@ lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; x_112 = lean_ctor_get(x_111, 1); lean_inc(x_112); lean_dec(x_111); -x_113 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47; -x_114 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48; -x_115 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50; -x_116 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51; +x_113 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47; +x_114 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48; +x_115 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50; +x_116 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51; x_117 = l_Lean_Parser_registerAlias(x_113, x_114, x_115, x_116, x_6, x_112); if (lean_obj_tag(x_117) == 0) { @@ -70748,7 +71469,7 @@ lean_object* x_118; lean_object* x_119; lean_object* x_120; x_118 = lean_ctor_get(x_117, 1); lean_inc(x_118); lean_dec(x_117); -x_119 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53; +x_119 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53; x_120 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_113, x_119, x_118); if (lean_obj_tag(x_120) == 0) { @@ -70756,7 +71477,7 @@ lean_object* x_121; lean_object* x_122; lean_object* x_123; x_121 = lean_ctor_get(x_120, 1); lean_inc(x_121); lean_dec(x_120); -x_122 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55; +x_122 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55; x_123 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_113, x_122, x_121); if (lean_obj_tag(x_123) == 0) { @@ -70764,10 +71485,10 @@ lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; x_124 = lean_ctor_get(x_123, 1); lean_inc(x_124); lean_dec(x_123); -x_125 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56; +x_125 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56; x_126 = l_Lean_Parser_Term_structInstFields___closed__2; -x_127 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58; -x_128 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59; +x_127 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58; +x_128 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59; x_129 = l_Lean_Parser_registerAlias(x_125, x_126, x_127, x_128, x_6, x_124); if (lean_obj_tag(x_129) == 0) { @@ -70775,7 +71496,7 @@ lean_object* x_130; lean_object* x_131; lean_object* x_132; x_130 = lean_ctor_get(x_129, 1); lean_inc(x_130); lean_dec(x_129); -x_131 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61; +x_131 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61; x_132 = l_Lean_Parser_registerAliasCore___rarg(x_9, x_125, x_131, x_130); if (lean_obj_tag(x_132) == 0) { @@ -70783,7 +71504,7 @@ lean_object* x_133; lean_object* x_134; lean_object* x_135; x_133 = lean_ctor_get(x_132, 1); lean_inc(x_133); lean_dec(x_132); -x_134 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63; +x_134 = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63; x_135 = l_Lean_Parser_registerAliasCore___rarg(x_13, x_125, x_134, x_133); return x_135; } @@ -77848,6 +78569,12 @@ l_Lean_Parser_Termination_terminationBy___closed__15 = _init_l_Lean_Parser_Termi lean_mark_persistent(l_Lean_Parser_Termination_terminationBy___closed__15); l_Lean_Parser_Termination_terminationBy___closed__16 = _init_l_Lean_Parser_Termination_terminationBy___closed__16(); lean_mark_persistent(l_Lean_Parser_Termination_terminationBy___closed__16); +l_Lean_Parser_Termination_terminationBy___closed__17 = _init_l_Lean_Parser_Termination_terminationBy___closed__17(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy___closed__17); +l_Lean_Parser_Termination_terminationBy___closed__18 = _init_l_Lean_Parser_Termination_terminationBy___closed__18(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy___closed__18); +l_Lean_Parser_Termination_terminationBy___closed__19 = _init_l_Lean_Parser_Termination_terminationBy___closed__19(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy___closed__19); l_Lean_Parser_Termination_terminationBy = _init_l_Lean_Parser_Termination_terminationBy(); lean_mark_persistent(l_Lean_Parser_Termination_terminationBy); l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_docString__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_terminationBy_x3f_docString__1___closed__1(); @@ -77871,6 +78598,53 @@ l_Lean_Parser_Termination_terminationBy_x3f___closed__6 = _init_l_Lean_Parser_Te lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_x3f___closed__6); l_Lean_Parser_Termination_terminationBy_x3f = _init_l_Lean_Parser_Termination_terminationBy_x3f(); lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_x3f); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__1); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__2); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1___closed__3); +if (builtin) {res = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_docString__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); +}l_Lean_Parser_Termination_partialFixpoint___closed__1 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__1(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__1); +l_Lean_Parser_Termination_partialFixpoint___closed__2 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__2(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__2); +l_Lean_Parser_Termination_partialFixpoint___closed__3 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__3(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__3); +l_Lean_Parser_Termination_partialFixpoint___closed__4 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__4(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__4); +l_Lean_Parser_Termination_partialFixpoint___closed__5 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__5(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__5); +l_Lean_Parser_Termination_partialFixpoint___closed__6 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__6(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__6); +l_Lean_Parser_Termination_partialFixpoint___closed__7 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__7(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__7); +l_Lean_Parser_Termination_partialFixpoint___closed__8 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__8(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__8); +l_Lean_Parser_Termination_partialFixpoint___closed__9 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__9(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__9); +l_Lean_Parser_Termination_partialFixpoint___closed__10 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__10(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__10); +l_Lean_Parser_Termination_partialFixpoint___closed__11 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__11(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__11); +l_Lean_Parser_Termination_partialFixpoint___closed__12 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__12(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__12); +l_Lean_Parser_Termination_partialFixpoint___closed__13 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__13(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__13); +l_Lean_Parser_Termination_partialFixpoint___closed__14 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__14(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__14); +l_Lean_Parser_Termination_partialFixpoint___closed__15 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__15(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__15); +l_Lean_Parser_Termination_partialFixpoint___closed__16 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__16(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__16); +l_Lean_Parser_Termination_partialFixpoint___closed__17 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__17(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__17); +l_Lean_Parser_Termination_partialFixpoint___closed__18 = _init_l_Lean_Parser_Termination_partialFixpoint___closed__18(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint___closed__18); +l_Lean_Parser_Termination_partialFixpoint = _init_l_Lean_Parser_Termination_partialFixpoint(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint); l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__1); l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_decreasingBy_docString__1___closed__2(); @@ -77925,6 +78699,8 @@ l_Lean_Parser_Termination_suffix___closed__8 = _init_l_Lean_Parser_Termination_s lean_mark_persistent(l_Lean_Parser_Termination_suffix___closed__8); l_Lean_Parser_Termination_suffix___closed__9 = _init_l_Lean_Parser_Termination_suffix___closed__9(); lean_mark_persistent(l_Lean_Parser_Termination_suffix___closed__9); +l_Lean_Parser_Termination_suffix___closed__10 = _init_l_Lean_Parser_Termination_suffix___closed__10(); +lean_mark_persistent(l_Lean_Parser_Termination_suffix___closed__10); l_Lean_Parser_Termination_suffix = _init_l_Lean_Parser_Termination_suffix(); lean_mark_persistent(l_Lean_Parser_Termination_suffix); l___regBuiltin_Lean_Parser_Term_letRecDecl_docString__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Term_letRecDecl_docString__1___closed__1(); @@ -78165,6 +78941,10 @@ l_Lean_Parser_Termination_terminationBy_formatter___closed__12 = _init_l_Lean_Pa lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_formatter___closed__12); l_Lean_Parser_Termination_terminationBy_formatter___closed__13 = _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__13(); lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_formatter___closed__13); +l_Lean_Parser_Termination_terminationBy_formatter___closed__14 = _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__14(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_formatter___closed__14); +l_Lean_Parser_Termination_terminationBy_formatter___closed__15 = _init_l_Lean_Parser_Termination_terminationBy_formatter___closed__15(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_formatter___closed__15); l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__1); l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1___closed__2(); @@ -78172,6 +78952,33 @@ lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_terminationBy_format if (builtin) {res = l___regBuiltin_Lean_Parser_Termination_terminationBy_formatter__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__1); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__2); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__3); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__4); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__5); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__6); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__7); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__8); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__9); +l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10 = _init_l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_formatter___closed__10); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__1); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1___closed__2); +if (builtin) {res = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_formatter__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }l_Lean_Parser_Termination_decreasingBy_formatter___closed__1 = _init_l_Lean_Parser_Termination_decreasingBy_formatter___closed__1(); lean_mark_persistent(l_Lean_Parser_Termination_decreasingBy_formatter___closed__1); l_Lean_Parser_Termination_decreasingBy_formatter___closed__2 = _init_l_Lean_Parser_Termination_decreasingBy_formatter___closed__2(); @@ -78205,6 +79012,8 @@ l_Lean_Parser_Termination_suffix_formatter___closed__6 = _init_l_Lean_Parser_Ter lean_mark_persistent(l_Lean_Parser_Termination_suffix_formatter___closed__6); l_Lean_Parser_Termination_suffix_formatter___closed__7 = _init_l_Lean_Parser_Termination_suffix_formatter___closed__7(); lean_mark_persistent(l_Lean_Parser_Termination_suffix_formatter___closed__7); +l_Lean_Parser_Termination_suffix_formatter___closed__8 = _init_l_Lean_Parser_Termination_suffix_formatter___closed__8(); +lean_mark_persistent(l_Lean_Parser_Termination_suffix_formatter___closed__8); l___regBuiltin_Lean_Parser_Termination_suffix_formatter__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_suffix_formatter__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_suffix_formatter__1___closed__1); l___regBuiltin_Lean_Parser_Termination_suffix_formatter__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_suffix_formatter__1___closed__2(); @@ -78410,6 +79219,10 @@ l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__12 = _init_l_Lea lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__12); l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13 = _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13(); lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__13); +l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14 = _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__14); +l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15 = _init_l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15(); +lean_mark_persistent(l_Lean_Parser_Termination_terminationBy_parenthesizer___closed__15); l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__1); l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1___closed__2(); @@ -78417,6 +79230,33 @@ lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_terminationBy_parent if (builtin) {res = l___regBuiltin_Lean_Parser_Termination_terminationBy_parenthesizer__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); +}l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__1); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__2); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__3); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__4); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__5); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__6); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__7); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__8); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__9); +l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10 = _init_l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10(); +lean_mark_persistent(l_Lean_Parser_Termination_partialFixpoint_parenthesizer___closed__10); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__1); +l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2(); +lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1___closed__2); +if (builtin) {res = l___regBuiltin_Lean_Parser_Termination_partialFixpoint_parenthesizer__1(lean_io_mk_world()); +if (lean_io_result_is_error(res)) return res; +lean_dec_ref(res); }l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__1 = _init_l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__1(); lean_mark_persistent(l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__1); l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__2 = _init_l_Lean_Parser_Termination_decreasingBy_parenthesizer___closed__2(); @@ -78450,6 +79290,8 @@ l_Lean_Parser_Termination_suffix_parenthesizer___closed__6 = _init_l_Lean_Parser lean_mark_persistent(l_Lean_Parser_Termination_suffix_parenthesizer___closed__6); l_Lean_Parser_Termination_suffix_parenthesizer___closed__7 = _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__7(); lean_mark_persistent(l_Lean_Parser_Termination_suffix_parenthesizer___closed__7); +l_Lean_Parser_Termination_suffix_parenthesizer___closed__8 = _init_l_Lean_Parser_Termination_suffix_parenthesizer___closed__8(); +lean_mark_persistent(l_Lean_Parser_Termination_suffix_parenthesizer___closed__8); l___regBuiltin_Lean_Parser_Termination_suffix_parenthesizer__1___closed__1 = _init_l___regBuiltin_Lean_Parser_Termination_suffix_parenthesizer__1___closed__1(); lean_mark_persistent(l___regBuiltin_Lean_Parser_Termination_suffix_parenthesizer__1___closed__1); l___regBuiltin_Lean_Parser_Termination_suffix_parenthesizer__1___closed__2 = _init_l___regBuiltin_Lean_Parser_Termination_suffix_parenthesizer__1___closed__2(); @@ -82542,133 +83384,133 @@ lean_mark_persistent(l___regBuiltin_Lean_Parser_Tactic_quotSeq_parenthesizer__1_ if (builtin) {res = l___regBuiltin_Lean_Parser_Tactic_quotSeq_parenthesizer__1(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -}l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__1); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__2); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__3); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__4); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__5); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__6); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__7); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__8); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__9); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__10); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__11); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__12); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__13); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__14); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__15); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__16); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__17); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__18); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__19); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__20); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__21); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__22); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__23); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__24); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__25); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__26); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__27); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__28); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__29); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__30); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__31); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__32); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__33); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__34); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__35); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__36); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__37); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__38); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__39); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__40); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__41); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__42); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__43); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__44); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__45); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__46); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__47); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__48); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__49); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__50); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__51); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__52); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__53); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__54); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__55); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__56); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__57); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__58); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__59); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__60); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__61); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__62); -l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63(); -lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481____closed__63); -if (builtin) {res = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5481_(lean_io_mk_world()); +}l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__1); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__2); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__3); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__4); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__5); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__6); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__7); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__8); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__9); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__10); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__11); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__12); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__13); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__14); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__15); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__16); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__17); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__18); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__19); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__20); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__21); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__22); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__23); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__24); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__25); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__26); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__27); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__28); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__29); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__30); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__31); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__32); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__33); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__34); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__35); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__36); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__37); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__38); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__39); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__40); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__41); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__42); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__43); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__44); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__45); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__46); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__47); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__48); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__49); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__50); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__51); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__52); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__53); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__54); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__55); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__56); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__57); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__58); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__59); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__60); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__61); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__62); +l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63 = _init_l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63(); +lean_mark_persistent(l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532____closed__63); +if (builtin) {res = l_Lean_Parser_initFn____x40_Lean_Parser_Term___hyg_5532_(lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); }return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Lean/Parser/Types.c b/stage0/stdlib/Lean/Parser/Types.c index 9d0017b715..34def4e1eb 100644 --- a/stage0/stdlib/Lean/Parser/Types.c +++ b/stage0/stdlib/Lean/Parser/Types.c @@ -70,6 +70,7 @@ lean_object* l_Lean_Syntax_getPos_x3f(lean_object*, uint8_t); lean_object* lean_array_fget(lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_ParserState_mkUnexpectedError(lean_object*, lean_object*, lean_object*, uint8_t); +uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_adaptUncacheableContextFn___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_instInhabitedParserFn(lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_ParserState_mkNode___boxed(lean_object*, lean_object*, lean_object*); @@ -212,7 +213,6 @@ LEAN_EXPORT lean_object* l_Lean_Parser_ParserState_mkEOIError(lean_object*, lean lean_object* l_Lean_PersistentHashMap_mkEmptyEntries(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Lean_Parser_withCacheFn___spec__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_PersistentHashMap_insertAux_traverse___at_Lean_Parser_SyntaxNodeKindSet_insert___spec__3(size_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Parser_SyntaxStack_get_x21___boxed(lean_object*, lean_object*); uint64_t l_Lean_Name_hash___override(lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); @@ -1241,7 +1241,7 @@ return x_12; else { uint8_t x_13; -x_13 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(x_5, x_8); +x_13 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(x_5, x_8); lean_dec(x_8); lean_dec(x_5); return x_13; @@ -1527,7 +1527,7 @@ x_5 = lean_ctor_get(x_1, 2); lean_inc(x_5); lean_dec(x_1); x_6 = lean_box(0); -x_7 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(x_5, x_6); +x_7 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(x_5, x_6); if (x_4 == 0) { lean_object* x_33; diff --git a/stage0/stdlib/Lean/PrettyPrinter/Delaborator/TopDownAnalyze.c b/stage0/stdlib/Lean/PrettyPrinter/Delaborator/TopDownAnalyze.c index ba0a4363fc..560892d0e8 100644 --- a/stage0/stdlib/Lean/PrettyPrinter/Delaborator/TopDownAnalyze.c +++ b/stage0/stdlib/Lean/PrettyPrinter/Delaborator/TopDownAnalyze.c @@ -923,7 +923,7 @@ static lean_object* _init_l_Lean_initFn____x40_Lean_PrettyPrinter_Delaborator_To _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("(pretty printer analyzer) determine annotations sufficient to ensure round-tripping", 83, 83); +x_1 = lean_mk_string_unchecked("(pretty printer analyzer) try to determine annotations sufficient to ensure round-tripping", 90, 90); return x_1; } } diff --git a/stage0/stdlib/Lean/Server/Completion/CompletionInfoSelection.c b/stage0/stdlib/Lean/Server/Completion/CompletionInfoSelection.c index 4900cb308b..5a90663c60 100644 --- a/stage0/stdlib/Lean/Server/Completion/CompletionInfoSelection.c +++ b/stage0/stdlib/Lean/Server/Completion/CompletionInfoSelection.c @@ -39,6 +39,7 @@ lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_Completion_findCompletionInfosAt_go___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_Completion_CompletionInfoSelection_0__Lean_Server_Completion_computePrioritizedCompletionPartitions___boxed(lean_object*); +uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Server_Completion_CompletionInfoSelection_0__Lean_Server_Completion_computePrioritizedCompletionPartitions___spec__8(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Lean_Server_Completion_findSyntheticCompletions(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_Completion_CompletionInfoSelection_0__Lean_Server_Completion_filterDuplicateCompletionInfos(lean_object*); @@ -97,7 +98,6 @@ static lean_object* l___private_Lean_Server_Completion_CompletionInfoSelection_0 LEAN_EXPORT lean_object* l_Lean_Server_Completion_findCompletionInfosAt_go___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); static lean_object* l_Array_groupByKey___at___private_Lean_Server_Completion_CompletionInfoSelection_0__Lean_Server_Completion_computePrioritizedCompletionPartitions___spec__1___closed__4; -uint8_t l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); static lean_object* l_Lean_Server_Completion_findCompletionInfosAt_go___lambda__3___closed__1; lean_object* lean_nat_sub(lean_object*, lean_object*); @@ -333,7 +333,7 @@ return x_40; else { uint8_t x_41; -x_41 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2878____spec__1(x_36, x_38); +x_41 = l_List_beq___at___private_Init_Meta_0__Lean_Syntax_beqPreresolved____x40_Init_Meta___hyg_2886____spec__1(x_36, x_38); lean_dec(x_38); lean_dec(x_36); return x_41; diff --git a/stage0/stdlib/Lean/Server/FileWorker.c b/stage0/stdlib/Lean/Server/FileWorker.c index 46a1a15c77..d3b71cac63 100644 --- a/stage0/stdlib/Lean/Server/FileWorker.c +++ b/stage0/stdlib/Lean/Server/FileWorker.c @@ -47,6 +47,7 @@ lean_object* l_Lean_JsonNumber_toString(lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_server_reportDelayMs; LEAN_EXPORT lean_object* l_Lean_RBNode_foldM___at_Lean_Server_FileWorker_mainLoop___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__43; +static lean_object* l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2; LEAN_EXPORT lean_object* l_IO_FS_Stream_readNotificationAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__4(lean_object*, lean_object*, lean_object*, lean_object*); extern lean_object* l_Lean_Server_FileWorker_RpcSession_keepAliveTimeMs; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_handleRequest___lambda__1(lean_object*, lean_object*, lean_object*); @@ -147,6 +148,7 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_erase___at_Lean_Server_FileWorker_mainLoo uint8_t lean_string_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_reportSnapshots___lambda__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_publishDiagnostics(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* lean_server_worker_main(lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__23; static lean_object* l___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_reportSnapshots___lambda__6___closed__1; @@ -270,6 +272,7 @@ lean_object* l_String_crlfToLf_go(lean_object*, lean_object*, lean_object*, lean LEAN_EXPORT lean_object* l_Lean_Json_toStructured_x3f___at___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_reportSnapshots_go___spec__1(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_reportSnapshots_go___lambda__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_FileWorker_setupImports___lambda__6___closed__5; +extern lean_object* l_Lean_Elab_async; lean_object* l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__4(lean_object*, lean_object*); lean_object* l_IO_sleep(uint32_t, lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Server_FileWorker_initializeWorker___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -304,6 +307,7 @@ LEAN_EXPORT lean_object* l_Lean_RBNode_insert___at_Lean_Server_FileWorker_queueR static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__32; lean_object* lean_get_stderr(lean_object*); LEAN_EXPORT lean_object* l_Lean_Loop_forIn_loop___at_Lean_Server_FileWorker_runRefreshTask___spec__3___lambda__1___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(lean_object*, lean_object*, uint8_t); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__45; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_runRefreshTask(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Language_diagnosticsOfHeaderError(lean_object*, lean_object*, lean_object*); @@ -427,6 +431,7 @@ LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_parseParams(lean_object*); lean_object* lean_io_exit(uint8_t, lean_object*); static lean_object* l_Lean_Server_FileWorker_sendServerRequest___rarg___closed__1; LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_setupImports___lambda__7(lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_parseParams___at_Lean_Server_FileWorker_handleNotification___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Server_FileWorker_handleRequest___spec__5___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_foldDocumentChanges(lean_object*, lean_object*); @@ -530,8 +535,8 @@ lean_object* l_Lean_MessageLog_toArray(lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__71; uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l_Lean_Server_FileWorker_handleNotification___closed__2; -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__65; +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1(lean_object*, lean_object*, uint8_t); lean_object* l_Lean_Widget_msgToInteractiveDiagnostic(lean_object*, lean_object*, uint8_t, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readNotificationAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__4___closed__1; @@ -543,6 +548,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Server_FileW LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Server_FileWorker_0__Lean_Server_FileWorker_reportSnapshots_go___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_ImportCompletion_find(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Internal_0__Lean_Lsp_toJsonLeanImportClosureParams____x40_Lean_Data_Lsp_Internal___hyg_2161_(lean_object*); +uint8_t l_Lean_KVMap_contains(lean_object*, lean_object*); lean_object* l___private_Lean_Data_Lsp_Communication_0__IO_FS_Stream_readLspHeader(lean_object*, lean_object*); lean_object* l_Lean_Json_pretty(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_RBNode_ins___at_Lean_Server_FileWorker_handleRpcConnect___spec__2___boxed(lean_object*, lean_object*, lean_object*); @@ -3999,6 +4005,27 @@ return x_8; } } } +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1(lean_object* x_1, lean_object* x_2, uint8_t x_3) { +_start: +{ +lean_object* x_4; uint8_t x_5; +x_4 = lean_ctor_get(x_2, 0); +lean_inc(x_4); +x_5 = l_Lean_KVMap_contains(x_1, x_4); +lean_dec(x_4); +if (x_5 == 0) +{ +lean_object* x_6; +x_6 = l_Lean_Option_set___at_Lean_Elab_Term_withoutMacroStackAtErr___spec__1(x_1, x_2, x_3); +return x_6; +} +else +{ +lean_dec(x_2); +return x_1; +} +} +} static lean_object* _init_l_Lean_Server_FileWorker_setupImports___lambda__1___closed__1() { _start: { @@ -4165,26 +4192,37 @@ x_1 = lean_alloc_closure((void*)(l_Lean_Server_FileWorker_setupImports___lambda_ return x_1; } } +static lean_object* _init_l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2() { +_start: +{ +lean_object* x_1; +x_1 = l_Lean_Elab_async; +return x_1; +} +} LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_setupImports___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; uint32_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; lean_object* x_11; uint32_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_6 = lean_ctor_get(x_1, 2); lean_inc(x_6); lean_dec(x_1); x_7 = l_Lean_Server_FileWorker_setupImports___lambda__3___closed__1; x_8 = l_Lean_KVMap_mergeBy(x_7, x_2, x_6); -x_9 = 0; -x_10 = lean_alloc_ctor(0, 2, 4); -lean_ctor_set(x_10, 0, x_3); -lean_ctor_set(x_10, 1, x_8); -lean_ctor_set_uint32(x_10, sizeof(void*)*2, x_9); -x_11 = lean_alloc_ctor(1, 1, 0); -lean_ctor_set(x_11, 0, x_10); -x_12 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_12, 0, x_11); -lean_ctor_set(x_12, 1, x_5); -return x_12; +x_9 = l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2; +x_10 = 1; +x_11 = l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1(x_8, x_9, x_10); +x_12 = 0; +x_13 = lean_alloc_ctor(0, 2, 4); +lean_ctor_set(x_13, 0, x_3); +lean_ctor_set(x_13, 1, x_11); +lean_ctor_set_uint32(x_13, sizeof(void*)*2, x_12); +x_14 = lean_alloc_ctor(1, 1, 0); +lean_ctor_set(x_14, 0, x_13); +x_15 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_15, 0, x_14); +lean_ctor_set(x_15, 1, x_5); +return x_15; } } LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_setupImports___lambda__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { @@ -4810,6 +4848,16 @@ return x_38; } } } +LEAN_EXPORT lean_object* l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; lean_object* x_5; +x_4 = lean_unbox(x_3); +lean_dec(x_3); +x_5 = l_Lean_Option_setIfNotSet___at_Lean_Server_FileWorker_setupImports___spec__1(x_1, x_2, x_4); +return x_5; +} +} LEAN_EXPORT lean_object* l_Lean_Server_FileWorker_setupImports___lambda__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -20530,7 +20578,7 @@ lean_inc(x_23); x_27 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__2(x_23, x_26); x_28 = l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__5; lean_inc(x_23); -x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_23, x_28); +x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_23, x_28); x_30 = l_IO_FS_Stream_readRequestAs___at_Lean_Server_FileWorker_initAndRunWorker___spec__2___closed__6; lean_inc(x_23); x_31 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__3(x_23, x_30); @@ -28284,6 +28332,8 @@ l_Lean_Server_FileWorker_setupImports___lambda__1___closed__4 = _init_l_Lean_Ser lean_mark_persistent(l_Lean_Server_FileWorker_setupImports___lambda__1___closed__4); l_Lean_Server_FileWorker_setupImports___lambda__3___closed__1 = _init_l_Lean_Server_FileWorker_setupImports___lambda__3___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_setupImports___lambda__3___closed__1); +l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2 = _init_l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2(); +lean_mark_persistent(l_Lean_Server_FileWorker_setupImports___lambda__3___closed__2); l_Lean_Server_FileWorker_setupImports___lambda__6___closed__1 = _init_l_Lean_Server_FileWorker_setupImports___lambda__6___closed__1(); lean_mark_persistent(l_Lean_Server_FileWorker_setupImports___lambda__6___closed__1); l_Lean_Server_FileWorker_setupImports___lambda__6___closed__2 = _init_l_Lean_Server_FileWorker_setupImports___lambda__6___closed__2(); diff --git a/stage0/stdlib/Lean/Server/Watchdog.c b/stage0/stdlib/Lean/Server/Watchdog.c index 451bbfdbee..9e699333b8 100644 --- a/stage0/stdlib/Lean/Server/Watchdog.c +++ b/stage0/stdlib/Lean/Server/Watchdog.c @@ -650,6 +650,7 @@ static lean_object* l_Array_groupByKey___at_Lean_Server_Watchdog_handleCallHiera lean_object* lean_io_exit(uint8_t, lean_object*); static lean_object* l_IO_FS_Stream_readRequestAs___at_Lean_Server_Watchdog_initAndRunWatchdog___spec__2___closed__9; static lean_object* l_Lean_Server_Watchdog_mkLeanServerCapabilities___closed__12; +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); static lean_object* l_IO_FS_Stream_readNotificationAs___at_Lean_Server_Watchdog_initAndRunWatchdogAux___spec__2___closed__34; lean_object* l_String_toName(lean_object*); static lean_object* l_Lean_Server_Watchdog_handleDidChange___lambda__1___closed__2; @@ -820,7 +821,6 @@ uint8_t lean_usize_dec_lt(size_t, size_t); static lean_object* l_Lean_Server_Watchdog_mkLeanServerCapabilities___closed__10; lean_object* l___private_Lean_Data_Lsp_InitShutdown_0__Lean_Lsp_toJsonInitializeParams____x40_Lean_Data_Lsp_InitShutdown___hyg_523_(lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Server_Watchdog_handlePrepareCallHierarchy___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_filterMapM___at_Lean_Server_Watchdog_handleCallHierarchyOutgoingCalls___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Server_Watchdog_notifyAboutStaleDependency___closed__2; LEAN_EXPORT lean_object* l_Lean_Server_Watchdog_runClientTask___lambda__2(lean_object*); @@ -46227,7 +46227,7 @@ lean_inc(x_23); x_27 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__2(x_23, x_26); x_28 = l_IO_FS_Stream_readRequestAs___at_Lean_Server_Watchdog_initAndRunWatchdog___spec__2___closed__3; lean_inc(x_23); -x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_23, x_28); +x_29 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_23, x_28); x_30 = l_IO_FS_Stream_readRequestAs___at_Lean_Server_Watchdog_initAndRunWatchdog___spec__2___closed__4; lean_inc(x_23); x_31 = l_Lean_Json_getObjValAs_x3f___at_Lean_Lsp_instFromJsonInitializeParams___spec__3(x_23, x_30); diff --git a/stage0/stdlib/Lean/Util/Profiler.c b/stage0/stdlib/Lean/Util/Profiler.c index 6ebd52f5d0..672c41f580 100644 --- a/stage0/stdlib/Lean/Util/Profiler.c +++ b/stage0/stdlib/Lean/Util/Profiler.c @@ -381,7 +381,6 @@ static lean_object* l_Lean_Firefox_categories___closed__10; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Firefox_Profile_export___spec__15___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonFrameTable____x40_Lean_Util_Profiler___hyg_2850____closed__11; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Firefox_Profile_export___spec__16(size_t, size_t, lean_object*); -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Firefox_instToJsonMilliseconds___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Util_Profiler_0__Lean_Firefox_addTrace_go___spec__13(uint8_t, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Util_Profiler_0__Lean_Firefox_addTrace_go___spec__31___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -562,6 +561,7 @@ static lean_object* l_Lean_Firefox_instToJsonProfile___closed__1; static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonProfile____x40_Lean_Util_Profiler___hyg_4702____closed__14; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Util_Profiler_0__Lean_Firefox_addTrace_go___spec__20___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Firefox_Profile_export___spec__15___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_addTrace(uint8_t, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonFrameTable____x40_Lean_Util_Profiler___hyg_2850____closed__1; static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonStackTable____x40_Lean_Util_Profiler___hyg_1303____closed__20; @@ -614,6 +614,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Util_P LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at___private_Lean_Util_Profiler_0__Lean_Firefox_addTrace_go___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Lean_Firefox_instFromJsonSamplesTable___closed__1; LEAN_EXPORT lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonThread____x40_Lean_Util_Profiler___hyg_4084____spec__2___boxed(lean_object*, lean_object*); +lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonProfileMeta____x40_Lean_Util_Profiler___hyg_776____closed__44; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Lean_Firefox_Profile_export___spec__8___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -758,7 +759,6 @@ static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonThrea LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Util_Profiler_0__Lean_Firefox_toJsonSamplesTable____x40_Lean_Util_Profiler___hyg_1939____spec__1(size_t, size_t, lean_object*); static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonFuncTable____x40_Lean_Util_Profiler___hyg_2143____closed__35; static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonFrameTable____x40_Lean_Util_Profiler___hyg_2850____closed__28; -lean_object* l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(lean_object*, lean_object*); static lean_object* l_Lean_Firefox_instToJsonCategory___closed__1; static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonStackTable____x40_Lean_Util_Profiler___hyg_1303____closed__9; static lean_object* l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonCategory____x40_Lean_Util_Profiler___hyg_230____closed__9; @@ -1822,7 +1822,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonCategory____x40_Lean_Util_Profiler___hyg_230____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -1860,7 +1860,7 @@ lean_inc(x_12); lean_dec(x_3); x_13 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonCategory____x40_Lean_Util_Profiler___hyg_230____closed__15; lean_inc(x_1); -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; @@ -2323,7 +2323,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonSampleUnits____x40_Lean_Util_Profiler___hyg_472____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -2361,7 +2361,7 @@ lean_inc(x_12); lean_dec(x_3); x_13 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonSampleUnits____x40_Lean_Util_Profiler___hyg_472____closed__10; lean_inc(x_1); -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; @@ -2399,7 +2399,7 @@ x_23 = lean_ctor_get(x_14, 0); lean_inc(x_23); lean_dec(x_14); x_24 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonSampleUnits____x40_Lean_Util_Profiler___hyg_472____closed__15; -x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_24); +x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_24); if (lean_obj_tag(x_25) == 0) { uint8_t x_26; @@ -3475,7 +3475,7 @@ lean_inc(x_45); lean_dec(x_36); x_46 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonProfileMeta____x40_Lean_Util_Profiler___hyg_776____closed__25; lean_inc(x_1); -x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_46); +x_47 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_46); if (lean_obj_tag(x_47) == 0) { uint8_t x_48; @@ -6260,7 +6260,7 @@ lean_inc(x_34); lean_dec(x_25); x_35 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonSamplesTable____x40_Lean_Util_Profiler___hyg_1677____closed__17; lean_inc(x_1); -x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_35); +x_36 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_35); if (lean_obj_tag(x_36) == 0) { uint8_t x_37; @@ -10642,7 +10642,7 @@ _start: lean_object* x_2; lean_object* x_3; x_2 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonCategory____x40_Lean_Util_Profiler___hyg_230____closed__1; lean_inc(x_1); -x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_2); +x_3 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_2); if (lean_obj_tag(x_3) == 0) { uint8_t x_4; @@ -10680,7 +10680,7 @@ lean_inc(x_12); lean_dec(x_3); x_13 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonProfileMeta____x40_Lean_Util_Profiler___hyg_776____closed__20; lean_inc(x_1); -x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__1(x_1, x_13); +x_14 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__1(x_1, x_13); if (lean_obj_tag(x_14) == 0) { uint8_t x_15; @@ -10719,7 +10719,7 @@ lean_inc(x_23); lean_dec(x_14); x_24 = l___private_Lean_Util_Profiler_0__Lean_Firefox_fromJsonThread____x40_Lean_Util_Profiler___hyg_4084____closed__9; lean_inc(x_1); -x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_2877____spec__4(x_1, x_24); +x_25 = l_Lean_Json_getObjValAs_x3f___at___private_Lean_Message_0__Lean_fromJsonBaseMessage____x40_Lean_Message___hyg_3070____spec__4(x_1, x_24); if (lean_obj_tag(x_25) == 0) { uint8_t x_26; diff --git a/stage0/stdlib/Lean/Widget/InteractiveDiagnostic.c b/stage0/stdlib/Lean/Widget/InteractiveDiagnostic.c index e549a78eff..e1319cede8 100644 --- a/stage0/stdlib/Lean/Widget/InteractiveDiagnostic.c +++ b/stage0/stdlib/Lean/Widget/InteractiveDiagnostic.c @@ -32,7 +32,6 @@ static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget lean_object* lean_mk_empty_array_with_capacity(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_769____lambda__3(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__66; -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__2; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__52; static lean_object* l_Lean_Widget_msgToInteractiveDiagnostic___closed__7; @@ -117,7 +116,6 @@ lean_object* l_Lean_Json_getBool_x3f(lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_92____lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_InteractiveDiagnostic_compareAsDiagnostics___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275_(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instRpcEncodableDiagnosticWith(lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__18; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__12; @@ -149,7 +147,6 @@ static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__34; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___closed__2; static lean_object* l_Lean_Widget_instRpcEncodableDiagnosticWith_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_1853____rarg___closed__6; -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6; lean_object* lean_nat_to_int(lean_object*); lean_object* l_Subarray_size___rarg(lean_object*); uint8_t l___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_ordRange____x40_Lean_Data_Lsp_Basic___hyg_715_(lean_object*, lean_object*); @@ -179,7 +176,6 @@ static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget lean_object* l_Lean_MessageData_ofFormat(lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instImpl____x40_Lean_Widget_InteractiveDiagnostic___hyg_548_; -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4; lean_object* l_Lean_Widget_InteractiveGoal_pretty(lean_object*); lean_object* l_outOfBounds___rarg(lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_769____lambda__2___closed__4; @@ -211,7 +207,6 @@ static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_instRpcEncodableMsgEmbed_enc____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_ordDiagnosticCode____x40_Lean_Data_Lsp_Diagnostics___hyg_406_(lean_object*, lean_object*); -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3; LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_pushEmbed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux(lean_object*, lean_object*); static lean_object* l_Lean_Widget_instRpcEncodableStrictOrLazy_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_4____at_Lean_Widget_instRpcEncodableMsgEmbed_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____spec__4___closed__2; @@ -225,14 +220,12 @@ static lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_instRpcEncodableDiag LEAN_EXPORT lean_object* l_Lean_Option_get_x3f___at___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___spec__6___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_toJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_210____boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_InteractiveDiagnostic_toDiagnostic_prettyTt(lean_object*); -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__24; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___closed__3; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___spec__1(lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Server_instRpcEncodableWithRpcRefOfTypeName_rpcEncode___rarg(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__1; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___closed__7; -lean_object* l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_RecDepth___hyg_5____spec__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___lambda__3___closed__1; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_769____lambda__1___closed__2; LEAN_EXPORT lean_object* l_Lean_Widget_instRpcEncodableMsgEmbed_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____lambda__1(lean_object*, lean_object*); @@ -300,7 +293,6 @@ lean_object* lean_float_to_string(double); LEAN_EXPORT lean_object* l_Lean_Widget_msgToInteractive___lambda__2(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Lean_Widget_instRpcEncodableInteractiveGoal_enc____x40_Lean_Widget_InteractiveGoal___hyg_1148_(lean_object*, lean_object*); lean_object* l_Lean_Widget_instRpcEncodableWidgetInstance_dec____x40_Lean_Widget_Types___hyg_3_(lean_object*, lean_object*); -lean_object* l_Lean_Name_mkStr2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instRpcEncodableMsgEmbed_enc____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____lambda__1___boxed(lean_object*); LEAN_EXPORT lean_object* l_Lean_Widget_instRpcEncodableDiagnosticWith_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_1853_(lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__68; @@ -309,7 +301,6 @@ LEAN_EXPORT lean_object* l_Lean_Widget_instToJsonRpcEncodablePacket____x40_Lean_ lean_object* l_Lean_Widget_TaggedText_mapM___at_Lean_Widget_instRpcEncodableInteractiveHypothesisBundle_enc____x40_Lean_Widget_InteractiveGoal___hyg_5____spec__3(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__56; static lean_object* l_Lean_Widget_msgToInteractiveDiagnostic___closed__12; -static lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5; static lean_object* l_Lean_Widget_msgToInteractiveDiagnostic___closed__3; LEAN_EXPORT lean_object* l_Lean_Widget_msgToInteractive_fmtToTT(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_92____lambda__1___closed__1; @@ -376,7 +367,7 @@ LEAN_EXPORT lean_object* l_Lean_Widget_msgToInteractive_fmtToTT___lambda__1(lean uint8_t l___private_Lean_Data_Lsp_Diagnostics_0__Lean_Lsp_ordDiagnosticSeverity____x40_Lean_Data_Lsp_Diagnostics___hyg_39_(uint8_t, uint8_t); static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__11; static lean_object* l_Lean_Widget_msgToInteractiveDiagnostic___closed__10; -lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +extern lean_object* l_Lean_MessageData_maxTraceChildren; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__9; static lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_fromJsonRpcEncodablePacket____x40_Lean_Widget_InteractiveDiagnostic___hyg_1938____closed__8; lean_object* lean_string_append(lean_object*, lean_object*); @@ -425,7 +416,6 @@ lean_object* l___private_Init_Data_Repr_0__Nat_reprFast(lean_object*); lean_object* l_Lean_MessageData_isDeprecationWarning___lambda__1___boxed(lean_object*); static lean_object* l_Lean_Widget_instRpcEncodableMsgEmbed_dec____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____closed__3; lean_object* l_Lean_Elab_ContextInfo_runMetaM___rarg(lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Lean_Widget_infoview_maxTraceChildren; lean_object* l_Lean_Widget_TaggedText_stripTags___rarg(lean_object*); lean_object* l_List_flatMapTR_go___at___private_Lean_Data_Lsp_Basic_0__Lean_Lsp_toJsonPosition____x40_Lean_Data_Lsp_Basic___hyg_221____spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Lean_Widget_instRpcEncodableMsgEmbed_enc____x40_Lean_Widget_InteractiveDiagnostic___hyg_570____spec__2(lean_object*, size_t, size_t, lean_object*, lean_object*); @@ -19646,77 +19636,6 @@ x_1 = l_Lean_Widget_instInhabitedEmbedFmt___closed__3; return x_1; } } -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("infoview", 8, 8); -return x_1; -} -} -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("maxTraceChildren", 16, 16); -return x_1; -} -} -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1; -x_2 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2; -x_3 = l_Lean_Name_mkStr2(x_1, x_2); -return x_3; -} -} -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Number of trace node children to display by default", 51, 51); -return x_1; -} -} -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = lean_unsigned_to_nat(50u); -x_2 = l_Lean_Widget_instInhabitedMsgEmbed___closed__1; -x_3 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4; -x_4 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_4, 0, x_1); -lean_ctor_set(x_4, 1, x_2); -lean_ctor_set(x_4, 2, x_3); -return x_4; -} -} -static lean_object* _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Lean_Widget_instImpl____x40_Lean_Widget_InteractiveDiagnostic___hyg_548____closed__1; -x_2 = l_Lean_Widget_instImpl____x40_Lean_Widget_InteractiveDiagnostic___hyg_548____closed__2; -x_3 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1; -x_4 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275_(lean_object* x_1) { -_start: -{ -lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_2 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3; -x_3 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5; -x_4 = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6; -x_5 = l_Lean_Option_register___at_Lean_initFn____x40_Lean_Util_RecDepth___hyg_5____spec__1(x_2, x_3, x_4, x_1); -return x_5; -} -} LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_pushEmbed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -19933,68 +19852,81 @@ return x_2; LEAN_EXPORT lean_object* l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; -x_4 = lean_unsigned_to_nat(1u); -x_5 = lean_nat_add(x_2, x_4); -x_6 = l_Subarray_size___rarg(x_3); -x_7 = lean_nat_dec_lt(x_5, x_6); -lean_dec(x_5); -if (x_7 == 0) +lean_object* x_4; uint8_t x_5; +x_4 = lean_unsigned_to_nat(0u); +x_5 = lean_nat_dec_lt(x_4, x_2); +if (x_5 == 0) { -lean_object* x_8; -lean_dec(x_6); +lean_object* x_6; lean_dec(x_2); lean_dec(x_1); -x_8 = l_Array_ofSubarray___rarg(x_3); -return x_8; +x_6 = l_Array_ofSubarray___rarg(x_3); +return x_6; } else { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; double x_17; uint8_t x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; -x_9 = l_Array_ofSubarray___rarg(x_3); -x_10 = l_Subarray_size___rarg(x_3); +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_unsigned_to_nat(1u); +x_8 = lean_nat_add(x_2, x_7); +x_9 = l_Subarray_size___rarg(x_3); +x_10 = lean_nat_dec_lt(x_8, x_9); +lean_dec(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_9); +lean_dec(x_2); +lean_dec(x_1); +x_11 = l_Array_ofSubarray___rarg(x_3); +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; double x_19; uint8_t x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +x_12 = l_Array_ofSubarray___rarg(x_3); +x_13 = l_Subarray_size___rarg(x_3); lean_inc(x_2); -x_11 = l_Array_toSubarray___rarg(x_9, x_2, x_10); +x_14 = l_Array_toSubarray___rarg(x_12, x_2, x_13); lean_inc(x_2); lean_inc(x_1); -x_12 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren(x_1, x_2, x_11); -lean_dec(x_11); -x_13 = l_Array_ofSubarray___rarg(x_3); -x_14 = lean_unsigned_to_nat(0u); +x_15 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren(x_1, x_2, x_14); +lean_dec(x_14); +x_16 = l_Array_ofSubarray___rarg(x_3); lean_inc(x_2); -x_15 = l_Array_toSubarray___rarg(x_13, x_14, x_2); -x_16 = l_Array_ofSubarray___rarg(x_15); -lean_dec(x_15); -x_17 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__1; -x_18 = 1; -x_19 = l_Lean_Widget_instInhabitedMsgEmbed___closed__1; -x_20 = lean_alloc_ctor(0, 2, 17); -lean_ctor_set(x_20, 0, x_1); -lean_ctor_set(x_20, 1, x_19); -lean_ctor_set_float(x_20, sizeof(void*)*2, x_17); -lean_ctor_set_float(x_20, sizeof(void*)*2 + 8, x_17); -lean_ctor_set_uint8(x_20, sizeof(void*)*2 + 16, x_18); -x_21 = lean_nat_sub(x_6, x_2); +x_17 = l_Array_toSubarray___rarg(x_16, x_4, x_2); +x_18 = l_Array_ofSubarray___rarg(x_17); +lean_dec(x_17); +x_19 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__1; +x_20 = 1; +x_21 = l_Lean_Widget_instInhabitedMsgEmbed___closed__1; +x_22 = lean_alloc_ctor(0, 2, 17); +lean_ctor_set(x_22, 0, x_1); +lean_ctor_set(x_22, 1, x_21); +lean_ctor_set_float(x_22, sizeof(void*)*2, x_19); +lean_ctor_set_float(x_22, sizeof(void*)*2 + 8, x_19); +lean_ctor_set_uint8(x_22, sizeof(void*)*2 + 16, x_20); +x_23 = lean_nat_sub(x_9, x_2); lean_dec(x_2); -lean_dec(x_6); -x_22 = l___private_Init_Data_Repr_0__Nat_reprFast(x_21); -x_23 = lean_alloc_ctor(3, 1, 0); -lean_ctor_set(x_23, 0, x_22); -x_24 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__2; -x_25 = lean_alloc_ctor(5, 2, 0); +lean_dec(x_9); +x_24 = l___private_Init_Data_Repr_0__Nat_reprFast(x_23); +x_25 = lean_alloc_ctor(3, 1, 0); lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_23); -x_26 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__4; +x_26 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__2; x_27 = lean_alloc_ctor(5, 2, 0); -lean_ctor_set(x_27, 0, x_25); -lean_ctor_set(x_27, 1, x_26); -x_28 = l_Lean_MessageData_ofFormat(x_27); -x_29 = lean_alloc_ctor(9, 3, 0); -lean_ctor_set(x_29, 0, x_20); +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_25); +x_28 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren___closed__4; +x_29 = lean_alloc_ctor(5, 2, 0); +lean_ctor_set(x_29, 0, x_27); lean_ctor_set(x_29, 1, x_28); -lean_ctor_set(x_29, 2, x_12); -x_30 = lean_array_push(x_16, x_29); -return x_30; +x_30 = l_Lean_MessageData_ofFormat(x_29); +x_31 = lean_alloc_ctor(9, 3, 0); +lean_ctor_set(x_31, 0, x_22); +lean_ctor_set(x_31, 1, x_30); +lean_ctor_set(x_31, 2, x_15); +x_32 = lean_array_push(x_18, x_31); +return x_32; +} } } } @@ -20598,7 +20530,7 @@ lean_dec(x_4); x_25 = lean_array_size(x_2); x_26 = 0; x_27 = l_Array_mapMUnsafe_map___at___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_go___spec__2(x_3, x_25, x_26, x_2); -x_28 = l_Lean_Widget_infoview_maxTraceChildren; +x_28 = l_Lean_MessageData_maxTraceChildren; x_29 = lean_ctor_get(x_28, 1); lean_inc(x_29); x_30 = lean_array_get_size(x_27); @@ -20670,7 +20602,7 @@ static lean_object* _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_ _start: { lean_object* x_1; -x_1 = l_Lean_Widget_infoview_maxTraceChildren; +x_1 = l_Lean_MessageData_maxTraceChildren; return x_1; } } @@ -20756,7 +20688,7 @@ x_34 = l_Array_toSubarray___rarg(x_28, x_33, x_32); if (lean_obj_tag(x_31) == 0) { lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_35 = l_Lean_Widget_infoview_maxTraceChildren; +x_35 = l_Lean_MessageData_maxTraceChildren; x_36 = lean_ctor_get(x_35, 1); lean_inc(x_36); x_37 = l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_chopUpChildren(x_24, x_36, x_34); @@ -25907,23 +25839,6 @@ l_Lean_Widget_instInhabitedEmbedFmt___closed__3 = _init_l_Lean_Widget_instInhabi lean_mark_persistent(l_Lean_Widget_instInhabitedEmbedFmt___closed__3); l_Lean_Widget_instInhabitedEmbedFmt = _init_l_Lean_Widget_instInhabitedEmbedFmt(); lean_mark_persistent(l_Lean_Widget_instInhabitedEmbedFmt); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__1); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__2); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__3); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__4); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__5); -l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6 = _init_l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6(); -lean_mark_persistent(l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275____closed__6); -res = l_Lean_Widget_initFn____x40_Lean_Widget_InteractiveDiagnostic___hyg_3275_(lean_io_mk_world()); -if (lean_io_result_is_error(res)) return res; -l_Lean_Widget_infoview_maxTraceChildren = lean_io_result_get_value(res); -lean_mark_persistent(l_Lean_Widget_infoview_maxTraceChildren); -lean_dec_ref(res); l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_mkContextInfo___closed__1 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_mkContextInfo___closed__1(); lean_mark_persistent(l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_mkContextInfo___closed__1); l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_mkContextInfo___closed__2 = _init_l___private_Lean_Widget_InteractiveDiagnostic_0__Lean_Widget_msgToInteractiveAux_mkContextInfo___closed__2(); diff --git a/stage0/stdlib/Std/Data/DHashMap/Internal/List/Associative.c b/stage0/stdlib/Std/Data/DHashMap/Internal/List/Associative.c index f922b1ff89..0bbf4234b4 100644 --- a/stage0/stdlib/Std/Data/DHashMap/Internal/List/Associative.c +++ b/stage0/stdlib/Std/Data/DHashMap/Internal/List/Associative.c @@ -61,7 +61,7 @@ LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_List_Associative LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_containsKey___rarg___boxed(lean_object*, lean_object*, lean_object*); lean_object* l___private_Init_Util_0__mkPanicMessageWithDecl(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_List_Associative_0__Std_DHashMap_Internal_List_getEntry_x3f_match__1_splitter(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_modifyKey___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_modifyKey___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_List_Associative_0__Std_DHashMap_Internal_List_insertListIfNewUnit_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_insertListIfNewUnit(lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_insertListConst___rarg(lean_object*, lean_object*, lean_object*); @@ -1589,41 +1589,6 @@ lean_dec(x_3); return x_5; } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_modifyKey___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; -lean_inc(x_5); -lean_inc(x_3); -lean_inc(x_1); -x_6 = l_Std_DHashMap_Internal_List_getValueCast_x3f___rarg(x_1, lean_box(0), x_3, x_5); -if (lean_obj_tag(x_6) == 0) -{ -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_1); -return x_5; -} -else -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_7 = lean_ctor_get(x_6, 0); -lean_inc(x_7); -lean_dec(x_6); -x_8 = lean_apply_1(x_4, x_7); -x_9 = l_Std_DHashMap_Internal_List_replaceEntry___rarg(x_1, x_3, x_8, x_5); -return x_9; -} -} -} -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_modifyKey(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Internal_List_modifyKey___rarg), 5, 0); -return x_3; -} -} LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_alterKey___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -1695,14 +1660,14 @@ lean_dec(x_2); return x_4; } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_modifyKey___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_modifyKey___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { _start: { lean_object* x_6; lean_inc(x_5); lean_inc(x_3); lean_inc(x_1); -x_6 = l_Std_DHashMap_Internal_List_getValue_x3f___rarg(x_1, x_3, x_5); +x_6 = l_Std_DHashMap_Internal_List_getValueCast_x3f___rarg(x_1, lean_box(0), x_3, x_5); if (lean_obj_tag(x_6) == 0) { lean_dec(x_4); @@ -1722,11 +1687,46 @@ return x_9; } } } +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_modifyKey(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Internal_List_modifyKey___rarg), 5, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_modifyKey___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +lean_inc(x_4); +lean_inc(x_2); +lean_inc(x_1); +x_5 = l_Std_DHashMap_Internal_List_getValue_x3f___rarg(x_1, x_2, x_4); +if (lean_obj_tag(x_5) == 0) +{ +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_4; +} +else +{ +lean_object* x_6; lean_object* x_7; lean_object* x_8; +x_6 = lean_ctor_get(x_5, 0); +lean_inc(x_6); +lean_dec(x_5); +x_7 = lean_apply_1(x_3, x_6); +x_8 = l_Std_DHashMap_Internal_List_replaceEntry___rarg(x_1, x_2, x_7, x_4); +return x_8; +} +} +} LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_List_Const_modifyKey(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Internal_List_Const_modifyKey___rarg), 5, 0); +x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Internal_List_Const_modifyKey___rarg), 4, 0); return x_3; } } diff --git a/stage0/stdlib/Std/Data/DHashMap/Internal/RawLemmas.c b/stage0/stdlib/Std/Data/DHashMap/Internal/RawLemmas.c index 81c997f08f..dff1dfccfd 100644 --- a/stage0/stdlib/Std/Data/DHashMap/Internal/RawLemmas.c +++ b/stage0/stdlib/Std/Data/DHashMap/Internal/RawLemmas.c @@ -18,6 +18,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHa static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__43; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___closed__1; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__2; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__70; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__1; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__15; @@ -26,6 +27,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__53; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__84; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__4; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__20; lean_object* lean_mk_empty_array_with_capacity(lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__1; @@ -38,6 +40,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__42; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__54; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__41; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__4; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__3; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__7; @@ -45,8 +48,11 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__9; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__21; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__12; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__11; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__35; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__19; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__6; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1(lean_object*, lean_object*, lean_object*); @@ -58,6 +64,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap lean_object* lean_array_push(lean_object*, lean_object*); static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__8; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__39; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__66; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__4; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__90; @@ -65,6 +72,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__58; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__16; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__30; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__31; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__29; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__10; @@ -95,6 +103,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__34; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__28; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__58; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__12; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__37; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__9; @@ -104,6 +113,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static size_t l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__14; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__11; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__73; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__57; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__62; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__2(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); @@ -128,6 +138,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__11; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__38; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__16; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__45; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__6; static lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__1___closed__4; @@ -161,7 +172,9 @@ static lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__30; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__17; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__3; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__3; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__12; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__43; @@ -172,18 +185,23 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__16; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__64; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__67; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__25; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__7(lean_object*, size_t, size_t, lean_object*); static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__49; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__45; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__16; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__94; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__57; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__5; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__50; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107; LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_Const_modify_match__2_splitter___rarg(lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__81; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__18; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__46; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__6; @@ -204,17 +222,21 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__80; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__4; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__19; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22; lean_object* l_Lean_addMacroScope(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__2; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__16; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__9; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__3; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__91; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__13; lean_object* l_Lean_Name_str___override(lean_object*, lean_object*); static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__10; lean_object* l_Lean_Syntax_node2(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__60; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__71; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__15; @@ -226,6 +248,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__38; uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__4; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__44; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__52; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__1(lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*, lean_object*, lean_object*); @@ -233,7 +256,9 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__11; LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_expandIfNecessary_match__1_splitter(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__60; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__25; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__74; lean_object* lean_mk_syntax_ident(lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__72; @@ -266,6 +291,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__14; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__24; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__42; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__1; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__32; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; @@ -275,14 +301,18 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__6(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames(lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__75; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__4; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__12; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticEmpty__1___closed__8; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__5; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__83; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__3; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__81; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__18; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__27; @@ -313,6 +343,7 @@ lean_object* l_Lean_Syntax_node1(lean_object*, lean_object*, lean_object*); lean_object* l_Lean_mkSepArray(lean_object*, lean_object*); static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__61; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__89; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__23; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__93; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__26; @@ -334,6 +365,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__56; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__7; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticSimp__to__modelUsing_____closed__17; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__13; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -354,6 +386,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__75; lean_object* lean_array_uget(lean_object*, size_t); size_t lean_array_size(lean_object*); +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__85; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__58; @@ -396,9 +429,11 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__77; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__7; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__70; +static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__82; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__61; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__51; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__28; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__5; static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__12; @@ -424,6 +459,7 @@ static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHas static lean_object* l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__17; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__1; static lean_object* l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__2; +static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___spec__3(size_t, size_t, lean_object*); static size_t l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticSimp__to__modelUsing____1___lambda__1___closed__19; static lean_object* l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; @@ -1098,7 +1134,7 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw₀.wfImp_erase", 18, 16); +x_1 = lean_mk_string_unchecked("Raw₀.wfImp_alter", 18, 16); return x_1; } } @@ -1115,7 +1151,7 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("wfImp_erase", 11, 11); +x_1 = lean_mk_string_unchecked("wfImp_alter", 11, 11); return x_1; } } @@ -1170,7 +1206,7 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw.WF.out", 10, 10); +x_1 = lean_mk_string_unchecked("Raw₀.wfImp_modify", 19, 17); return x_1; } } @@ -1187,131 +1223,21 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw", 3, 3); +x_1 = lean_mk_string_unchecked("wfImp_modify", 12, 12); return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("WF", 2, 2); -return x_1; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__69() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("out", 3, 3); -return x_1; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__70() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68; -x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__69; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__71() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; -x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; -x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68; -x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__69; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__72() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__71; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__73() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__72; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__74() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("assumption", 10, 10); -return x_1; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__75() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__1; -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__2; -x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__74; -x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); -return x_5; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__76() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw₀.wfImp_empty", 18, 16); -return x_1; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__77() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__76; -x_2 = l_String_toSubstring_x27(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("wfImp_empty", 11, 11); -return x_1; -} -} -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__79() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; x_3 = l_Lean_Name_mkStr2(x_1, x_2); return x_3; } } -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__80() { +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__69() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1319,21 +1245,141 @@ x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; -x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__70() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__69; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__71() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__70; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__72() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw₀.Const.wfImp_alter", 24, 22); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__73() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__72; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__74() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__60; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__75() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__60; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__76() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__75; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__77() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__76; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw₀.Const.wfImp_modify", 25, 23); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__79() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__78; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__80() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__81() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__80; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__82() { @@ -1351,59 +1397,61 @@ return x_3; static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__83() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw.WFImp.distinct", 18, 18); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__82; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__84() { _start: { -lean_object* x_1; lean_object* x_2; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__83; -x_2 = l_String_toSubstring_x27(x_1); -return x_2; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw₀.wfImp_erase", 18, 16); +return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__85() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("WFImp", 5, 5); -return x_1; +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__84; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("distinct", 8, 8); +x_1 = lean_mk_string_unchecked("wfImp_erase", 11, 11); return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__87() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__85; -x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__88() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__85; -x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__86; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__89() { @@ -1434,7 +1482,7 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("Raw.WF.empty₀", 15, 13); +x_1 = lean_mk_string_unchecked("Raw.WF.out", 10, 10); return x_1; } } @@ -1451,59 +1499,323 @@ static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DH _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("empty₀", 8, 6); +x_1 = lean_mk_string_unchecked("Raw", 3, 3); return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; -x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68; -x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; -x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); -return x_4; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("WF", 2, 2); +return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__95() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; -x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; -x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68; -x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("out", 3, 3); +return x_1; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__96() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__95; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__95; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; } } static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__97() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94; +x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__95; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__96; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__97; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98() { +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("assumption", 10, 10); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100; +x_5 = l_Lean_Name_mkStr4(x_1, x_2, x_3, x_4); +return x_5; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw₀.wfImp_empty", 18, 16); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("wfImp_empty", 11, 11); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104; +x_3 = l_Lean_Name_mkStr2(x_1, x_2); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw.WFImp.distinct", 18, 18); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("WFImp", 5, 5); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("distinct", 8, 8); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111; +x_6 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("Raw.WF.empty₀", 15, 13); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117; +x_2 = l_String_toSubstring_x27(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("empty₀", 8, 6); +return x_1; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119; +x_4 = l_Lean_Name_mkStr3(x_1, x_2, x_3); +return x_4; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124() { _start: { lean_object* x_1; @@ -1529,7 +1841,7 @@ return x_7; } else { -lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; +lean_object* x_8; uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; lean_object* x_102; lean_object* x_103; lean_object* x_104; lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; lean_object* x_110; lean_object* x_111; lean_object* x_112; lean_object* x_113; lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; lean_object* x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; lean_object* x_145; lean_object* x_146; lean_object* x_147; lean_object* x_148; lean_object* x_149; lean_object* x_150; lean_object* x_151; lean_object* x_152; lean_object* x_153; lean_object* x_154; lean_object* x_155; lean_object* x_156; lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; lean_object* x_166; lean_object* x_167; lean_object* x_168; lean_object* x_169; lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; lean_object* x_175; lean_object* x_176; lean_object* x_177; lean_object* x_178; lean_object* x_179; lean_object* x_180; lean_object* x_181; lean_object* x_182; lean_object* x_183; lean_object* x_184; lean_object* x_185; lean_object* x_186; lean_object* x_187; lean_object* x_188; lean_object* x_189; lean_object* x_190; lean_object* x_191; lean_object* x_192; lean_object* x_193; lean_object* x_194; lean_object* x_195; lean_object* x_196; lean_object* x_197; lean_object* x_198; lean_object* x_199; lean_object* x_200; lean_object* x_201; lean_object* x_202; lean_object* x_203; lean_object* x_204; lean_object* x_205; lean_object* x_206; lean_object* x_207; lean_object* x_208; x_8 = lean_ctor_get(x_2, 5); lean_inc(x_8); x_9 = 0; @@ -1715,12 +2027,12 @@ x_87 = l_Lean_Syntax_node1(x_10, x_35, x_86); lean_inc(x_20); lean_inc(x_10); x_88 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_87); -x_89 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__70; +x_89 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__68; lean_inc(x_11); lean_inc(x_12); x_90 = l_Lean_addMacroScope(x_12, x_89, x_11); x_91 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__66; -x_92 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__73; +x_92 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__71; lean_inc(x_10); x_93 = lean_alloc_ctor(3, 4, 0); lean_ctor_set(x_93, 0, x_10); @@ -1740,158 +2052,266 @@ lean_inc(x_20); lean_inc(x_10); x_98 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_97); x_99 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__74; -lean_inc(x_10); -x_100 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_100, 0, x_10); -lean_ctor_set(x_100, 1, x_99); -x_101 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__75; -lean_inc(x_10); -x_102 = l_Lean_Syntax_node1(x_10, x_101, x_100); -lean_inc(x_10); -x_103 = l_Lean_Syntax_node1(x_10, x_31, x_102); -lean_inc(x_10); -x_104 = l_Lean_Syntax_node1(x_10, x_33, x_103); -lean_inc(x_10); -x_105 = l_Lean_Syntax_node1(x_10, x_35, x_104); -lean_inc(x_20); -lean_inc(x_10); -x_106 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_105); -x_107 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__79; lean_inc(x_11); lean_inc(x_12); -x_108 = l_Lean_addMacroScope(x_12, x_107, x_11); -x_109 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__77; -x_110 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__82; +x_100 = l_Lean_addMacroScope(x_12, x_99, x_11); +x_101 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__73; +x_102 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__77; lean_inc(x_10); -x_111 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_111, 0, x_10); -lean_ctor_set(x_111, 1, x_109); -lean_ctor_set(x_111, 2, x_108); -lean_ctor_set(x_111, 3, x_110); +x_103 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_103, 0, x_10); +lean_ctor_set(x_103, 1, x_101); +lean_ctor_set(x_103, 2, x_100); +lean_ctor_set(x_103, 3, x_102); lean_inc(x_22); lean_inc(x_10); -x_112 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_111); +x_104 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_103); lean_inc(x_10); -x_113 = l_Lean_Syntax_node1(x_10, x_31, x_112); +x_105 = l_Lean_Syntax_node1(x_10, x_31, x_104); lean_inc(x_10); -x_114 = l_Lean_Syntax_node1(x_10, x_33, x_113); +x_106 = l_Lean_Syntax_node1(x_10, x_33, x_105); lean_inc(x_10); -x_115 = l_Lean_Syntax_node1(x_10, x_35, x_114); +x_107 = l_Lean_Syntax_node1(x_10, x_35, x_106); lean_inc(x_20); lean_inc(x_10); -x_116 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_115); -x_117 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__87; +x_108 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_107); +x_109 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__80; lean_inc(x_11); lean_inc(x_12); -x_118 = l_Lean_addMacroScope(x_12, x_117, x_11); -x_119 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__84; -x_120 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__90; +x_110 = l_Lean_addMacroScope(x_12, x_109, x_11); +x_111 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__79; +x_112 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__83; lean_inc(x_10); -x_121 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_121, 0, x_10); -lean_ctor_set(x_121, 1, x_119); -lean_ctor_set(x_121, 2, x_118); -lean_ctor_set(x_121, 3, x_120); +x_113 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_113, 0, x_10); +lean_ctor_set(x_113, 1, x_111); +lean_ctor_set(x_113, 2, x_110); +lean_ctor_set(x_113, 3, x_112); lean_inc(x_22); lean_inc(x_10); -x_122 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_121); +x_114 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_113); lean_inc(x_10); -x_123 = l_Lean_Syntax_node1(x_10, x_31, x_122); +x_115 = l_Lean_Syntax_node1(x_10, x_31, x_114); lean_inc(x_10); -x_124 = l_Lean_Syntax_node1(x_10, x_33, x_123); +x_116 = l_Lean_Syntax_node1(x_10, x_33, x_115); lean_inc(x_10); -x_125 = l_Lean_Syntax_node1(x_10, x_35, x_124); +x_117 = l_Lean_Syntax_node1(x_10, x_35, x_116); lean_inc(x_20); lean_inc(x_10); -x_126 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_125); -x_127 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__94; -x_128 = l_Lean_addMacroScope(x_12, x_127, x_11); -x_129 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__92; -x_130 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__97; +x_118 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_117); +x_119 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__87; +lean_inc(x_11); +lean_inc(x_12); +x_120 = l_Lean_addMacroScope(x_12, x_119, x_11); +x_121 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__85; +x_122 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__90; lean_inc(x_10); -x_131 = lean_alloc_ctor(3, 4, 0); -lean_ctor_set(x_131, 0, x_10); -lean_ctor_set(x_131, 1, x_129); -lean_ctor_set(x_131, 2, x_128); -lean_ctor_set(x_131, 3, x_130); +x_123 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_123, 0, x_10); +lean_ctor_set(x_123, 1, x_121); +lean_ctor_set(x_123, 2, x_120); +lean_ctor_set(x_123, 3, x_122); +lean_inc(x_22); lean_inc(x_10); -x_132 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_131); +x_124 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_123); lean_inc(x_10); -x_133 = l_Lean_Syntax_node1(x_10, x_31, x_132); +x_125 = l_Lean_Syntax_node1(x_10, x_31, x_124); lean_inc(x_10); -x_134 = l_Lean_Syntax_node1(x_10, x_33, x_133); +x_126 = l_Lean_Syntax_node1(x_10, x_33, x_125); lean_inc(x_10); -x_135 = l_Lean_Syntax_node1(x_10, x_35, x_134); +x_127 = l_Lean_Syntax_node1(x_10, x_35, x_126); +lean_inc(x_20); lean_inc(x_10); -x_136 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_135); -x_137 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_137, 0, x_136); -lean_ctor_set(x_137, 1, x_25); -x_138 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_138, 0, x_126); -lean_ctor_set(x_138, 1, x_137); -x_139 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_139, 0, x_116); -lean_ctor_set(x_139, 1, x_138); -x_140 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_140, 0, x_106); +x_128 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_127); +x_129 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__96; +lean_inc(x_11); +lean_inc(x_12); +x_130 = l_Lean_addMacroScope(x_12, x_129, x_11); +x_131 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__92; +x_132 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99; +lean_inc(x_10); +x_133 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_133, 0, x_10); +lean_ctor_set(x_133, 1, x_131); +lean_ctor_set(x_133, 2, x_130); +lean_ctor_set(x_133, 3, x_132); +lean_inc(x_22); +lean_inc(x_10); +x_134 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_133); +lean_inc(x_10); +x_135 = l_Lean_Syntax_node1(x_10, x_31, x_134); +lean_inc(x_10); +x_136 = l_Lean_Syntax_node1(x_10, x_33, x_135); +lean_inc(x_10); +x_137 = l_Lean_Syntax_node1(x_10, x_35, x_136); +lean_inc(x_20); +lean_inc(x_10); +x_138 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_137); +x_139 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100; +lean_inc(x_10); +x_140 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_140, 0, x_10); lean_ctor_set(x_140, 1, x_139); -x_141 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_141, 0, x_98); -lean_ctor_set(x_141, 1, x_140); -x_142 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_142, 0, x_88); -lean_ctor_set(x_142, 1, x_141); -x_143 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_143, 0, x_78); -lean_ctor_set(x_143, 1, x_142); -x_144 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_144, 0, x_68); -lean_ctor_set(x_144, 1, x_143); -x_145 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_145, 0, x_58); -lean_ctor_set(x_145, 1, x_144); -x_146 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_146, 0, x_48); -lean_ctor_set(x_146, 1, x_145); -x_147 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_147, 0, x_38); -lean_ctor_set(x_147, 1, x_146); -x_148 = lean_array_mk(x_147); +x_141 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101; lean_inc(x_10); -x_149 = lean_alloc_ctor(1, 3, 0); -lean_ctor_set(x_149, 0, x_10); -lean_ctor_set(x_149, 1, x_31); -lean_ctor_set(x_149, 2, x_148); -x_150 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__17; +x_142 = l_Lean_Syntax_node1(x_10, x_141, x_140); lean_inc(x_10); -x_151 = l_Lean_Syntax_node2(x_10, x_150, x_18, x_149); +x_143 = l_Lean_Syntax_node1(x_10, x_31, x_142); lean_inc(x_10); -x_152 = l_Lean_Syntax_node1(x_10, x_31, x_151); +x_144 = l_Lean_Syntax_node1(x_10, x_33, x_143); lean_inc(x_10); -x_153 = l_Lean_Syntax_node1(x_10, x_33, x_152); +x_145 = l_Lean_Syntax_node1(x_10, x_35, x_144); +lean_inc(x_20); lean_inc(x_10); -x_154 = l_Lean_Syntax_node1(x_10, x_35, x_153); -x_155 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_146 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_145); +x_147 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105; +lean_inc(x_11); +lean_inc(x_12); +x_148 = l_Lean_addMacroScope(x_12, x_147, x_11); +x_149 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103; +x_150 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108; lean_inc(x_10); -x_156 = lean_alloc_ctor(2, 2, 0); -lean_ctor_set(x_156, 0, x_10); -lean_ctor_set(x_156, 1, x_155); -x_157 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__14; +x_151 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_151, 0, x_10); +lean_ctor_set(x_151, 1, x_149); +lean_ctor_set(x_151, 2, x_148); +lean_ctor_set(x_151, 3, x_150); +lean_inc(x_22); lean_inc(x_10); -x_158 = l_Lean_Syntax_node3(x_10, x_157, x_16, x_154, x_156); +x_152 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_151); lean_inc(x_10); -x_159 = l_Lean_Syntax_node1(x_10, x_31, x_158); +x_153 = l_Lean_Syntax_node1(x_10, x_31, x_152); lean_inc(x_10); -x_160 = l_Lean_Syntax_node1(x_10, x_33, x_159); +x_154 = l_Lean_Syntax_node1(x_10, x_33, x_153); lean_inc(x_10); -x_161 = l_Lean_Syntax_node1(x_10, x_35, x_160); -x_162 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__5; -x_163 = l_Lean_Syntax_node2(x_10, x_162, x_14, x_161); -x_164 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_164, 0, x_163); -lean_ctor_set(x_164, 1, x_3); -return x_164; +x_155 = l_Lean_Syntax_node1(x_10, x_35, x_154); +lean_inc(x_20); +lean_inc(x_10); +x_156 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_155); +x_157 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113; +lean_inc(x_11); +lean_inc(x_12); +x_158 = l_Lean_addMacroScope(x_12, x_157, x_11); +x_159 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110; +x_160 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116; +lean_inc(x_10); +x_161 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_161, 0, x_10); +lean_ctor_set(x_161, 1, x_159); +lean_ctor_set(x_161, 2, x_158); +lean_ctor_set(x_161, 3, x_160); +lean_inc(x_22); +lean_inc(x_10); +x_162 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_161); +lean_inc(x_10); +x_163 = l_Lean_Syntax_node1(x_10, x_31, x_162); +lean_inc(x_10); +x_164 = l_Lean_Syntax_node1(x_10, x_33, x_163); +lean_inc(x_10); +x_165 = l_Lean_Syntax_node1(x_10, x_35, x_164); +lean_inc(x_20); +lean_inc(x_10); +x_166 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_165); +x_167 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120; +x_168 = l_Lean_addMacroScope(x_12, x_167, x_11); +x_169 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118; +x_170 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123; +lean_inc(x_10); +x_171 = lean_alloc_ctor(3, 4, 0); +lean_ctor_set(x_171, 0, x_10); +lean_ctor_set(x_171, 1, x_169); +lean_ctor_set(x_171, 2, x_168); +lean_ctor_set(x_171, 3, x_170); +lean_inc(x_10); +x_172 = l_Lean_Syntax_node2(x_10, x_29, x_22, x_171); +lean_inc(x_10); +x_173 = l_Lean_Syntax_node1(x_10, x_31, x_172); +lean_inc(x_10); +x_174 = l_Lean_Syntax_node1(x_10, x_33, x_173); +lean_inc(x_10); +x_175 = l_Lean_Syntax_node1(x_10, x_35, x_174); +lean_inc(x_10); +x_176 = l_Lean_Syntax_node2(x_10, x_37, x_20, x_175); +x_177 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_177, 0, x_176); +lean_ctor_set(x_177, 1, x_25); +x_178 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_178, 0, x_166); +lean_ctor_set(x_178, 1, x_177); +x_179 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_179, 0, x_156); +lean_ctor_set(x_179, 1, x_178); +x_180 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_180, 0, x_146); +lean_ctor_set(x_180, 1, x_179); +x_181 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_181, 0, x_138); +lean_ctor_set(x_181, 1, x_180); +x_182 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_182, 0, x_128); +lean_ctor_set(x_182, 1, x_181); +x_183 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_183, 0, x_118); +lean_ctor_set(x_183, 1, x_182); +x_184 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_184, 0, x_108); +lean_ctor_set(x_184, 1, x_183); +x_185 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_185, 0, x_98); +lean_ctor_set(x_185, 1, x_184); +x_186 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_186, 0, x_88); +lean_ctor_set(x_186, 1, x_185); +x_187 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_187, 0, x_78); +lean_ctor_set(x_187, 1, x_186); +x_188 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_188, 0, x_68); +lean_ctor_set(x_188, 1, x_187); +x_189 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_189, 0, x_58); +lean_ctor_set(x_189, 1, x_188); +x_190 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_190, 0, x_48); +lean_ctor_set(x_190, 1, x_189); +x_191 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_191, 0, x_38); +lean_ctor_set(x_191, 1, x_190); +x_192 = lean_array_mk(x_191); +lean_inc(x_10); +x_193 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_193, 0, x_10); +lean_ctor_set(x_193, 1, x_31); +lean_ctor_set(x_193, 2, x_192); +x_194 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__17; +lean_inc(x_10); +x_195 = l_Lean_Syntax_node2(x_10, x_194, x_18, x_193); +lean_inc(x_10); +x_196 = l_Lean_Syntax_node1(x_10, x_31, x_195); +lean_inc(x_10); +x_197 = l_Lean_Syntax_node1(x_10, x_33, x_196); +lean_inc(x_10); +x_198 = l_Lean_Syntax_node1(x_10, x_35, x_197); +x_199 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; +lean_inc(x_10); +x_200 = lean_alloc_ctor(2, 2, 0); +lean_ctor_set(x_200, 0, x_10); +lean_ctor_set(x_200, 1, x_199); +x_201 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__14; +lean_inc(x_10); +x_202 = l_Lean_Syntax_node3(x_10, x_201, x_16, x_198, x_200); +lean_inc(x_10); +x_203 = l_Lean_Syntax_node1(x_10, x_31, x_202); +lean_inc(x_10); +x_204 = l_Lean_Syntax_node1(x_10, x_33, x_203); +lean_inc(x_10); +x_205 = l_Lean_Syntax_node1(x_10, x_35, x_204); +x_206 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__5; +x_207 = l_Lean_Syntax_node2(x_10, x_206, x_14, x_205); +x_208 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_208, 0, x_207); +lean_ctor_set(x_208, 1, x_3); +return x_208; } } } @@ -2330,7 +2750,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__3; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2351,7 +2771,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__5; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2628,7 +3048,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__31; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2649,7 +3069,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__33; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2670,7 +3090,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__35; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2691,7 +3111,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__37; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -2712,7 +3132,7 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_obj x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; -x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__67; +x_4 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__93; x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_queryNames___closed__39; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; @@ -3098,80 +3518,198 @@ return x_7; static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__12() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("toListModel_alter", 17, 17); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__13() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__12; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__14() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("toListModel_modify", 18, 18); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__15() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__14; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__16() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_6 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__12; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__17() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__1; +x_2 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__2; +x_3 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__3; +x_4 = l_Std_DHashMap_Internal_Raw_u2080_tacticWf__trivial___closed__4; +x_5 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__46; +x_6 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__14; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = lean_box(0); -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__11; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__17; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__13() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__16; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__15; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__13; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__11; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__9; -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__12; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__14() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__8; -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__13; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__15() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__6; -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__14; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__16() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__4; -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__15; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__17() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__2; -x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__16; +x_2 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18() { +static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__17; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27; x_2 = lean_array_mk(x_1); return x_2; } @@ -3180,7 +3718,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__St _start: { lean_object* x_1; -x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18; +x_1 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28; return x_1; } } @@ -4791,7 +5329,7 @@ x_24 = l_Lean_Syntax_node1(x_15, x_23, x_22); x_25 = l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__25; lean_inc(x_15); x_26 = l_Lean_Syntax_node2(x_15, x_25, x_18, x_24); -x_27 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_27 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; lean_inc(x_15); x_28 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_28, 0, x_15); @@ -5295,7 +5833,7 @@ x_42 = l_Lean_Syntax_node1(x_19, x_41, x_40); x_43 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__8; lean_inc(x_19); x_44 = l_Lean_Syntax_node1(x_19, x_43, x_42); -x_45 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_45 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; lean_inc(x_19); x_46 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_46, 0, x_19); @@ -5500,7 +6038,7 @@ x_135 = l_Lean_Syntax_node1(x_112, x_134, x_133); x_136 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__8; lean_inc(x_112); x_137 = l_Lean_Syntax_node1(x_112, x_136, x_135); -x_138 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_138 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; lean_inc(x_112); x_139 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_139, 0, x_112); @@ -5728,7 +6266,7 @@ x_239 = l_Lean_Syntax_node1(x_215, x_238, x_237); x_240 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__8; lean_inc(x_215); x_241 = l_Lean_Syntax_node1(x_215, x_240, x_239); -x_242 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98; +x_242 = l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124; lean_inc(x_215); x_243 = lean_alloc_ctor(2, 2, 0); lean_ctor_set(x_243, 0, x_215); @@ -6336,6 +6874,58 @@ l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemma lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__97); l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98(); lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__98); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__99); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__100); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__101); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__102); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__103); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__104); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__105); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__106); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__107); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__108); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__109); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__110); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__111); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__112); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__113); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__114); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__115); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__116); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__117); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__118); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__119); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__120); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__121); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__122); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__123); +l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124 = _init_l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124(); +lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080___aux__Std__Data__DHashMap__Internal__RawLemmas______macroRules__Std__DHashMap__Internal__Raw_u2080__tacticWf__trivial__1___closed__124); l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__1 = _init_l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__1(); lean_mark_persistent(l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__1); l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__2 = _init_l_Std_DHashMap_Internal_Raw_u2080_tacticEmpty___closed__2(); @@ -6556,6 +7146,26 @@ l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2 lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__17); l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18(); lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__18); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__19); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__20); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__21); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__22); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__23); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__24); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__25); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__26); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__27); +l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28(); +lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames___closed__28); l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames(); lean_mark_persistent(l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_modifyNames); l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__1 = _init_l___private_Std_Data_DHashMap_Internal_RawLemmas_0__Std_DHashMap_Internal_Raw_u2080_congrNames___closed__1(); diff --git a/stage0/stdlib/Std/Data/DHashMap/Raw.c b/stage0/stdlib/Std/Data/DHashMap/Raw.c index f16829e995..b321370a4a 100644 --- a/stage0/stdlib/Std/Data/DHashMap/Raw.c +++ b/stage0/stdlib/Std/Data/DHashMap/Raw.c @@ -68,6 +68,7 @@ uint8_t lean_usize_dec_eq(size_t, size_t); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_DHashMap_Raw_Const_toArray___spec__1___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_forM___spec__2___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_DHashMap_Raw_Const_toList___spec__3(lean_object*, lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Raw_instForInSigma___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_get___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Std_DHashMap_Raw_Const_unitOfList___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -106,6 +107,7 @@ lean_object* l_Std_DHashMap_Internal_AssocList_map_go___rarg(lean_object*, lean_ LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_unitOfArray___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_DHashMap_Raw_instRepr___rarg___closed__1; LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_filterMap___rarg(lean_object*, lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_foldRevM(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_get_x3f___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Format_joinSep___at_Std_DHashMap_Raw_instRepr___spec__13(lean_object*, lean_object*); @@ -115,7 +117,9 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Raw_filterMap_ LEAN_EXPORT lean_object* l_Std_Format_joinSep___at_Std_DHashMap_Raw_instRepr___spec__9(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_toArray(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_repr___at_Std_DHashMap_Raw_instRepr___spec__17(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_alter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_Const_toArray___spec__2___rarg(lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_insertIfNew___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_repr___at_Std_DHashMap_Raw_instRepr___spec__3___rarg___closed__3; LEAN_EXPORT lean_object* l_List_repr___at_Std_DHashMap_Raw_instRepr___spec__16(lean_object*, lean_object*); @@ -178,6 +182,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_containsThenInsertIfNew___rarg(lean_ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Raw_instForInSigma___spec__2___rarg___lambda__1(lean_object*, size_t, lean_object*, lean_object*, lean_object*, lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_insert___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_foldRev(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_instRepr(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_containsThenInsertIfNew(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_toList___rarg(lean_object*); @@ -187,6 +192,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_DHash LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_toArray___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Raw_filterMap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_get_x21___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_modify(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_repr___at_Std_DHashMap_Raw_instRepr___spec__7___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_toArray___spec__2(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_getKeyD(lean_object*, lean_object*); @@ -226,6 +232,7 @@ LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Raw_map___spec LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_toArray___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_getD(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_getD___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_alter(lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_empty___rarg___boxed(lean_object*); static lean_object* l_List_repr___at_Std_DHashMap_Raw_instRepr___spec__2___rarg___closed__7; LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_toList___rarg(lean_object*); @@ -279,7 +286,9 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_valuesA LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_instDecidableMem(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_map(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_get___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_string_length(lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Raw_Const_unitOfArray___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Std_DHashMap_Internal_AssocList_get_x21___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldrM___at_Std_DHashMap_Raw_Const_toList___spec__1(lean_object*, lean_object*); @@ -288,6 +297,7 @@ uint8_t lean_nat_dec_eq(lean_object*, lean_object*); static lean_object* l_List_repr___at_Std_DHashMap_Raw_instRepr___spec__2___rarg___closed__3; LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_filter(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_repr___at_Std_DHashMap_Raw_instRepr___spec__12(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Std_DHashMap_Raw_isEmpty___rarg(lean_object*); LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_DHashMap_Raw_Const_unitOfArray___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -370,6 +380,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldrM___at_Std_DHash static size_t l_Std_DHashMap_Raw_instSingletonSigmaOfBEqOfHashable___rarg___closed__3; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldrM___at_Std_DHashMap_Raw_foldRev___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_contains___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_DHashMap_Raw_union___spec__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_fold___spec__2___rarg(lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_insertMany(lean_object*, lean_object*); @@ -408,6 +419,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_insertMany___rarg___lambda__1( LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldrM___at_Std_DHashMap_Raw_foldRevM___spec__1___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_DHashMap_Raw_toArray___spec__1___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_DHashMap_Raw_foldM___spec__1___rarg___lambda__1(size_t, lean_object*, lean_object*, lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_modify(lean_object*); lean_object* l_Std_DHashMap_Internal_AssocList_getCastD___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_DHashMap_Raw_instRepr___spec__15___rarg(lean_object*, size_t, size_t, lean_object*); @@ -3279,6 +3291,692 @@ x_3 = lean_box(x_2); return x_3; } } +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_modify___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = lean_array_get_size(x_7); +lean_dec(x_7); +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_lt(x_9, x_8); +lean_dec(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_11 = l_Std_DHashMap_Raw_instEmptyCollection___closed__3; +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; lean_object* x_28; uint8_t x_29; +x_12 = lean_ctor_get(x_4, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_4, 1); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_inc(x_5); +x_15 = lean_apply_1(x_3, x_5); +x_16 = lean_unbox_uint64(x_15); +lean_dec(x_15); +x_17 = 32; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = 16; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = lean_uint64_to_usize(x_22); +x_24 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_25 = 1; +x_26 = lean_usize_sub(x_24, x_25); +x_27 = lean_usize_land(x_23, x_26); +x_28 = lean_array_uget(x_13, x_27); +lean_inc(x_28); +lean_inc(x_5); +lean_inc(x_1); +x_29 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_28); +if (x_29 == 0) +{ +lean_dec(x_28); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_4; +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_4); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_31 = lean_ctor_get(x_4, 1); +lean_dec(x_31); +x_32 = lean_ctor_get(x_4, 0); +lean_dec(x_32); +x_33 = lean_box(0); +x_34 = lean_array_uset(x_13, x_27, x_33); +x_35 = l_Std_DHashMap_Internal_AssocList_modify___rarg(x_1, lean_box(0), x_5, x_6, x_28); +x_36 = lean_array_uset(x_34, x_27, x_35); +lean_ctor_set(x_4, 1, x_36); +return x_4; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_4); +x_37 = lean_box(0); +x_38 = lean_array_uset(x_13, x_27, x_37); +x_39 = l_Std_DHashMap_Internal_AssocList_modify___rarg(x_1, lean_box(0), x_5, x_6, x_28); +x_40 = lean_array_uset(x_38, x_27, x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_12); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_modify(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Raw_modify___rarg), 6, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_modify___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = lean_ctor_get(x_5, 1); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_lt(x_10, x_9); +lean_dec(x_9); +if (x_11 == 0) +{ +lean_object* x_12; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_12 = l_Std_DHashMap_Raw_instEmptyCollection___closed__3; +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; size_t x_28; lean_object* x_29; uint8_t x_30; +x_13 = lean_ctor_get(x_5, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_5, 1); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_inc(x_6); +x_16 = lean_apply_1(x_3, x_6); +x_17 = lean_unbox_uint64(x_16); +lean_dec(x_16); +x_18 = 32; +x_19 = lean_uint64_shift_right(x_17, x_18); +x_20 = lean_uint64_xor(x_17, x_19); +x_21 = 16; +x_22 = lean_uint64_shift_right(x_20, x_21); +x_23 = lean_uint64_xor(x_20, x_22); +x_24 = lean_uint64_to_usize(x_23); +x_25 = lean_usize_of_nat(x_15); +lean_dec(x_15); +x_26 = 1; +x_27 = lean_usize_sub(x_25, x_26); +x_28 = lean_usize_land(x_24, x_27); +x_29 = lean_array_uget(x_14, x_28); +lean_inc(x_29); +lean_inc(x_6); +lean_inc(x_1); +x_30 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_6, x_29); +if (x_30 == 0) +{ +lean_dec(x_29); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_1); +return x_5; +} +else +{ +uint8_t x_31; +x_31 = !lean_is_exclusive(x_5); +if (x_31 == 0) +{ +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_32 = lean_ctor_get(x_5, 1); +lean_dec(x_32); +x_33 = lean_ctor_get(x_5, 0); +lean_dec(x_33); +x_34 = lean_box(0); +x_35 = lean_array_uset(x_14, x_28, x_34); +x_36 = l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(x_1, lean_box(0), x_6, x_7, x_29); +x_37 = lean_array_uset(x_35, x_28, x_36); +lean_ctor_set(x_5, 1, x_37); +return x_5; +} +else +{ +lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_dec(x_5); +x_38 = lean_box(0); +x_39 = lean_array_uset(x_14, x_28, x_38); +x_40 = l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(x_1, lean_box(0), x_6, x_7, x_29); +x_41 = lean_array_uset(x_39, x_28, x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_13); +lean_ctor_set(x_42, 1, x_41); +return x_42; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_modify(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Std_DHashMap_Raw_Const_modify___rarg), 7, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_alter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = lean_array_get_size(x_7); +lean_dec(x_7); +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_lt(x_9, x_8); +lean_dec(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_11 = l_Std_DHashMap_Raw_instEmptyCollection___closed__3; +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; lean_object* x_28; uint8_t x_29; +x_12 = lean_ctor_get(x_4, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_4, 1); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_inc(x_3); +lean_inc(x_5); +x_15 = lean_apply_1(x_3, x_5); +x_16 = lean_unbox_uint64(x_15); +lean_dec(x_15); +x_17 = 32; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = 16; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = lean_uint64_to_usize(x_22); +x_24 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_25 = 1; +x_26 = lean_usize_sub(x_24, x_25); +x_27 = lean_usize_land(x_23, x_26); +x_28 = lean_array_uget(x_13, x_27); +lean_inc(x_28); +lean_inc(x_5); +lean_inc(x_1); +x_29 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_1); +x_30 = lean_box(0); +x_31 = lean_apply_1(x_6, x_30); +if (lean_obj_tag(x_31) == 0) +{ +lean_dec(x_28); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_3); +return x_4; +} +else +{ +uint8_t x_32; +x_32 = !lean_is_exclusive(x_4); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_33 = lean_ctor_get(x_4, 1); +lean_dec(x_33); +x_34 = lean_ctor_get(x_4, 0); +lean_dec(x_34); +x_35 = lean_ctor_get(x_31, 0); +lean_inc(x_35); +lean_dec(x_31); +x_36 = lean_unsigned_to_nat(1u); +x_37 = lean_nat_add(x_12, x_36); +lean_dec(x_12); +x_38 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_38, 0, x_5); +lean_ctor_set(x_38, 1, x_35); +lean_ctor_set(x_38, 2, x_28); +x_39 = lean_array_uset(x_13, x_27, x_38); +x_40 = lean_unsigned_to_nat(4u); +x_41 = lean_nat_mul(x_37, x_40); +x_42 = lean_unsigned_to_nat(3u); +x_43 = lean_nat_div(x_41, x_42); +lean_dec(x_41); +x_44 = lean_array_get_size(x_39); +x_45 = lean_nat_dec_le(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +if (x_45 == 0) +{ +lean_object* x_46; +x_46 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_39); +lean_ctor_set(x_4, 1, x_46); +lean_ctor_set(x_4, 0, x_37); +return x_4; +} +else +{ +lean_dec(x_3); +lean_ctor_set(x_4, 1, x_39); +lean_ctor_set(x_4, 0, x_37); +return x_4; +} +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_4); +x_47 = lean_ctor_get(x_31, 0); +lean_inc(x_47); +lean_dec(x_31); +x_48 = lean_unsigned_to_nat(1u); +x_49 = lean_nat_add(x_12, x_48); +lean_dec(x_12); +x_50 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_50, 0, x_5); +lean_ctor_set(x_50, 1, x_47); +lean_ctor_set(x_50, 2, x_28); +x_51 = lean_array_uset(x_13, x_27, x_50); +x_52 = lean_unsigned_to_nat(4u); +x_53 = lean_nat_mul(x_49, x_52); +x_54 = lean_unsigned_to_nat(3u); +x_55 = lean_nat_div(x_53, x_54); +lean_dec(x_53); +x_56 = lean_array_get_size(x_51); +x_57 = lean_nat_dec_le(x_55, x_56); +lean_dec(x_56); +lean_dec(x_55); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_51); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_49); +lean_ctor_set(x_59, 1, x_58); +return x_59; +} +else +{ +lean_object* x_60; +lean_dec(x_3); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_49); +lean_ctor_set(x_60, 1, x_51); +return x_60; +} +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_3); +x_61 = !lean_is_exclusive(x_4); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; lean_object* x_68; +x_62 = lean_ctor_get(x_4, 1); +lean_dec(x_62); +x_63 = lean_ctor_get(x_4, 0); +lean_dec(x_63); +x_64 = lean_box(0); +x_65 = lean_array_uset(x_13, x_27, x_64); +lean_inc(x_5); +lean_inc(x_1); +x_66 = l_Std_DHashMap_Internal_AssocList_alter___rarg(x_1, lean_box(0), x_5, x_6, x_28); +lean_inc(x_66); +x_67 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_66); +x_68 = lean_array_uset(x_65, x_27, x_66); +if (x_67 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_unsigned_to_nat(1u); +x_70 = lean_nat_sub(x_12, x_69); +lean_dec(x_12); +lean_ctor_set(x_4, 1, x_68); +lean_ctor_set(x_4, 0, x_70); +return x_4; +} +else +{ +lean_ctor_set(x_4, 1, x_68); +return x_4; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; lean_object* x_75; +lean_dec(x_4); +x_71 = lean_box(0); +x_72 = lean_array_uset(x_13, x_27, x_71); +lean_inc(x_5); +lean_inc(x_1); +x_73 = l_Std_DHashMap_Internal_AssocList_alter___rarg(x_1, lean_box(0), x_5, x_6, x_28); +lean_inc(x_73); +x_74 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_73); +x_75 = lean_array_uset(x_72, x_27, x_73); +if (x_74 == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_unsigned_to_nat(1u); +x_77 = lean_nat_sub(x_12, x_76); +lean_dec(x_12); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_75); +return x_78; +} +else +{ +lean_object* x_79; +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_12); +lean_ctor_set(x_79, 1, x_75); +return x_79; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_alter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Std_DHashMap_Raw_alter___rarg), 6, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_alter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +_start: +{ +lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +x_8 = lean_ctor_get(x_5, 1); +lean_inc(x_8); +x_9 = lean_array_get_size(x_8); +lean_dec(x_8); +x_10 = lean_unsigned_to_nat(0u); +x_11 = lean_nat_dec_lt(x_10, x_9); +lean_dec(x_9); +if (x_11 == 0) +{ +lean_object* x_12; +lean_dec(x_7); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_3); +lean_dec(x_1); +x_12 = l_Std_DHashMap_Raw_instEmptyCollection___closed__3; +return x_12; +} +else +{ +lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; uint64_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; size_t x_28; lean_object* x_29; uint8_t x_30; +x_13 = lean_ctor_get(x_5, 0); +lean_inc(x_13); +x_14 = lean_ctor_get(x_5, 1); +lean_inc(x_14); +x_15 = lean_array_get_size(x_14); +lean_inc(x_3); +lean_inc(x_6); +x_16 = lean_apply_1(x_3, x_6); +x_17 = lean_unbox_uint64(x_16); +lean_dec(x_16); +x_18 = 32; +x_19 = lean_uint64_shift_right(x_17, x_18); +x_20 = lean_uint64_xor(x_17, x_19); +x_21 = 16; +x_22 = lean_uint64_shift_right(x_20, x_21); +x_23 = lean_uint64_xor(x_20, x_22); +x_24 = lean_uint64_to_usize(x_23); +x_25 = lean_usize_of_nat(x_15); +lean_dec(x_15); +x_26 = 1; +x_27 = lean_usize_sub(x_25, x_26); +x_28 = lean_usize_land(x_24, x_27); +x_29 = lean_array_uget(x_14, x_28); +lean_inc(x_29); +lean_inc(x_6); +lean_inc(x_1); +x_30 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_6, x_29); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_1); +x_31 = lean_box(0); +x_32 = lean_apply_1(x_7, x_31); +if (lean_obj_tag(x_32) == 0) +{ +lean_dec(x_29); +lean_dec(x_14); +lean_dec(x_13); +lean_dec(x_6); +lean_dec(x_3); +return x_5; +} +else +{ +uint8_t x_33; +x_33 = !lean_is_exclusive(x_5); +if (x_33 == 0) +{ +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; uint8_t x_46; +x_34 = lean_ctor_get(x_5, 1); +lean_dec(x_34); +x_35 = lean_ctor_get(x_5, 0); +lean_dec(x_35); +x_36 = lean_ctor_get(x_32, 0); +lean_inc(x_36); +lean_dec(x_32); +x_37 = lean_unsigned_to_nat(1u); +x_38 = lean_nat_add(x_13, x_37); +lean_dec(x_13); +x_39 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_39, 0, x_6); +lean_ctor_set(x_39, 1, x_36); +lean_ctor_set(x_39, 2, x_29); +x_40 = lean_array_uset(x_14, x_28, x_39); +x_41 = lean_unsigned_to_nat(4u); +x_42 = lean_nat_mul(x_38, x_41); +x_43 = lean_unsigned_to_nat(3u); +x_44 = lean_nat_div(x_42, x_43); +lean_dec(x_42); +x_45 = lean_array_get_size(x_40); +x_46 = lean_nat_dec_le(x_44, x_45); +lean_dec(x_45); +lean_dec(x_44); +if (x_46 == 0) +{ +lean_object* x_47; +x_47 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_40); +lean_ctor_set(x_5, 1, x_47); +lean_ctor_set(x_5, 0, x_38); +return x_5; +} +else +{ +lean_dec(x_3); +lean_ctor_set(x_5, 1, x_40); +lean_ctor_set(x_5, 0, x_38); +return x_5; +} +} +else +{ +lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; uint8_t x_58; +lean_dec(x_5); +x_48 = lean_ctor_get(x_32, 0); +lean_inc(x_48); +lean_dec(x_32); +x_49 = lean_unsigned_to_nat(1u); +x_50 = lean_nat_add(x_13, x_49); +lean_dec(x_13); +x_51 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_51, 0, x_6); +lean_ctor_set(x_51, 1, x_48); +lean_ctor_set(x_51, 2, x_29); +x_52 = lean_array_uset(x_14, x_28, x_51); +x_53 = lean_unsigned_to_nat(4u); +x_54 = lean_nat_mul(x_50, x_53); +x_55 = lean_unsigned_to_nat(3u); +x_56 = lean_nat_div(x_54, x_55); +lean_dec(x_54); +x_57 = lean_array_get_size(x_52); +x_58 = lean_nat_dec_le(x_56, x_57); +lean_dec(x_57); +lean_dec(x_56); +if (x_58 == 0) +{ +lean_object* x_59; lean_object* x_60; +x_59 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_52); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_50); +lean_ctor_set(x_60, 1, x_59); +return x_60; +} +else +{ +lean_object* x_61; +lean_dec(x_3); +x_61 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_61, 0, x_50); +lean_ctor_set(x_61, 1, x_52); +return x_61; +} +} +} +} +else +{ +uint8_t x_62; +lean_dec(x_3); +x_62 = !lean_is_exclusive(x_5); +if (x_62 == 0) +{ +lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; uint8_t x_68; lean_object* x_69; +x_63 = lean_ctor_get(x_5, 1); +lean_dec(x_63); +x_64 = lean_ctor_get(x_5, 0); +lean_dec(x_64); +x_65 = lean_box(0); +x_66 = lean_array_uset(x_14, x_28, x_65); +lean_inc(x_6); +lean_inc(x_1); +x_67 = l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(x_1, lean_box(0), x_6, x_7, x_29); +lean_inc(x_67); +x_68 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_6, x_67); +x_69 = lean_array_uset(x_66, x_28, x_67); +if (x_68 == 0) +{ +lean_object* x_70; lean_object* x_71; +x_70 = lean_unsigned_to_nat(1u); +x_71 = lean_nat_sub(x_13, x_70); +lean_dec(x_13); +lean_ctor_set(x_5, 1, x_69); +lean_ctor_set(x_5, 0, x_71); +return x_5; +} +else +{ +lean_ctor_set(x_5, 1, x_69); +return x_5; +} +} +else +{ +lean_object* x_72; lean_object* x_73; lean_object* x_74; uint8_t x_75; lean_object* x_76; +lean_dec(x_5); +x_72 = lean_box(0); +x_73 = lean_array_uset(x_14, x_28, x_72); +lean_inc(x_6); +lean_inc(x_1); +x_74 = l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(x_1, lean_box(0), x_6, x_7, x_29); +lean_inc(x_74); +x_75 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_6, x_74); +x_76 = lean_array_uset(x_73, x_28, x_74); +if (x_75 == 0) +{ +lean_object* x_77; lean_object* x_78; lean_object* x_79; +x_77 = lean_unsigned_to_nat(1u); +x_78 = lean_nat_sub(x_13, x_77); +lean_dec(x_13); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set(x_79, 1, x_76); +return x_79; +} +else +{ +lean_object* x_80; +x_80 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_80, 0, x_13); +lean_ctor_set(x_80, 1, x_76); +return x_80; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_DHashMap_Raw_Const_alter(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Std_DHashMap_Raw_Const_alter___rarg), 7, 0); +return x_2; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Raw_filterMap___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { diff --git a/stage0/stdlib/Std/Data/DHashMap/RawLemmas.c b/stage0/stdlib/Std/Data/DHashMap/RawLemmas.c index 6ed8ba5e0c..98fb9570fa 100644 --- a/stage0/stdlib/Std/Data/DHashMap/RawLemmas.c +++ b/stage0/stdlib/Std/Data/DHashMap/RawLemmas.c @@ -24,7 +24,9 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__140; static lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___spec__2___closed__3; lean_object* lean_mk_empty_array_with_capacity(lean_object*); +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__26; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__135; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60; @@ -81,6 +83,7 @@ static lean_object* l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____clo static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__102; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__19; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__81; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__7; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__32; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__38; @@ -129,6 +132,7 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__14; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__42; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__35; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___spec__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___spec__3(lean_object*, size_t, size_t, lean_object*); @@ -136,6 +140,7 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____closed__7; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__159; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__8; LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___spec__4(lean_object*, size_t, size_t, lean_object*); static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__28; @@ -182,11 +187,13 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__112; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__148; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__126; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__104; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__130; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__163; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196; lean_object* l_Array_append___rarg(lean_object*, lean_object*); static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__88; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__2; @@ -210,6 +217,7 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____closed__14; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__87; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__47; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__19; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__131; @@ -269,10 +277,12 @@ static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Inte static lean_object* l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____closed__3; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94; lean_object* l_Lean_Name_mkStr4(lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__152; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__124; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__77; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__108; +static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194; static lean_object* l_Std_DHashMap_Internal_Raw___aux__Std__Data__DHashMap__RawLemmas______macroRules__Std__DHashMap__Internal__Raw__tacticSimp__to__rawUsing____1___lambda__1___closed__12; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__52; static lean_object* l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__122; @@ -351,7 +361,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertManyIfNewUnit_eq", 22, 22); +x_1 = lean_mk_string_unchecked("unitOfList_eq", 13, 13); return x_1; } } @@ -373,13 +383,26 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertManyIfNewUnit_val", 23, 23); +x_1 = lean_mk_string_unchecked("alter_eq", 8, 8); return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__9() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__8; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__10() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; @@ -391,15 +414,15 @@ x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__10() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__11() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("ofList_eq", 9, 9); +x_1 = lean_mk_string_unchecked("modify_eq", 9, 9); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__11() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__12() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -407,56 +430,46 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__10; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__11; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__12() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__10; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; -} -} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__13() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("unitOfList_eq", 13, 13); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__14() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__13; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__11; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__14() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = lean_box(0); +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__13; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__15() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = lean_box(0); +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__12; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__14; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); return x_3; } } @@ -464,7 +477,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__12; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__10; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__15; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -476,7 +489,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__11; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__9; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__16; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -488,7 +501,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__9; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__7; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__17; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -499,71 +512,68 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__19() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__7; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__18; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("insertManyIfNewUnit_eq", 22, 22); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__20() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertMany_eq", 13, 13); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__21() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__20; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__22() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertMany_val", 14, 14); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__22; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__24() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__20; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__19; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__21() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("insertManyIfNewUnit_val", 23, 23); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__22() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__21; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("ofList_eq", 9, 9); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__24() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__25() { _start: { @@ -573,7 +583,7 @@ x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__22; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } @@ -582,7 +592,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__19; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__18; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__25; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); @@ -606,7 +616,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__23; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__22; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__27; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -618,7 +628,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__21; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__20; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__28; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -630,7 +640,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKey!_eq", 10, 10); +x_1 = lean_mk_string_unchecked("getKeyD_val", 11, 11); return x_1; } } @@ -651,7 +661,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKey!_val", 11, 11); +x_1 = lean_mk_string_unchecked("insertMany_eq", 13, 13); return x_1; } } @@ -672,7 +682,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKeyD_eq", 10, 10); +x_1 = lean_mk_string_unchecked("insertMany_val", 14, 14); return x_1; } } @@ -692,22 +702,29 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__36() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKeyD_val", 11, 11); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__32; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__37() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__36; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__34; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__38() { @@ -726,7 +743,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__35; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__36; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__38; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -738,7 +755,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__33; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__35; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__39; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -750,7 +767,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__31; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__33; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__40; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -761,75 +778,24 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__42() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKey\?_eq", 10, 10); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__31; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__41; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__43() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__42; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__44() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKey\?_val", 11, 11); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__45() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__44; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__46() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getKey_eq", 9, 9); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__47() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__46; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__48() { -_start: -{ lean_object* x_1; x_1 = lean_mk_string_unchecked("getKey_val", 10, 10); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__49() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__44() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -837,32 +803,83 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__48; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__43; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__45() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKey!_eq", 10, 10); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__46() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__45; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__47() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKey!_val", 11, 11); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__48() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__47; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__49() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKeyD_eq", 10, 10); +return x_1; +} +} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__50() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__41; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__49; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__49; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__51() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__47; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__42; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__50; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } @@ -870,7 +887,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__45; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__48; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__51; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -882,7 +899,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__43; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__46; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__52; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -893,54 +910,24 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__54() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getD_eq", 7, 7); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__44; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__53; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__55() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__54; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__56() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getD_val", 8, 8); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__57() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__56; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__58() { -_start: -{ lean_object* x_1; x_1 = lean_mk_string_unchecked("get!_eq", 7, 7); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__59() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__56() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -948,12 +935,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__58; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__55; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__57() { _start: { lean_object* x_1; @@ -961,7 +948,7 @@ x_1 = lean_mk_string_unchecked("get!_val", 8, 8); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__61() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__58() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -969,99 +956,132 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__57; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__59() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKey\?_eq", 10, 10); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__59; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__61() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKey\?_val", 11, 11); +return x_1; +} +} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__62() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__53; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__61; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__61; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__63() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__59; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__62; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getKey_eq", 9, 9); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__64() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__57; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__63; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__63; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__65() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__55; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__54; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__64; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__66() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("contains_eq", 11, 11); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__62; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__65; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__67() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__66; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__66; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__68() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("contains_val", 12, 12); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__58; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__67; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__69() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__68; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__56; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__68; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__70() { @@ -1109,93 +1129,91 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__74() { _start: { +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getD_eq", 7, 7); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__75() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__74; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__76() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getD_val", 8, 8); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__77() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__76; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__78() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__65; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__73; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__69; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__77; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__75() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__71; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__74; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__76() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__69; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__75; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__77() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__67; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__76; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__78() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_fst_eq", 26, 26); -return x_1; -} -} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__79() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__78; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__75; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__78; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__80() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_fst_val", 27, 27); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__73; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__79; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__81() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__80; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__71; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__80; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__82() { @@ -1243,151 +1261,133 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__86() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__77; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__85; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("contains_eq", 11, 11); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__87() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__83; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__86; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__86; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__88() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__81; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__87; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("contains_val", 12, 12); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__89() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__79; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__88; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__88; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__90() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__58; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__91() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__60; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__92() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__78; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__93() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__80; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94() { -_start: -{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__89; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__93; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__81; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__89; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__95() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__91() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__92; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__87; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__90; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__92() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__85; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__91; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__93() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__83; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__92; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_fst_eq", 26, 26); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__95() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__96() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__91; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__95; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_fst_val", 27, 27); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__97() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__90; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__96; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__96; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__98() { @@ -1399,7 +1399,7 @@ x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__70; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__94; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } @@ -1413,7 +1413,7 @@ x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__72; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__96; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } @@ -1421,29 +1421,25 @@ return x_7; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__100() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__54; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__93; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__99; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__101() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__56; -x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); -return x_7; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__98; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__100; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__102() { @@ -1453,8 +1449,8 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__97; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__101; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); return x_3; } } @@ -1462,7 +1458,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__100; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__95; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__102; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -1473,49 +1469,134 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__104() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__99; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__103; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__72; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__105() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__74; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__106() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__76; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__107() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__55; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__108() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__57; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__109() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__98; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__104; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__103; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__108; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__110() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__107; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__109; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__106() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__111() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_fst_eq", 30, 30); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__106; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__110; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__107() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__112() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__106; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__105; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__111; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__108() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__113() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__104; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__112; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__114() { _start: { lean_object* x_1; @@ -1523,7 +1604,7 @@ x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_fst_val", 31, 31); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__109() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__115() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1531,12 +1612,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__108; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__114; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__110() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; @@ -1550,7 +1631,7 @@ x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__111() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__117() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; @@ -1564,63 +1645,7 @@ x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__112() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__105; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__111; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__113() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__110; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__112; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__114() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__109; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__113; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__115() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__107; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__114; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_snd_eq", 26, 26); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__117() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__118() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; @@ -1629,12 +1654,60 @@ x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__70; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__118() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__119() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__113; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__118; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__120() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__117; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__119; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__121() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__120; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__122() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__115; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__121; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__123() { _start: { lean_object* x_1; @@ -1642,7 +1715,7 @@ x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_snd_val", 27, 27); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__119() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__124() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; @@ -1651,12 +1724,12 @@ x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; -x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__118; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__123; x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); return x_7; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__120() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__125() { _start: { lean_object* x_1; @@ -1664,7 +1737,7 @@ x_1 = lean_mk_string_unchecked("containsThenInsert_fst_eq", 25, 25); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__121() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__126() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1672,12 +1745,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__120; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__125; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__122() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__127() { _start: { lean_object* x_1; @@ -1685,7 +1758,7 @@ x_1 = lean_mk_string_unchecked("containsThenInsert_fst_val", 26, 26); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__123() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__128() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1693,81 +1766,81 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__122; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__127; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__124() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__129() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_fst_eq", 30, 30); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__130() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__129; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__131() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__115; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__123; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__122; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__130; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__125() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__132() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__121; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__124; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__128; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__131; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__126() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__133() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__119; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__125; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__126; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__132; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__127() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__134() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__117; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__126; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__124; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__133; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__128() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("erase_eq", 8, 8); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__129() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__128; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__130() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__135() { _start: { lean_object* x_1; @@ -1775,7 +1848,7 @@ x_1 = lean_mk_string_unchecked("erase_val", 9, 9); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__131() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__136() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1783,12 +1856,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__130; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__135; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__132() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__137() { _start: { lean_object* x_1; @@ -1796,7 +1869,7 @@ x_1 = lean_mk_string_unchecked("filterMap_eq", 12, 12); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__133() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__138() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1804,12 +1877,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__132; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__137; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__134() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__139() { _start: { lean_object* x_1; @@ -1817,7 +1890,7 @@ x_1 = lean_mk_string_unchecked("filterMap_val", 13, 13); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__135() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__140() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1825,60 +1898,82 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__134; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__139; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__136() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__141() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("getThenInsertIfNew\?_snd_eq", 26, 26); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__142() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__5; +x_6 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__141; +x_7 = l_Lean_Name_mkStr6(x_1, x_2, x_3, x_4, x_5, x_6); +return x_7; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__143() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__127; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__135; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__134; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__142; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_2); lean_ctor_set(x_3, 1, x_1); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__137() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__144() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__133; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__136; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__140; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__143; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__138() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__145() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__131; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__137; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__138; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__144; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__139() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__146() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__129; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__138; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__136; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__145; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__140() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__147() { _start: { lean_object* x_1; @@ -1886,7 +1981,7 @@ x_1 = lean_mk_string_unchecked("map_eq", 6, 6); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__141() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__148() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1894,12 +1989,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__140; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__147; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__142() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__149() { _start: { lean_object* x_1; @@ -1907,7 +2002,7 @@ x_1 = lean_mk_string_unchecked("map_val", 7, 7); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__143() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__150() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1915,12 +2010,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__142; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__149; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__144() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__151() { _start: { lean_object* x_1; @@ -1928,7 +2023,7 @@ x_1 = lean_mk_string_unchecked("filter_eq", 9, 9); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__145() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__152() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; @@ -1936,12 +2031,12 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__144; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__151; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__146() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__153() { _start: { lean_object* x_1; @@ -1949,107 +2044,25 @@ x_1 = lean_mk_string_unchecked("filter_val", 10, 10); return x_1; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__147() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__146; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__148() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__139; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__147; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__149() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__145; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__148; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__150() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__143; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__149; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__151() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__141; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__150; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__152() { -_start: -{ -lean_object* x_1; -x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_snd_eq", 30, 30); -return x_1; -} -} -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__153() { -_start: -{ -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__152; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; -} -} static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__154() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_snd_val", 31, 31); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__153; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__155() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__154; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("erase_eq", 8, 8); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__156() { @@ -2060,7 +2073,7 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__116; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__155; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -2068,25 +2081,24 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__157() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__118; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__146; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__156; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__158() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__151; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__154; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__157; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); return x_3; } } @@ -2094,7 +2106,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__156; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__152; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__158; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2106,7 +2118,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__155; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__150; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__159; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2118,7 +2130,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__153; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__148; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__160; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2130,7 +2142,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertIfNew_eq", 14, 14); +x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_snd_eq", 30, 30); return x_1; } } @@ -2151,7 +2163,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("insertIfNew_val", 15, 15); +x_1 = lean_mk_string_unchecked("containsThenInsertIfNew_snd_val", 31, 31); return x_1; } } @@ -2171,9 +2183,14 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__166() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("containsThenInsert_snd_eq", 25, 25); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__141; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__167() { @@ -2184,7 +2201,7 @@ x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseN x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__166; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__123; x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); return x_6; } @@ -2192,33 +2209,36 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__168() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("containsThenInsert_snd_val", 26, 26); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__161; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__167; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__169() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__168; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__166; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__168; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__170() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__161; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__165; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__169; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); return x_3; } } @@ -2226,7 +2246,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__167; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__163; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__170; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2237,32 +2257,29 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__172() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__165; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__171; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("insertIfNew_eq", 14, 14); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__173() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__163; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__172; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__172; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__174() { _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("empty_eq", 8, 8); +x_1 = lean_mk_string_unchecked("insertIfNew_val", 15, 15); return x_1; } } @@ -2283,7 +2300,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("emptyc_eq", 9, 9); +x_1 = lean_mk_string_unchecked("containsThenInsert_snd_eq", 25, 25); return x_1; } } @@ -2304,7 +2321,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = lean_mk_string_unchecked("insert_eq", 9, 9); +x_1 = lean_mk_string_unchecked("containsThenInsert_snd_val", 26, 26); return x_1; } } @@ -2324,33 +2341,36 @@ return x_6; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__180() { _start: { -lean_object* x_1; -x_1 = lean_mk_string_unchecked("insert_val", 10, 10); -return x_1; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__171; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__179; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__181() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; -x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; -x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; -x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__180; -x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); -return x_6; +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__177; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__180; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__182() { _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__173; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__175; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__181; x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_2); -lean_ctor_set(x_3, 1, x_1); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); return x_3; } } @@ -2358,7 +2378,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__179; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__173; x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__182; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); @@ -2369,32 +2389,140 @@ return x_3; static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__184() { _start: { -lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__177; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__183; -x_3 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_3, 0, x_1); -lean_ctor_set(x_3, 1, x_2); -return x_3; +lean_object* x_1; +x_1 = lean_mk_string_unchecked("empty_eq", 8, 8); +return x_1; } } static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__185() { _start: { +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__184; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("emptyc_eq", 9, 9); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("insert_eq", 9, 9); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190() { +_start: +{ +lean_object* x_1; +x_1 = lean_mk_string_unchecked("insert_val", 10, 10); +return x_1; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__1; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__2; +x_3 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__3; +x_4 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__4; +x_5 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190; +x_6 = l_Lean_Name_mkStr5(x_1, x_2, x_3, x_4, x_5); +return x_6; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192() { +_start: +{ lean_object* x_1; lean_object* x_2; lean_object* x_3; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__175; -x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__184; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__183; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_2); +lean_ctor_set(x_3, 1, x_1); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192; x_3 = lean_alloc_ctor(1, 2, 0); lean_ctor_set(x_3, 0, x_1); lean_ctor_set(x_3, 1, x_2); return x_3; } } -static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186() { +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__185; +x_2 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194; +x_3 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_3, 0, x_1); +lean_ctor_set(x_3, 1, x_2); +return x_3; +} +} +static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__185; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195; x_2 = lean_array_mk(x_1); return x_2; } @@ -2403,7 +2531,7 @@ static lean_object* _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMa _start: { lean_object* x_1; -x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186; +x_1 = l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196; return x_1; } } @@ -3913,6 +4041,26 @@ l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames__ lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__185); l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186(); lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__186); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__187); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__188); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__189); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__190); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__191); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__192); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__193); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__194); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__195); +l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196 = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196(); +lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames___closed__196); l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames = _init_l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames(); lean_mark_persistent(l___private_Std_Data_DHashMap_RawLemmas_0__Std_DHashMap_Internal_Raw_baseNames); l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____closed__1 = _init_l_Std_DHashMap_Internal_Raw_tacticSimp__to__rawUsing_____closed__1(); diff --git a/stage0/stdlib/Std/Data/HashMap/Raw.c b/stage0/stdlib/Std/Data/HashMap/Raw.c index 44552c86f2..a0f65f153c 100644 --- a/stage0/stdlib/Std/Data/HashMap/Raw.c +++ b/stage0/stdlib/Std/Data/HashMap/Raw.c @@ -62,6 +62,8 @@ LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_HashMap_Raw_keys___s LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_HashMap_Raw_instForInProd___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_valuesArray___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_List_repr___at_Std_HashMap_Raw_instRepr___spec__2___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_alter(lean_object*, lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_forM___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_HashMap_Raw_instRepr___spec__18(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_forM___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -82,6 +84,7 @@ lean_object* l_Std_DHashMap_Internal_AssocList_map_go___rarg(lean_object*, lean_ LEAN_EXPORT lean_object* l_List_repr___at_Std_HashMap_Raw_instRepr___spec__13___rarg(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_forIn___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_HashMap_Raw_keys___spec__2(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_modify(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_fold(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_HashMap_Raw_instRepr___spec__18___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_keysArray___spec__2___rarg(lean_object*, size_t, size_t, lean_object*); @@ -123,6 +126,7 @@ LEAN_EXPORT lean_object* l_Array_foldrMUnsafe_fold___at_Std_HashMap_Raw_toList__ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_filter___spec__2___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_HashMap_Raw_filterMap___spec__1___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldrM___at_Std_HashMap_Raw_instRepr___spec__1(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_HashMap_Raw_instSingletonProdOfBEqOfHashable___rarg___closed__1; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_fold___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_HashMap_Raw_filterMap___spec__1___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -244,6 +248,7 @@ LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_keysArra lean_object* lean_string_length(lean_object*); LEAN_EXPORT lean_object* l_List_foldl___at_Std_HashMap_Raw_instRepr___spec__23(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_get_x3f(lean_object*, lean_object*); +lean_object* l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* l_Std_DHashMap_Internal_AssocList_get_x21___rarg(lean_object*, lean_object*, lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_instDecidableMem___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); @@ -261,6 +266,7 @@ LEAN_EXPORT lean_object* l_Array_forIn_x27Unsafe_loop___at_Std_HashMap_Raw_forIn LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_valuesArray___spec__2___rarg(lean_object*, size_t, size_t, lean_object*); LEAN_EXPORT lean_object* l_Prod_repr___at_Std_HashMap_Raw_instRepr___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_keys___rarg(lean_object*); +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_modify___rarg(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_HashMap_Raw_keys___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_HashMap_Raw_union___spec__2___rarg(lean_object*, lean_object*, lean_object*, size_t, size_t, lean_object*); lean_object* l_Std_Format_joinSep___at_Prod_repr___spec__1(lean_object*, lean_object*); @@ -3471,6 +3477,349 @@ lean_dec(x_3); return x_10; } } +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_alter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = lean_array_get_size(x_7); +lean_dec(x_7); +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_lt(x_9, x_8); +lean_dec(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_11 = l_Std_HashMap_Raw_instEmptyCollection___closed__3; +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; lean_object* x_28; uint8_t x_29; +x_12 = lean_ctor_get(x_4, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_4, 1); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_inc(x_3); +lean_inc(x_5); +x_15 = lean_apply_1(x_3, x_5); +x_16 = lean_unbox_uint64(x_15); +lean_dec(x_15); +x_17 = 32; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = 16; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = lean_uint64_to_usize(x_22); +x_24 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_25 = 1; +x_26 = lean_usize_sub(x_24, x_25); +x_27 = lean_usize_land(x_23, x_26); +x_28 = lean_array_uget(x_13, x_27); +lean_inc(x_28); +lean_inc(x_5); +lean_inc(x_1); +x_29 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_28); +if (x_29 == 0) +{ +lean_object* x_30; lean_object* x_31; +lean_dec(x_1); +x_30 = lean_box(0); +x_31 = lean_apply_1(x_6, x_30); +if (lean_obj_tag(x_31) == 0) +{ +lean_dec(x_28); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_5); +lean_dec(x_3); +return x_4; +} +else +{ +uint8_t x_32; +x_32 = !lean_is_exclusive(x_4); +if (x_32 == 0) +{ +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; uint8_t x_45; +x_33 = lean_ctor_get(x_4, 1); +lean_dec(x_33); +x_34 = lean_ctor_get(x_4, 0); +lean_dec(x_34); +x_35 = lean_ctor_get(x_31, 0); +lean_inc(x_35); +lean_dec(x_31); +x_36 = lean_unsigned_to_nat(1u); +x_37 = lean_nat_add(x_12, x_36); +lean_dec(x_12); +x_38 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_38, 0, x_5); +lean_ctor_set(x_38, 1, x_35); +lean_ctor_set(x_38, 2, x_28); +x_39 = lean_array_uset(x_13, x_27, x_38); +x_40 = lean_unsigned_to_nat(4u); +x_41 = lean_nat_mul(x_37, x_40); +x_42 = lean_unsigned_to_nat(3u); +x_43 = lean_nat_div(x_41, x_42); +lean_dec(x_41); +x_44 = lean_array_get_size(x_39); +x_45 = lean_nat_dec_le(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +if (x_45 == 0) +{ +lean_object* x_46; +x_46 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_39); +lean_ctor_set(x_4, 1, x_46); +lean_ctor_set(x_4, 0, x_37); +return x_4; +} +else +{ +lean_dec(x_3); +lean_ctor_set(x_4, 1, x_39); +lean_ctor_set(x_4, 0, x_37); +return x_4; +} +} +else +{ +lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; uint8_t x_57; +lean_dec(x_4); +x_47 = lean_ctor_get(x_31, 0); +lean_inc(x_47); +lean_dec(x_31); +x_48 = lean_unsigned_to_nat(1u); +x_49 = lean_nat_add(x_12, x_48); +lean_dec(x_12); +x_50 = lean_alloc_ctor(1, 3, 0); +lean_ctor_set(x_50, 0, x_5); +lean_ctor_set(x_50, 1, x_47); +lean_ctor_set(x_50, 2, x_28); +x_51 = lean_array_uset(x_13, x_27, x_50); +x_52 = lean_unsigned_to_nat(4u); +x_53 = lean_nat_mul(x_49, x_52); +x_54 = lean_unsigned_to_nat(3u); +x_55 = lean_nat_div(x_53, x_54); +lean_dec(x_53); +x_56 = lean_array_get_size(x_51); +x_57 = lean_nat_dec_le(x_55, x_56); +lean_dec(x_56); +lean_dec(x_55); +if (x_57 == 0) +{ +lean_object* x_58; lean_object* x_59; +x_58 = l_Std_DHashMap_Internal_Raw_u2080_expand___rarg(x_3, x_51); +x_59 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_59, 0, x_49); +lean_ctor_set(x_59, 1, x_58); +return x_59; +} +else +{ +lean_object* x_60; +lean_dec(x_3); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_49); +lean_ctor_set(x_60, 1, x_51); +return x_60; +} +} +} +} +else +{ +uint8_t x_61; +lean_dec(x_3); +x_61 = !lean_is_exclusive(x_4); +if (x_61 == 0) +{ +lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; uint8_t x_67; lean_object* x_68; +x_62 = lean_ctor_get(x_4, 1); +lean_dec(x_62); +x_63 = lean_ctor_get(x_4, 0); +lean_dec(x_63); +x_64 = lean_box(0); +x_65 = lean_array_uset(x_13, x_27, x_64); +lean_inc(x_5); +lean_inc(x_1); +x_66 = l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(x_1, lean_box(0), x_5, x_6, x_28); +lean_inc(x_66); +x_67 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_66); +x_68 = lean_array_uset(x_65, x_27, x_66); +if (x_67 == 0) +{ +lean_object* x_69; lean_object* x_70; +x_69 = lean_unsigned_to_nat(1u); +x_70 = lean_nat_sub(x_12, x_69); +lean_dec(x_12); +lean_ctor_set(x_4, 1, x_68); +lean_ctor_set(x_4, 0, x_70); +return x_4; +} +else +{ +lean_ctor_set(x_4, 1, x_68); +return x_4; +} +} +else +{ +lean_object* x_71; lean_object* x_72; lean_object* x_73; uint8_t x_74; lean_object* x_75; +lean_dec(x_4); +x_71 = lean_box(0); +x_72 = lean_array_uset(x_13, x_27, x_71); +lean_inc(x_5); +lean_inc(x_1); +x_73 = l_Std_DHashMap_Internal_AssocList_Const_alter___rarg(x_1, lean_box(0), x_5, x_6, x_28); +lean_inc(x_73); +x_74 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_73); +x_75 = lean_array_uset(x_72, x_27, x_73); +if (x_74 == 0) +{ +lean_object* x_76; lean_object* x_77; lean_object* x_78; +x_76 = lean_unsigned_to_nat(1u); +x_77 = lean_nat_sub(x_12, x_76); +lean_dec(x_12); +x_78 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_78, 0, x_77); +lean_ctor_set(x_78, 1, x_75); +return x_78; +} +else +{ +lean_object* x_79; +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_12); +lean_ctor_set(x_79, 1, x_75); +return x_79; +} +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_alter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Std_HashMap_Raw_alter___rarg), 6, 0); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_modify___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6) { +_start: +{ +lean_object* x_7; lean_object* x_8; lean_object* x_9; uint8_t x_10; +x_7 = lean_ctor_get(x_4, 1); +lean_inc(x_7); +x_8 = lean_array_get_size(x_7); +lean_dec(x_7); +x_9 = lean_unsigned_to_nat(0u); +x_10 = lean_nat_dec_lt(x_9, x_8); +lean_dec(x_8); +if (x_10 == 0) +{ +lean_object* x_11; +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_1); +x_11 = l_Std_HashMap_Raw_instEmptyCollection___closed__3; +return x_11; +} +else +{ +lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint64_t x_16; uint64_t x_17; uint64_t x_18; uint64_t x_19; uint64_t x_20; uint64_t x_21; uint64_t x_22; size_t x_23; size_t x_24; size_t x_25; size_t x_26; size_t x_27; lean_object* x_28; uint8_t x_29; +x_12 = lean_ctor_get(x_4, 0); +lean_inc(x_12); +x_13 = lean_ctor_get(x_4, 1); +lean_inc(x_13); +x_14 = lean_array_get_size(x_13); +lean_inc(x_5); +x_15 = lean_apply_1(x_3, x_5); +x_16 = lean_unbox_uint64(x_15); +lean_dec(x_15); +x_17 = 32; +x_18 = lean_uint64_shift_right(x_16, x_17); +x_19 = lean_uint64_xor(x_16, x_18); +x_20 = 16; +x_21 = lean_uint64_shift_right(x_19, x_20); +x_22 = lean_uint64_xor(x_19, x_21); +x_23 = lean_uint64_to_usize(x_22); +x_24 = lean_usize_of_nat(x_14); +lean_dec(x_14); +x_25 = 1; +x_26 = lean_usize_sub(x_24, x_25); +x_27 = lean_usize_land(x_23, x_26); +x_28 = lean_array_uget(x_13, x_27); +lean_inc(x_28); +lean_inc(x_5); +lean_inc(x_1); +x_29 = l_Std_DHashMap_Internal_AssocList_contains___rarg(x_1, x_5, x_28); +if (x_29 == 0) +{ +lean_dec(x_28); +lean_dec(x_13); +lean_dec(x_12); +lean_dec(x_6); +lean_dec(x_5); +lean_dec(x_1); +return x_4; +} +else +{ +uint8_t x_30; +x_30 = !lean_is_exclusive(x_4); +if (x_30 == 0) +{ +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +x_31 = lean_ctor_get(x_4, 1); +lean_dec(x_31); +x_32 = lean_ctor_get(x_4, 0); +lean_dec(x_32); +x_33 = lean_box(0); +x_34 = lean_array_uset(x_13, x_27, x_33); +x_35 = l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(x_1, lean_box(0), x_5, x_6, x_28); +x_36 = lean_array_uset(x_34, x_27, x_35); +lean_ctor_set(x_4, 1, x_36); +return x_4; +} +else +{ +lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; +lean_dec(x_4); +x_37 = lean_box(0); +x_38 = lean_array_uset(x_13, x_27, x_37); +x_39 = l_Std_DHashMap_Internal_AssocList_Const_modify___rarg(x_1, lean_box(0), x_5, x_6, x_28); +x_40 = lean_array_uset(x_38, x_27, x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_12); +lean_ctor_set(x_41, 1, x_40); +return x_41; +} +} +} +} +} +LEAN_EXPORT lean_object* l_Std_HashMap_Raw_modify(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l_Std_HashMap_Raw_modify___rarg), 6, 0); +return x_3; +} +} LEAN_EXPORT lean_object* l_Array_mapMUnsafe_map___at_Std_HashMap_Raw_filterMap___spec__1___rarg(lean_object* x_1, size_t x_2, size_t x_3, lean_object* x_4) { _start: { diff --git a/stage0/stdlib/Std/Sat/AIG/Basic.c b/stage0/stdlib/Std/Sat/AIG/Basic.c index b6c1749bf3..48a905fe06 100644 --- a/stage0/stdlib/Std/Sat/AIG/Basic.c +++ b/stage0/stdlib/Std/Sat/AIG/Basic.c @@ -124,6 +124,7 @@ LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Sat_A static lean_object* l_Std_Sat_AIG_term_u27e6___x2c___u27e7___closed__19; LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_Sat_AIG_toGraphviz___spec__2___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGate___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_term_u27e6___x2c___u27e7___closed__9; uint64_t lean_uint64_shift_right(uint64_t, uint64_t); lean_object* l_Lean_SourceInfo_fromRef(lean_object*, uint8_t); @@ -165,6 +166,7 @@ LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f(lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_toGraphviz_toGraphvizString___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_term_u27e6___x2c___x2c___u27e7___closed__1; static lean_object* l_Std_Sat_AIG_term_u27e6___x2c___u27e7___closed__18; +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG___aux__Std__Sat__AIG__Basic______macroRules__Std__Sat__AIG__term_u27e6___x2c___u27e7__1___closed__15; static uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____rarg___closed__2; LEAN_EXPORT lean_object* l_Std_Sat_AIG_instDecidableEqDecl___rarg(lean_object*, lean_object*, lean_object*); @@ -182,6 +184,7 @@ uint8_t l_Lean_Syntax_matchesNull(lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG___aux__Std__Sat__AIG__Basic______macroRules__Std__Sat__AIG__term_u27e6___x2c___u27e7__1___closed__11; static lean_object* l_Std_Sat_AIG_empty___rarg___closed__1; LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Sat_AIG_toGraphviz_go___spec__4___rarg___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_Sat_AIG_isConstant___rarg(lean_object*, lean_object*, uint8_t); static lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_reprDecl____x40_Std_Sat_AIG_Basic___hyg_198____rarg___closed__1; static lean_object* l_Std_Sat_AIG___aux__Std__Sat__AIG__Basic______macroRules__Std__Sat__AIG__term_u27e6___x2c___x2c___u27e7__1___closed__7; static lean_object* l_Std_Sat_AIG_unexpandDenote___closed__18; @@ -236,6 +239,7 @@ LEAN_EXPORT lean_object* l_Std_Sat_AIG_toGraphviz___rarg___boxed(lean_object*, l LEAN_EXPORT lean_object* l_Std_Sat_AIG_denote___rarg___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkAtom(lean_object*); static lean_object* l_Std_Sat_AIG_term_u27e6___x2c___u27e7___closed__16; +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_unexpandDenote___closed__14; uint64_t lean_uint64_xor(uint64_t, uint64_t); static lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_reprDecl____x40_Std_Sat_AIG_Basic___hyg_198____rarg___closed__4; @@ -6203,6 +6207,80 @@ lean_dec(x_1); return x_6; } } +LEAN_EXPORT uint8_t l_Std_Sat_AIG_isConstant___rarg(lean_object* x_1, lean_object* x_2, uint8_t x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +x_5 = lean_array_fget(x_4, x_2); +if (lean_obj_tag(x_5) == 0) +{ +if (x_3 == 0) +{ +uint8_t x_6; +x_6 = lean_ctor_get_uint8(x_5, 0); +lean_dec(x_5); +if (x_6 == 0) +{ +uint8_t x_7; +x_7 = 1; +return x_7; +} +else +{ +uint8_t x_8; +x_8 = 0; +return x_8; +} +} +else +{ +uint8_t x_9; +x_9 = lean_ctor_get_uint8(x_5, 0); +lean_dec(x_5); +return x_9; +} +} +else +{ +uint8_t x_10; +lean_dec(x_5); +x_10 = 0; +return x_10; +} +} +} +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = lean_alloc_closure((void*)(l_Std_Sat_AIG_isConstant___rarg___boxed), 3, 0); +return x_4; +} +} +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_4 = lean_unbox(x_3); +lean_dec(x_3); +x_5 = l_Std_Sat_AIG_isConstant___rarg(x_1, x_2, x_4); +lean_dec(x_2); +lean_dec(x_1); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +lean_object* x_4; +x_4 = l_Std_Sat_AIG_isConstant(x_1, x_2, x_3); +lean_dec(x_3); +lean_dec(x_2); +return x_4; +} +} lean_object* initialize_Std_Data_HashSet(uint8_t builtin, lean_object*); static bool _G_initialized = false; LEAN_EXPORT lean_object* initialize_Std_Sat_AIG_Basic(uint8_t builtin, lean_object* w) { diff --git a/stage0/stdlib/Std/Sat/AIG/Lemmas.c b/stage0/stdlib/Std/Sat/AIG/Lemmas.c index 35bf19ddd0..cb0e31bedb 100644 --- a/stage0/stdlib/Std/Sat/AIG/Lemmas.c +++ b/stage0/stdlib/Std/Sat/AIG/Lemmas.c @@ -14,7 +14,9 @@ extern "C" { #endif LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_toGraphviz_go_match__1_splitter(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_isConstant_match__1_splitter(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_toGraphviz_go_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_isConstant_match__1_splitter___rarg(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_toGraphviz_go_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { @@ -69,6 +71,36 @@ x_3 = lean_alloc_closure((void*)(l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_t return x_3; } } +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_isConstant_match__1_splitter___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +if (lean_obj_tag(x_1) == 0) +{ +uint8_t x_4; lean_object* x_5; lean_object* x_6; +lean_dec(x_3); +x_4 = lean_ctor_get_uint8(x_1, 0); +lean_dec(x_1); +x_5 = lean_box(x_4); +x_6 = lean_apply_1(x_2, x_5); +return x_6; +} +else +{ +lean_object* x_7; +lean_dec(x_2); +x_7 = lean_apply_2(x_3, x_1, lean_box(0)); +return x_7; +} +} +} +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_isConstant_match__1_splitter(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_alloc_closure((void*)(l___private_Std_Sat_AIG_Lemmas_0__Std_Sat_AIG_isConstant_match__1_splitter___rarg), 3, 0); +return x_3; +} +} lean_object* initialize_Std_Sat_AIG_Basic(uint8_t builtin, lean_object*); lean_object* initialize_Std_Sat_AIG_LawfulOperator(uint8_t builtin, lean_object*); static bool _G_initialized = false; diff --git a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl.c b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl.c index b29681c9a7..1575eb136a 100644 --- a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl.c +++ b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl.c @@ -15,26 +15,26 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_ofBoolExprCached_go___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__4(lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3(lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__2; -lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object*, uint8_t); -lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); lean_object* l_Nat_nextPowerOfTwo_go(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3___closed__1; -lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3___closed__2; -lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object*, uint8_t); +lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__2___closed__2; lean_object* l_Std_Tactic_BVDecide_instDecidableEqBVBit___boxed(lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__2___closed__1; +lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_ofBoolExprCached___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__1(lean_object*); -lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_BVPred_bitblast(lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); +lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVLogicalExpr_bitblast(lean_object*); lean_object* l_Std_Sat_AIG_mkBEqCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__9(lean_object*, lean_object*); static lean_object* l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3___closed__3; +lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3___boxed(lean_object*); static lean_object* _init_l_Std_Sat_AIG_Cache_empty___at_Std_Tactic_BVDecide_BVLogicalExpr_bitblast___spec__3___closed__1() { _start: @@ -123,7 +123,7 @@ case 1: uint8_t x_5; lean_object* x_6; x_5 = lean_ctor_get_uint8(x_2, 0); lean_dec(x_2); -x_6 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_5); +x_6 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_5); return x_6; } case 2: @@ -138,7 +138,7 @@ lean_inc(x_9); x_10 = lean_ctor_get(x_8, 1); lean_inc(x_10); lean_dec(x_8); -x_11 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_9, x_10); +x_11 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(x_9, x_10); return x_11; } case 3: @@ -167,13 +167,13 @@ switch (x_12) { case 0: { lean_object* x_21; -x_21 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_20, x_18); +x_21 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_20, x_18); return x_21; } case 1: { lean_object* x_22; -x_22 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_20, x_18); +x_22 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_20, x_18); return x_22; } case 2: @@ -185,7 +185,7 @@ return x_23; default: { lean_object* x_24; -x_24 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_20, x_18); +x_24 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_20, x_18); return x_24; } } @@ -205,13 +205,13 @@ switch (x_12) { case 0: { lean_object* x_28; -x_28 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_25, x_27); +x_28 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_25, x_27); return x_28; } case 1: { lean_object* x_29; -x_29 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_25, x_27); +x_29 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_25, x_27); return x_29; } case 2: @@ -223,7 +223,7 @@ return x_30; default: { lean_object* x_31; -x_31 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_25, x_27); +x_31 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_25, x_27); return x_31; } } @@ -261,7 +261,7 @@ lean_ctor_set_tag(x_2, 0); lean_ctor_set(x_2, 2, x_44); lean_ctor_set(x_2, 1, x_41); lean_ctor_set(x_2, 0, x_38); -x_45 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(x_43, x_2); +x_45 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_43, x_2); return x_45; } else @@ -296,7 +296,7 @@ x_58 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_58, 0, x_51); lean_ctor_set(x_58, 1, x_54); lean_ctor_set(x_58, 2, x_57); -x_59 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(x_56, x_58); +x_59 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_56, x_58); return x_59; } } diff --git a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.c b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.c index bf52fe22ea..43a9dc1803 100644 --- a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.c +++ b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Expr.c @@ -14,6 +14,7 @@ extern "C" { #endif LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateRight___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__28___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRight_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__42(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastReplicate___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__33___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_map___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__18(lean_object*, lean_object*, lean_object*); @@ -21,13 +22,9 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateRight_ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastNot___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__17___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_zip___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__5___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_zip___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__5(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSignExtend___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__35___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object*, uint8_t); -lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__27___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkOverflowBit_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__22___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_go___closed__1; @@ -39,18 +36,16 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVPred_mkEq___at_Std_Tactic_BVDec LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__10(lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastUdiv_blastShiftConcat___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__14___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastUdiv_blastShiftConcat___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__14(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAppend___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__32(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object*, lean_object*); -lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object*, uint8_t); static lean_object* l_Std_Tactic_BVDecide_BVPred_mkEq___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__8___closed__1; LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__31(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRight___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__40___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastVar(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_fold_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__11(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeft___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__37___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastUdiv_blastDivSubtractShift___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__13___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_fold_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__11___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__26___boxed(lean_object*, lean_object*, lean_object*); @@ -61,6 +56,7 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSub___at_Std static lean_object* l_Std_Tactic_BVDecide_BVPred_mkEq___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__8___closed__2; lean_object* l_BitVec_ofNat(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastUdiv_blastDivSubtractShift___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__13(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__30___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVPred_mkUlt___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__20(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastZeroExtend___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__1(lean_object*, lean_object*, lean_object*); @@ -69,9 +65,9 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft_g LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastReplicate___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__33(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAppend___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__32___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_instDecidableEqBVBit___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastNeg___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__16___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastReplicate_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__34(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRightConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__24(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_map_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__19(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -80,6 +76,7 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRightCo LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSignExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__36___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRight_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__42___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRight___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__43(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastExtract_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRight_twoPowShift___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__44(lean_object*, lean_object*, lean_object*); lean_object* l_Array_append___rarg(lean_object*, lean_object*); @@ -99,9 +96,9 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeft_tw lean_object* lean_nat_mod(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastZeroExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeft_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__39(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_map___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__18___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__26(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__30(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRightConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__24___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastExtract___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__3(lean_object*, lean_object*, lean_object*); @@ -113,6 +110,7 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeft_tw lean_object* lean_nat_mul(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastNeg___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__16(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRight_twoPowShift___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__44___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__31___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateRight_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__29___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -121,14 +119,16 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSignExtend_g LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRight___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__40(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastUdiv___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__7(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRight_twoPowShift___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__41___boxed(lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSub___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__15___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_zip_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__6___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastZeroExtend___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkBEqCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__9(lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastExtract___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__3___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object*); +lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastReplicate_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__34___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_map_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__19___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* _init_l_Std_Tactic_BVDecide_BVExpr_bitblast_blastZeroExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__2___closed__1() { _start: @@ -160,7 +160,7 @@ if (x_10 == 0) { uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; x_11 = 0; -x_12 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_11); +x_12 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_11); x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); x_14 = lean_ctor_get(x_12, 1); @@ -198,7 +198,7 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_4 = lean_ctor_get(x_3, 0); x_5 = lean_ctor_get(x_3, 1); -x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_7 = lean_unsigned_to_nat(0u); x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastZeroExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__2(x_2, x_4, x_5, x_1, x_7, lean_box(0), x_6); return x_8; @@ -256,14 +256,14 @@ x_4 = lean_ctor_get(x_3, 0); x_5 = lean_ctor_get(x_3, 1); x_6 = lean_ctor_get(x_3, 2); x_7 = 0; -x_8 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_2, x_7); +x_8 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_2, x_7); x_9 = !lean_is_exclusive(x_8); if (x_9 == 0) { lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; x_10 = lean_ctor_get(x_8, 0); x_11 = lean_ctor_get(x_8, 1); -x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_10); +x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_10); x_13 = lean_unsigned_to_nat(0u); x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastExtract_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__4(x_1, x_10, x_4, x_5, x_6, x_11, x_13, lean_box(0), x_12); lean_ctor_set(x_8, 1, x_14); @@ -277,7 +277,7 @@ x_16 = lean_ctor_get(x_8, 1); lean_inc(x_16); lean_inc(x_15); lean_dec(x_8); -x_17 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_15); +x_17 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_15); x_18 = lean_unsigned_to_nat(0u); x_19 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastExtract_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__4(x_1, x_15, x_4, x_5, x_6, x_16, x_18, lean_box(0), x_17); x_20 = lean_alloc_ctor(0, 2, 0); @@ -335,7 +335,7 @@ LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_zip___at_Std_Tactic_BVDecide_BVExp _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_5 = lean_ctor_get(x_3, 0); lean_inc(x_5); x_6 = lean_ctor_get(x_5, 0); @@ -374,7 +374,7 @@ lean_ctor_set(x_9, 0, x_5); lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_8); lean_ctor_set(x_2, 1, x_9); lean_ctor_set(x_2, 0, x_7); -x_10 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_2); +x_10 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); @@ -389,7 +389,7 @@ lean_ctor_set_uint8(x_14, sizeof(void*)*1, x_6); x_15 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); -x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_11, x_15); +x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_11, x_15); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -404,7 +404,7 @@ lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_8); x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_19); lean_ctor_set(x_21, 1, x_20); -x_22 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_17, x_21); +x_22 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_17, x_21); return x_22; } else @@ -428,7 +428,7 @@ lean_ctor_set_uint8(x_28, sizeof(void*)*1, x_27); x_29 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_29, 0, x_26); lean_ctor_set(x_29, 1, x_28); -x_30 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_29); +x_30 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_29); x_31 = lean_ctor_get(x_30, 0); lean_inc(x_31); x_32 = lean_ctor_get(x_30, 1); @@ -443,7 +443,7 @@ lean_ctor_set_uint8(x_34, sizeof(void*)*1, x_25); x_35 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_35, 0, x_33); lean_ctor_set(x_35, 1, x_34); -x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_31, x_35); +x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_31, x_35); x_37 = lean_ctor_get(x_36, 0); lean_inc(x_37); x_38 = lean_ctor_get(x_36, 1); @@ -458,7 +458,7 @@ lean_ctor_set_uint8(x_40, sizeof(void*)*1, x_27); x_41 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_41, 0, x_39); lean_ctor_set(x_41, 1, x_40); -x_42 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_37, x_41); +x_42 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_37, x_41); return x_42; } } @@ -510,7 +510,7 @@ _start: uint8_t x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; x_3 = 1; lean_inc(x_1); -x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_3); +x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); x_6 = lean_ctor_get(x_4, 1); @@ -540,7 +540,7 @@ static lean_object* _init_l_Std_Tactic_BVDecide_BVPred_mkEq___at_Std_Tactic_BVDe _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26), 2, 0); return x_1; } } @@ -577,7 +577,7 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_5 = lean_ctor_get(x_3, 0); x_6 = lean_ctor_get(x_3, 1); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(1u); x_9 = lean_nat_add(x_8, x_1); x_10 = lean_array_push(x_7, x_6); @@ -597,7 +597,7 @@ x_14 = lean_ctor_get(x_3, 1); lean_inc(x_14); lean_inc(x_13); lean_dec(x_3); -x_15 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_15 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_16 = lean_unsigned_to_nat(1u); x_17 = lean_nat_add(x_16, x_1); x_18 = lean_array_push(x_15, x_14); @@ -656,7 +656,7 @@ LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_map___at_Std_Tactic_BVDecide_BVExp _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; -x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_5 = lean_ctor_get(x_3, 0); lean_inc(x_5); x_6 = lean_unsigned_to_nat(0u); @@ -671,7 +671,7 @@ static lean_object* _init_l_Std_Tactic_BVDecide_BVExpr_bitblast_blastNot___at_St _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31), 2, 0); return x_1; } } @@ -707,7 +707,7 @@ if (x_10 == 0) lean_object* x_11; lean_object* x_12; x_11 = lean_ctor_get(x_9, 0); lean_ctor_set(x_9, 0, x_6); -x_12 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_11, x_9); +x_12 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_11, x_9); lean_dec(x_9); return x_12; } @@ -722,7 +722,7 @@ lean_dec(x_9); x_15 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_15, 0, x_6); lean_ctor_set(x_15, 1, x_14); -x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_13, x_15); +x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_13, x_15); lean_dec(x_15); return x_16; } @@ -744,7 +744,7 @@ x_8 = lean_ctor_get(x_6, 1); lean_inc(x_8); lean_dec(x_6); lean_ctor_set(x_3, 1, x_8); -x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_7, x_3); +x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_7, x_3); lean_dec(x_3); return x_9; } @@ -765,7 +765,7 @@ lean_dec(x_12); x_15 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_15, 0, x_10); lean_ctor_set(x_15, 1, x_14); -x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_13, x_15); +x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_13, x_15); lean_dec(x_15); return x_16; } @@ -797,7 +797,7 @@ x_13 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_13, 0, x_11); lean_ctor_set(x_13, 1, x_12); lean_ctor_set(x_13, 2, x_6); -x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(x_2, x_13); +x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_2, x_13); lean_dec(x_13); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); @@ -851,7 +851,7 @@ x_8 = lean_ctor_get(x_6, 1); lean_inc(x_8); lean_dec(x_6); x_9 = 1; -x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_7, x_9); +x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_7, x_9); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); @@ -868,7 +868,7 @@ lean_inc(x_15); x_16 = lean_ctor_get(x_14, 1); lean_inc(x_16); lean_dec(x_14); -x_17 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_15, x_16); +x_17 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(x_15, x_16); return x_17; } else @@ -886,7 +886,7 @@ x_22 = lean_ctor_get(x_20, 1); lean_inc(x_22); lean_dec(x_20); x_23 = 1; -x_24 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_21, x_23); +x_24 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_21, x_23); x_25 = lean_ctor_get(x_24, 0); lean_inc(x_25); x_26 = lean_ctor_get(x_24, 1); @@ -905,7 +905,7 @@ lean_inc(x_30); x_31 = lean_ctor_get(x_29, 1); lean_inc(x_31); lean_dec(x_29); -x_32 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_30, x_31); +x_32 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(x_30, x_31); return x_32; } } @@ -989,7 +989,7 @@ x_36 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_36, 0, x_35); lean_ctor_set(x_36, 1, x_24); lean_ctor_set(x_36, 2, x_27); -x_37 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_34, x_36); +x_37 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_34, x_36); x_38 = lean_ctor_get(x_37, 0); lean_inc(x_38); x_39 = lean_ctor_get(x_37, 1); @@ -999,7 +999,7 @@ x_40 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_40, 0, x_35); lean_ctor_set(x_40, 1, x_20); lean_ctor_set(x_40, 2, x_31); -x_41 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_38, x_40); +x_41 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_38, x_40); lean_dec(x_1); x_42 = lean_ctor_get(x_41, 0); lean_inc(x_42); @@ -1058,7 +1058,7 @@ x_59 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_59, 0, x_58); lean_ctor_set(x_59, 1, x_46); lean_ctor_set(x_59, 2, x_50); -x_60 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_57, x_59); +x_60 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_57, x_59); x_61 = lean_ctor_get(x_60, 0); lean_inc(x_61); x_62 = lean_ctor_get(x_60, 1); @@ -1068,7 +1068,7 @@ x_63 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_63, 0, x_58); lean_ctor_set(x_63, 1, x_20); lean_ctor_set(x_63, 2, x_54); -x_64 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_61, x_63); +x_64 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_61, x_63); lean_dec(x_1); x_65 = lean_ctor_get(x_64, 0); lean_inc(x_65); @@ -1149,7 +1149,7 @@ x_87 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_87, 0, x_86); lean_ctor_set(x_87, 1, x_73); lean_ctor_set(x_87, 2, x_78); -x_88 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_85, x_87); +x_88 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_85, x_87); x_89 = lean_ctor_get(x_88, 0); lean_inc(x_89); x_90 = lean_ctor_get(x_88, 1); @@ -1159,7 +1159,7 @@ x_91 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_91, 0, x_86); lean_ctor_set(x_91, 1, x_69); lean_ctor_set(x_91, 2, x_82); -x_92 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_89, x_91); +x_92 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_89, x_91); lean_dec(x_1); x_93 = lean_ctor_get(x_92, 0); lean_inc(x_93); @@ -1259,14 +1259,14 @@ x_8 = lean_ctor_get(x_6, 1); lean_inc(x_8); lean_dec(x_6); x_9 = 0; -x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_7, x_9); +x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_7, x_9); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); lean_inc(x_12); lean_dec(x_10); x_13 = 1; -x_14 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_11, x_13); +x_14 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_11, x_13); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_ctor_get(x_14, 1); @@ -1302,7 +1302,7 @@ x_26 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_26, 0, x_22); lean_ctor_set(x_26, 1, x_8); lean_ctor_set(x_26, 2, x_25); -x_27 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_24, x_26); +x_27 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_24, x_26); lean_dec(x_1); return x_27; } @@ -1339,7 +1339,7 @@ x_37 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_37, 0, x_33); lean_ctor_set(x_37, 1, x_8); lean_ctor_set(x_37, 2, x_36); -x_38 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_35, x_37); +x_38 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_35, x_37); lean_dec(x_1); return x_38; } @@ -1359,14 +1359,14 @@ x_8 = lean_ctor_get(x_6, 1); lean_inc(x_8); lean_dec(x_6); x_9 = 0; -x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_7, x_9); +x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_7, x_9); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); lean_inc(x_12); lean_dec(x_10); x_13 = 1; -x_14 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_11, x_13); +x_14 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_11, x_13); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_ctor_get(x_14, 1); @@ -1401,7 +1401,7 @@ x_26 = lean_ctor_get(x_23, 1); lean_dec(x_26); lean_ctor_set(x_23, 1, x_18); lean_ctor_set(x_23, 0, x_22); -x_27 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_25, x_23); +x_27 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_25, x_23); lean_dec(x_1); return x_27; } @@ -1417,7 +1417,7 @@ x_30 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_30, 0, x_22); lean_ctor_set(x_30, 1, x_18); lean_ctor_set(x_30, 2, x_29); -x_31 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_28, x_30); +x_31 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_28, x_30); lean_dec(x_1); return x_31; } @@ -1466,7 +1466,7 @@ if (lean_is_scalar(x_41)) { lean_ctor_set(x_42, 0, x_37); lean_ctor_set(x_42, 1, x_32); lean_ctor_set(x_42, 2, x_40); -x_43 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_39, x_42); +x_43 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_39, x_42); lean_dec(x_1); return x_43; } @@ -1496,7 +1496,7 @@ if (x_11 == 0) uint8_t x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_dec(x_10); x_12 = 0; -x_13 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_2, x_12); +x_13 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_2, x_12); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); x_15 = lean_ctor_get(x_13, 1); @@ -1535,7 +1535,7 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_4 = lean_ctor_get(x_3, 0); x_5 = lean_ctor_get(x_3, 1); -x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_7 = lean_unsigned_to_nat(0u); x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftRightConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__25(x_1, x_2, x_4, x_5, x_7, lean_box(0), x_6); return x_8; @@ -1603,7 +1603,7 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_5 = lean_ctor_get(x_3, 0); x_6 = lean_ctor_get(x_3, 1); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(0u); x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__27(x_1, x_2, x_5, x_6, x_8, lean_box(0), x_7); lean_dec(x_6); @@ -1620,7 +1620,7 @@ x_11 = lean_ctor_get(x_3, 1); lean_inc(x_11); lean_inc(x_10); lean_dec(x_3); -x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_13 = lean_unsigned_to_nat(0u); x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateLeft_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__27(x_1, x_2, x_10, x_11, x_13, lean_box(0), x_12); lean_dec(x_11); @@ -1695,7 +1695,7 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_5 = lean_ctor_get(x_3, 0); x_6 = lean_ctor_get(x_3, 1); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(0u); x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateRight_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__29(x_1, x_2, x_5, x_6, x_8, lean_box(0), x_7); lean_dec(x_6); @@ -1712,7 +1712,7 @@ x_11 = lean_ctor_get(x_3, 1); lean_inc(x_11); lean_inc(x_10); lean_dec(x_3); -x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_13 = lean_unsigned_to_nat(0u); x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastRotateRight_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__29(x_1, x_2, x_10, x_11, x_13, lean_box(0), x_12); lean_dec(x_11); @@ -1782,7 +1782,7 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; x_5 = lean_ctor_get(x_3, 0); x_6 = lean_ctor_get(x_3, 1); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(0u); x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__31(x_1, x_2, x_5, x_6, x_8, lean_box(0), x_7); lean_dec(x_6); @@ -1799,7 +1799,7 @@ x_11 = lean_ctor_get(x_3, 1); lean_inc(x_11); lean_inc(x_10); lean_dec(x_3); -x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_12 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_13 = lean_unsigned_to_nat(0u); x_14 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastArithShiftRightConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__31(x_1, x_2, x_10, x_11, x_13, lean_box(0), x_12); lean_dec(x_11); @@ -1859,7 +1859,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_obj x_4 = lean_ctor_get(x_3, 0); x_5 = lean_ctor_get(x_3, 1); x_6 = lean_ctor_get(x_3, 2); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(0u); x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastReplicate_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__34(x_2, x_4, x_5, x_6, x_8, lean_box(0), x_7); x_10 = lean_alloc_ctor(0, 2, 0); @@ -1931,7 +1931,7 @@ if (x_8 == 0) { lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_free_object(x_3); -x_9 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_9 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_10 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSignExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__36(x_2, x_5, lean_box(0), x_6, x_1, x_7, lean_box(0), x_9); lean_dec(x_6); lean_dec(x_5); @@ -1961,7 +1961,7 @@ x_16 = lean_nat_dec_eq(x_13, x_15); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_17 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_17 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_18 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastSignExtend_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__36(x_2, x_13, lean_box(0), x_14, x_1, x_15, lean_box(0), x_17); lean_dec(x_14); lean_dec(x_13); @@ -2010,7 +2010,7 @@ lean_inc(x_5); x_12 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_12, 0, x_5); lean_ctor_set(x_12, 1, x_11); -x_13 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_2, x_12); +x_13 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1, x_2, x_12); lean_dec(x_12); x_14 = lean_ctor_get(x_13, 0); lean_inc(x_14); @@ -2023,7 +2023,7 @@ x_17 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); lean_ctor_set(x_17, 2, x_5); -x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_14, x_17); +x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_14, x_17); return x_18; } } @@ -2159,7 +2159,7 @@ x_17 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); lean_ctor_set(x_17, 2, x_5); -x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_14, x_17); +x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_14, x_17); return x_18; } } @@ -2294,7 +2294,7 @@ x_17 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_17, 0, x_16); lean_ctor_set(x_17, 1, x_15); lean_ctor_set(x_17, 2, x_5); -x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_14, x_17); +x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_14, x_17); return x_18; } } @@ -2394,7 +2394,7 @@ static lean_object* _init_l_Std_Tactic_BVDecide_BVExpr_bitblast_go___closed__1() _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27), 2, 0); return x_1; } } @@ -2402,7 +2402,7 @@ static lean_object* _init_l_Std_Tactic_BVDecide_BVExpr_bitblast_go___closed__2() _start: { lean_object* x_1; -x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20), 2, 0); +x_1 = lean_alloc_closure((void*)(l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21), 2, 0); return x_1; } } @@ -2629,7 +2629,7 @@ if (x_61 == 0) lean_object* x_62; lean_object* x_63; x_62 = lean_ctor_get(x_33, 0); lean_ctor_set(x_33, 0, x_32); -x_63 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_62, x_33); +x_63 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_62, x_33); lean_dec(x_33); lean_dec(x_1); return x_63; @@ -2645,7 +2645,7 @@ lean_dec(x_33); x_66 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_66, 0, x_32); lean_ctor_set(x_66, 1, x_65); -x_67 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_64, x_66); +x_67 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_64, x_66); lean_dec(x_66); lean_dec(x_1); return x_67; @@ -2862,7 +2862,7 @@ if (lean_is_scalar(x_115)) { } lean_ctor_set(x_116, 0, x_90); lean_ctor_set(x_116, 1, x_114); -x_117 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_113, x_116); +x_117 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_113, x_116); lean_dec(x_116); lean_dec(x_1); return x_117; @@ -2983,7 +2983,7 @@ lean_inc(x_142); lean_dec(x_133); lean_ctor_set(x_135, 1, x_142); lean_ctor_set(x_135, 0, x_141); -x_143 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_140, x_135); +x_143 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1, x_140, x_135); lean_dec(x_135); lean_dec(x_1); return x_143; @@ -3002,7 +3002,7 @@ lean_dec(x_133); x_147 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_147, 0, x_145); lean_ctor_set(x_147, 1, x_146); -x_148 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_144, x_147); +x_148 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1, x_144, x_147); lean_dec(x_147); lean_dec(x_1); return x_148; diff --git a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.c b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.c index 39cc7ba449..9f986c4666 100644 --- a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.c +++ b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Operations/Mul.c @@ -13,111 +13,156 @@ #ifdef __cplusplus extern "C" { #endif +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2(lean_object*, lean_object*, size_t, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__2(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); uint64_t lean_uint64_of_nat(lean_object*); uint64_t lean_uint64_mix_hash(uint64_t, uint64_t); size_t lean_uint64_to_usize(uint64_t); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(lean_object*); lean_object* lean_array_push(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_array(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25___boxed(lean_object*, lean_object*); uint8_t lean_usize_dec_eq(size_t, size_t); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_fset(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__1___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object*, uint8_t); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(lean_object*); static lean_object* l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2___closed__1; -static lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___closed__1; LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_countKnown___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__1___rarg___boxed(lean_object*, lean_object*); uint64_t l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Basic_0__Std_Tactic_BVDecide_hashBVBit____x40_Std_Tactic_BVDecide_Bitblast_BVExpr_Basic___hyg_35_(lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__1(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_countKnown___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__1___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28___boxed(lean_object*, lean_object*, lean_object*); size_t lean_usize_of_nat(lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object*, uint8_t); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(lean_object*, lean_object*); uint64_t lean_uint64_shift_right(uint64_t, uint64_t); lean_object* lean_nat_div(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(lean_object*, lean_object*); -static lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1; +LEAN_EXPORT uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(lean_object*); lean_object* l_BitVec_ofNat(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11___boxed(lean_object*, lean_object*); lean_object* l_outOfBounds___rarg(lean_object*); -LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___boxed(lean_object*, lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_instDecidableEqBVBit___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +static lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___closed__1; LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(lean_object*); uint8_t l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Basic_0__Std_Tactic_BVDecide_decEqBVBit____x40_Std_Tactic_BVDecide_Bitblast_BVExpr_Basic___hyg_85_(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(lean_object*, lean_object*, lean_object*); -static uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__2; -LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___boxed(lean_object*); -LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8___boxed(lean_object*, lean_object*); +static uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__1; uint8_t l_Nat_testBit(lean_object*, lean_object*); uint8_t lean_nat_dec_eq(lean_object*, lean_object*); uint8_t lean_nat_dec_lt(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object*, lean_object*); -LEAN_EXPORT uint8_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object*, lean_object*); +static uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__2; +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17___boxed(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___boxed(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9___boxed(lean_object*, lean_object*); uint64_t lean_uint64_xor(uint64_t, uint64_t); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_countKnown___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__1___rarg(lean_object*, lean_object*); lean_object* lean_nat_mul(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___boxed(lean_object*, lean_object*, lean_object*); size_t lean_usize_sub(size_t, size_t); lean_object* lean_array_mk(lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg___boxed(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(lean_object*, lean_object*); size_t lean_usize_add(size_t, size_t); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_array_uget(lean_object*, size_t); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16___boxed(lean_object*, lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg(lean_object*, lean_object*, lean_object*); lean_object* lean_array_get_size(lean_object*); +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14(lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(lean_object*); uint8_t lean_nat_dec_le(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); -static uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__1; +static lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1; +LEAN_EXPORT uint8_t l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(lean_object*, lean_object*, uint8_t); lean_object* lean_nat_add(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(lean_object*, lean_object*); lean_object* lean_array_uset(lean_object*, size_t, lean_object*); +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_countKnown___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__1(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(lean_object*, lean_object*, lean_object*); size_t lean_usize_land(size_t, size_t); -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object*); -static lean_object* _init_l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1() { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg___boxed(lean_object*, lean_object*); +LEAN_EXPORT uint8_t l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(lean_object* x_1, lean_object* x_2, uint8_t x_3) { +_start: +{ +lean_object* x_4; lean_object* x_5; +x_4 = lean_ctor_get(x_1, 0); +x_5 = lean_array_fget(x_4, x_2); +if (lean_obj_tag(x_5) == 0) +{ +if (x_3 == 0) +{ +uint8_t x_6; +x_6 = lean_ctor_get_uint8(x_5, 0); +lean_dec(x_5); +if (x_6 == 0) +{ +uint8_t x_7; +x_7 = 1; +return x_7; +} +else +{ +uint8_t x_8; +x_8 = 0; +return x_8; +} +} +else +{ +uint8_t x_9; +x_9 = lean_ctor_get_uint8(x_5, 0); +lean_dec(x_5); +return x_9; +} +} +else +{ +uint8_t x_10; +lean_dec(x_5); +x_10 = 0; +return x_10; +} +} +} +static lean_object* _init_l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1() { _start: { lean_object* x_1; lean_object* x_2; @@ -126,15 +171,15 @@ x_2 = lean_array_mk(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1; +x_2 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1; return x_2; } } -static uint64_t _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__1() { +static uint64_t _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__1() { _start: { uint64_t x_1; uint64_t x_2; uint64_t x_3; @@ -144,7 +189,7 @@ x_3 = lean_uint64_mix_hash(x_1, x_2); return x_3; } } -static uint64_t _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__2() { +static uint64_t _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__2() { _start: { uint64_t x_1; uint64_t x_2; uint64_t x_3; @@ -154,7 +199,7 @@ x_3 = lean_uint64_mix_hash(x_1, x_2); return x_3; } } -LEAN_EXPORT uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(lean_object* x_1) { +LEAN_EXPORT uint64_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(lean_object* x_1) { _start: { switch (lean_obj_tag(x_1)) { @@ -165,13 +210,13 @@ x_2 = lean_ctor_get_uint8(x_1, 0); if (x_2 == 0) { uint64_t x_3; -x_3 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__1; +x_3 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__1; return x_3; } else { uint64_t x_4; -x_4 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__2; +x_4 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__2; return x_4; } } @@ -238,7 +283,7 @@ return x_27; } } } -LEAN_EXPORT uint8_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(lean_object* x_1, lean_object* x_2) { _start: { switch (lean_obj_tag(x_1)) { @@ -396,7 +441,7 @@ return x_33; } } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_2) == 0) @@ -411,7 +456,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; x_4 = lean_ctor_get(x_2, 0); x_5 = lean_ctor_get(x_2, 1); x_6 = lean_ctor_get(x_2, 2); -x_7 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_4, x_1); +x_7 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_1); if (x_7 == 0) { x_2 = x_6; @@ -428,13 +473,13 @@ return x_9; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; uint64_t x_5; uint64_t x_6; uint64_t x_7; uint64_t x_8; uint64_t x_9; uint64_t x_10; uint64_t x_11; size_t x_12; size_t x_13; size_t x_14; size_t x_15; size_t x_16; lean_object* x_17; lean_object* x_18; x_3 = lean_ctor_get(x_1, 1); x_4 = lean_array_get_size(x_3); -x_5 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_2); +x_5 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_2); x_6 = 32; x_7 = lean_uint64_shift_right(x_5, x_6); x_8 = lean_uint64_xor(x_5, x_7); @@ -448,7 +493,7 @@ x_14 = 1; x_15 = lean_usize_sub(x_13, x_14); x_16 = lean_usize_land(x_12, x_15); x_17 = lean_array_uget(x_3, x_16); -x_18 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_2, x_17); +x_18 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_2, x_17); lean_dec(x_17); if (lean_obj_tag(x_18) == 0) { @@ -477,15 +522,15 @@ return x_22; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg___boxed), 2, 0); +x_2 = lean_alloc_closure((void*)(l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg___boxed), 2, 0); return x_2; } } -LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT uint8_t l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_2) == 0) @@ -499,7 +544,7 @@ else lean_object* x_4; lean_object* x_5; uint8_t x_6; x_4 = lean_ctor_get(x_2, 0); x_5 = lean_ctor_get(x_2, 2); -x_6 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_4, x_1); +x_6 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_1); if (x_6 == 0) { x_2 = x_5; @@ -514,7 +559,7 @@ return x_8; } } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -597,7 +642,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(lean_object* x_1, lean_object* x_2) { _start: { if (lean_obj_tag(x_2) == 0) @@ -614,7 +659,7 @@ lean_object* x_4; lean_object* x_5; lean_object* x_6; uint64_t x_7; uint64_t x_8 x_4 = lean_ctor_get(x_2, 0); x_5 = lean_ctor_get(x_2, 2); x_6 = lean_array_get_size(x_1); -x_7 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_4); +x_7 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_4); x_8 = 32; x_9 = lean_uint64_shift_right(x_7, x_8); x_10 = lean_uint64_xor(x_7, x_9); @@ -645,7 +690,7 @@ lean_inc(x_23); lean_inc(x_22); lean_dec(x_2); x_25 = lean_array_get_size(x_1); -x_26 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_22); +x_26 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_22); x_27 = 32; x_28 = lean_uint64_shift_right(x_26, x_27); x_29 = lean_uint64_xor(x_26, x_28); @@ -671,7 +716,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; @@ -690,7 +735,7 @@ lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_obj x_6 = lean_array_fget(x_2, x_1); x_7 = lean_box(0); x_8 = lean_array_fset(x_2, x_1, x_7); -x_9 = l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14(x_3, x_6); +x_9 = l_Std_DHashMap_Internal_AssocList_foldlM___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__14___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(x_3, x_6); x_10 = lean_unsigned_to_nat(1u); x_11 = lean_nat_add(x_1, x_10); lean_dec(x_1); @@ -701,7 +746,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; @@ -712,11 +757,11 @@ lean_dec(x_2); x_5 = lean_box(0); x_6 = lean_mk_array(x_4, x_5); x_7 = lean_unsigned_to_nat(0u); -x_8 = l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(x_7, x_1, x_6); +x_8 = l_Std_DHashMap_Internal_Raw_u2080_expand_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__13(x_7, x_1, x_6); return x_8; } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { if (lean_obj_tag(x_3) == 0) @@ -737,11 +782,11 @@ lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; x_6 = lean_ctor_get(x_3, 0); x_7 = lean_ctor_get(x_3, 1); x_8 = lean_ctor_get(x_3, 2); -x_9 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_6, x_1); +x_9 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_6, x_1); if (x_9 == 0) { lean_object* x_10; -x_10 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(x_1, x_2, x_8); +x_10 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_2, x_8); lean_ctor_set(x_3, 2, x_10); return x_3; } @@ -764,11 +809,11 @@ lean_inc(x_13); lean_inc(x_12); lean_inc(x_11); lean_dec(x_3); -x_14 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_11, x_1); +x_14 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_11, x_1); if (x_14 == 0) { lean_object* x_15; lean_object* x_16; -x_15 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(x_1, x_2, x_13); +x_15 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_2, x_13); x_16 = lean_alloc_ctor(1, 3, 0); lean_ctor_set(x_16, 0, x_11); lean_ctor_set(x_16, 1, x_12); @@ -790,7 +835,7 @@ return x_17; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; uint8_t x_5; @@ -802,7 +847,7 @@ lean_object* x_6; lean_object* x_7; lean_object* x_8; uint64_t x_9; uint64_t x_1 x_6 = lean_ctor_get(x_2, 0); x_7 = lean_ctor_get(x_2, 1); x_8 = lean_array_get_size(x_7); -x_9 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_3); +x_9 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_3); x_10 = 32; x_11 = lean_uint64_shift_right(x_9, x_10); x_12 = lean_uint64_xor(x_9, x_11); @@ -816,7 +861,7 @@ x_18 = 1; x_19 = lean_usize_sub(x_17, x_18); x_20 = lean_usize_land(x_16, x_19); x_21 = lean_array_uget(x_7, x_20); -x_22 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_3, x_21); +x_22 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(x_3, x_21); if (x_22 == 0) { lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; uint8_t x_32; @@ -840,7 +885,7 @@ lean_dec(x_30); if (x_32 == 0) { lean_object* x_33; -x_33 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(x_26); +x_33 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(x_26); lean_ctor_set(x_2, 1, x_33); lean_ctor_set(x_2, 0, x_24); return x_2; @@ -857,7 +902,7 @@ else lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; x_34 = lean_box(0); x_35 = lean_array_uset(x_7, x_20, x_34); -x_36 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(x_3, x_4, x_21); +x_36 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_3, x_4, x_21); x_37 = lean_array_uset(x_35, x_20, x_36); lean_ctor_set(x_2, 1, x_37); return x_2; @@ -872,7 +917,7 @@ lean_inc(x_39); lean_inc(x_38); lean_dec(x_2); x_40 = lean_array_get_size(x_39); -x_41 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_3); +x_41 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_3); x_42 = 32; x_43 = lean_uint64_shift_right(x_41, x_42); x_44 = lean_uint64_xor(x_41, x_43); @@ -886,7 +931,7 @@ x_50 = 1; x_51 = lean_usize_sub(x_49, x_50); x_52 = lean_usize_land(x_48, x_51); x_53 = lean_array_uget(x_39, x_52); -x_54 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_3, x_53); +x_54 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(x_3, x_53); if (x_54 == 0) { lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; uint8_t x_64; @@ -910,7 +955,7 @@ lean_dec(x_62); if (x_64 == 0) { lean_object* x_65; lean_object* x_66; -x_65 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(x_58); +x_65 = l_Std_DHashMap_Internal_Raw_u2080_expand___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__12(x_58); x_66 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_66, 0, x_56); lean_ctor_set(x_66, 1, x_65); @@ -930,7 +975,7 @@ else lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; x_68 = lean_box(0); x_69 = lean_array_uset(x_39, x_52, x_68); -x_70 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__15(x_3, x_4, x_53); +x_70 = l_Std_DHashMap_Internal_AssocList_replace___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_3, x_4, x_53); x_71 = lean_array_uset(x_69, x_52, x_70); x_72 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_72, 0, x_38); @@ -940,7 +985,7 @@ return x_72; } } } -static lean_object* _init_l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___closed__1() { +static lean_object* _init_l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___closed__1() { _start: { lean_object* x_1; @@ -948,7 +993,7 @@ x_1 = lean_alloc_closure((void*)(l_Std_Tactic_BVDecide_instDecidableEqBVBit___bo return x_1; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object* x_1, uint8_t x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object* x_1, uint8_t x_2) { _start: { uint8_t x_3; @@ -960,13 +1005,13 @@ x_4 = lean_ctor_get(x_1, 0); x_5 = lean_ctor_get(x_1, 1); x_6 = lean_alloc_ctor(0, 0, 1); lean_ctor_set_uint8(x_6, 0, x_2); -x_7 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(x_5, x_6); +x_7 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(x_5, x_6); if (lean_obj_tag(x_7) == 0) { lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_8 = lean_array_get_size(x_4); lean_inc(x_6); -x_9 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_6); +x_9 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_6); x_10 = lean_array_push(x_4, x_6); lean_ctor_set(x_1, 1, x_9); lean_ctor_set(x_1, 0, x_10); @@ -998,13 +1043,13 @@ lean_inc(x_14); lean_dec(x_1); x_16 = lean_alloc_ctor(0, 0, 1); lean_ctor_set_uint8(x_16, 0, x_2); -x_17 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(x_15, x_16); +x_17 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(x_15, x_16); if (lean_obj_tag(x_17) == 0) { lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; x_18 = lean_array_get_size(x_14); lean_inc(x_16); -x_19 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_14, x_15, x_16); +x_19 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_14, x_15, x_16); x_20 = lean_array_push(x_14, x_16); x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_20); @@ -1032,7 +1077,7 @@ return x_25; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { uint8_t x_8; @@ -1069,7 +1114,7 @@ else { uint8_t x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_17 = 0; -x_18 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_2, x_17); +x_18 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_2, x_17); x_19 = lean_ctor_get(x_18, 0); lean_inc(x_19); x_20 = lean_ctor_get(x_18, 1); @@ -1088,19 +1133,19 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_4 = lean_ctor_get(x_3, 0); x_5 = lean_ctor_get(x_3, 1); -x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_6 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_7 = lean_unsigned_to_nat(0u); -x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_1, x_2, x_4, x_5, x_7, lean_box(0), x_6); +x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_2, x_4, x_5, x_7, lean_box(0), x_6); return x_8; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; lean_object* x_12; lean_object* x_13; lean_object* x_20; @@ -1129,7 +1174,7 @@ lean_ctor_set(x_12, 0, x_7); lean_ctor_set(x_12, 1, x_10); lean_ctor_set_uint8(x_12, sizeof(void*)*2, x_8); lean_ctor_set_uint8(x_12, sizeof(void*)*2 + 1, x_11); -x_20 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(x_5, x_12); +x_20 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(x_5, x_12); if (lean_obj_tag(x_20) == 0) { lean_object* x_21; lean_object* x_22; @@ -1159,7 +1204,7 @@ x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_4); lean_ctor_set(x_25, 1, x_5); x_26 = 0; -x_27 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_25, x_26); +x_27 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_25, x_26); return x_27; } else @@ -1172,7 +1217,7 @@ x_28 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_28, 0, x_4); lean_ctor_set(x_28, 1, x_5); x_29 = 0; -x_30 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_28, x_29); +x_30 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_28, x_29); return x_30; } else @@ -1180,7 +1225,7 @@ else lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; x_31 = lean_array_get_size(x_4); lean_inc(x_12); -x_32 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_32 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_33 = lean_array_push(x_4, x_12); x_34 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_34, 0, x_33); @@ -1202,7 +1247,7 @@ x_36 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_36, 0, x_4); lean_ctor_set(x_36, 1, x_5); x_37 = 0; -x_38 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_36, x_37); +x_38 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_36, x_37); return x_38; } else @@ -1226,7 +1271,7 @@ x_41 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_41, 0, x_4); lean_ctor_set(x_41, 1, x_5); x_42 = 0; -x_43 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_41, x_42); +x_43 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_41, x_42); return x_43; } } @@ -1243,7 +1288,7 @@ x_44 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_44, 0, x_4); lean_ctor_set(x_44, 1, x_5); x_45 = 0; -x_46 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_44, x_45); +x_46 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_44, x_45); return x_46; } else @@ -1266,7 +1311,7 @@ else lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; x_49 = lean_array_get_size(x_4); lean_inc(x_12); -x_50 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_50 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_51 = lean_array_push(x_4, x_12); x_52 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_52, 0, x_51); @@ -1298,7 +1343,7 @@ x_55 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_55, 0, x_4); lean_ctor_set(x_55, 1, x_5); x_56 = 0; -x_57 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_55, x_56); +x_57 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_55, x_56); return x_57; } else @@ -1321,7 +1366,7 @@ x_60 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_60, 0, x_4); lean_ctor_set(x_60, 1, x_5); x_61 = 0; -x_62 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_60, x_61); +x_62 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_60, x_61); return x_62; } } @@ -1348,7 +1393,7 @@ x_65 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_65, 0, x_4); lean_ctor_set(x_65, 1, x_5); x_66 = 0; -x_67 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_65, x_66); +x_67 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_65, x_66); return x_67; } } @@ -1359,7 +1404,7 @@ x_68 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_68, 0, x_4); lean_ctor_set(x_68, 1, x_5); x_69 = 0; -x_70 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_68, x_69); +x_70 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_68, x_69); return x_70; } } @@ -1391,7 +1436,7 @@ if (x_73 == 0) lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; x_74 = lean_array_get_size(x_4); lean_inc(x_12); -x_75 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_75 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_76 = lean_array_push(x_4, x_12); x_77 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_77, 0, x_76); @@ -1409,7 +1454,7 @@ x_79 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_79, 0, x_4); lean_ctor_set(x_79, 1, x_5); x_80 = 0; -x_81 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_79, x_80); +x_81 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_79, x_80); return x_81; } } @@ -1422,7 +1467,7 @@ x_82 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_82, 0, x_4); lean_ctor_set(x_82, 1, x_5); x_83 = 0; -x_84 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_82, x_83); +x_84 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_82, x_83); return x_84; } } @@ -1450,7 +1495,7 @@ x_86 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_86, 0, x_4); lean_ctor_set(x_86, 1, x_5); x_87 = 0; -x_88 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_86, x_87); +x_88 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_86, x_87); return x_88; } else @@ -1476,7 +1521,7 @@ x_91 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_91, 0, x_4); lean_ctor_set(x_91, 1, x_5); x_92 = 0; -x_93 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_91, x_92); +x_93 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_91, x_92); return x_93; } else @@ -1484,7 +1529,7 @@ else lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; x_94 = lean_array_get_size(x_4); lean_inc(x_12); -x_95 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_95 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_96 = lean_array_push(x_4, x_12); x_97 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_97, 0, x_96); @@ -1520,7 +1565,7 @@ x_101 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_101, 0, x_4); lean_ctor_set(x_101, 1, x_5); x_102 = 0; -x_103 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_101, x_102); +x_103 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_101, x_102); return x_103; } } @@ -1535,7 +1580,7 @@ if (x_104 == 0) lean_object* x_105; lean_object* x_106; lean_object* x_107; lean_object* x_108; lean_object* x_109; x_105 = lean_array_get_size(x_4); lean_inc(x_12); -x_106 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_106 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_107 = lean_array_push(x_4, x_12); x_108 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_108, 0, x_107); @@ -1553,7 +1598,7 @@ x_110 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_110, 0, x_4); lean_ctor_set(x_110, 1, x_5); x_111 = 0; -x_112 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_110, x_111); +x_112 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_110, x_111); return x_112; } } @@ -1565,7 +1610,7 @@ x_113 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_113, 0, x_4); lean_ctor_set(x_113, 1, x_5); x_114 = 0; -x_115 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_113, x_114); +x_115 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_113, x_114); return x_115; } } @@ -1647,7 +1692,7 @@ x_120 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_120, 0, x_4); lean_ctor_set(x_120, 1, x_5); x_121 = 0; -x_122 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_120, x_121); +x_122 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_120, x_121); return x_122; } } @@ -1662,7 +1707,7 @@ x_123 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_123, 0, x_4); lean_ctor_set(x_123, 1, x_5); x_124 = 0; -x_125 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_123, x_124); +x_125 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_123, x_124); return x_125; } else @@ -1752,7 +1797,7 @@ x_137 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_137, 0, x_4); lean_ctor_set(x_137, 1, x_5); x_138 = 0; -x_139 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_137, x_138); +x_139 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_137, x_138); return x_139; } } @@ -1767,7 +1812,7 @@ x_140 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_140, 0, x_4); lean_ctor_set(x_140, 1, x_5); x_141 = 0; -x_142 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_140, x_141); +x_142 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_140, x_141); return x_142; } else @@ -1805,7 +1850,7 @@ x_151 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_151, 0, x_4); lean_ctor_set(x_151, 1, x_5); x_152 = 0; -x_153 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_151, x_152); +x_153 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_151, x_152); return x_153; } else @@ -1831,7 +1876,7 @@ x_156 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_156, 0, x_4); lean_ctor_set(x_156, 1, x_5); x_157 = 0; -x_158 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_156, x_157); +x_158 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_156, x_157); return x_158; } else @@ -1839,7 +1884,7 @@ else lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; x_159 = lean_array_get_size(x_4); lean_inc(x_12); -x_160 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_160 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_161 = lean_array_push(x_4, x_12); x_162 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_162, 0, x_161); @@ -1875,7 +1920,7 @@ x_166 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_166, 0, x_4); lean_ctor_set(x_166, 1, x_5); x_167 = 0; -x_168 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_166, x_167); +x_168 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_166, x_167); return x_168; } } @@ -1890,7 +1935,7 @@ if (x_169 == 0) lean_object* x_170; lean_object* x_171; lean_object* x_172; lean_object* x_173; lean_object* x_174; x_170 = lean_array_get_size(x_4); lean_inc(x_12); -x_171 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_171 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_172 = lean_array_push(x_4, x_12); x_173 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_173, 0, x_172); @@ -1908,7 +1953,7 @@ x_175 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_175, 0, x_4); lean_ctor_set(x_175, 1, x_5); x_176 = 0; -x_177 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_175, x_176); +x_177 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_175, x_176); return x_177; } } @@ -1920,7 +1965,7 @@ x_178 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_178, 0, x_4); lean_ctor_set(x_178, 1, x_5); x_179 = 0; -x_180 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_178, x_179); +x_180 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_178, x_179); return x_180; } } @@ -2002,7 +2047,7 @@ x_185 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_185, 0, x_4); lean_ctor_set(x_185, 1, x_5); x_186 = 0; -x_187 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_185, x_186); +x_187 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_185, x_186); return x_187; } } @@ -2017,7 +2062,7 @@ x_188 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_188, 0, x_4); lean_ctor_set(x_188, 1, x_5); x_189 = 0; -x_190 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_188, x_189); +x_190 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_188, x_189); return x_190; } else @@ -2107,7 +2152,7 @@ x_202 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_202, 0, x_4); lean_ctor_set(x_202, 1, x_5); x_203 = 0; -x_204 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_202, x_203); +x_204 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_202, x_203); return x_204; } } @@ -2122,7 +2167,7 @@ x_205 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_205, 0, x_4); lean_ctor_set(x_205, 1, x_5); x_206 = 0; -x_207 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_205, x_206); +x_207 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_205, x_206); return x_207; } else @@ -2162,7 +2207,7 @@ lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean lean_dec(x_13); x_14 = lean_array_get_size(x_4); lean_inc(x_12); -x_15 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_4, x_5, x_12); +x_15 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_4, x_5, x_12); x_16 = lean_array_push(x_4, x_12); if (lean_is_scalar(x_6)) { x_17 = lean_alloc_ctor(0, 2, 0); @@ -2178,7 +2223,7 @@ return x_18; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -2200,14 +2245,14 @@ if (x_8 == 0) lean_object* x_9; lean_ctor_set(x_2, 1, x_4); lean_ctor_set(x_2, 0, x_5); -x_9 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); +x_9 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1, x_2); lean_dec(x_2); return x_9; } else { lean_object* x_10; -x_10 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); +x_10 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1, x_2); lean_dec(x_2); return x_10; } @@ -2233,7 +2278,7 @@ lean_object* x_16; lean_object* x_17; x_16 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_16, 0, x_12); lean_ctor_set(x_16, 1, x_11); -x_17 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_16); +x_17 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1, x_16); lean_dec(x_16); return x_17; } @@ -2243,14 +2288,14 @@ lean_object* x_18; lean_object* x_19; x_18 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_18, 0, x_11); lean_ctor_set(x_18, 1, x_12); -x_19 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_18); +x_19 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1, x_18); lean_dec(x_18); return x_19; } } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -2271,7 +2316,7 @@ lean_ctor_set(x_8, 0, x_5); lean_ctor_set_uint8(x_8, sizeof(void*)*1, x_6); lean_ctor_set(x_2, 1, x_8); lean_ctor_set(x_2, 0, x_7); -x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_2); +x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); x_10 = lean_ctor_get(x_9, 0); lean_inc(x_10); x_11 = lean_ctor_get(x_9, 1); @@ -2287,7 +2332,7 @@ lean_ctor_set_uint8(x_14, sizeof(void*)*1, x_12); x_15 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); -x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_10, x_15); +x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_10, x_15); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -2302,7 +2347,7 @@ lean_ctor_set_uint8(x_20, sizeof(void*)*1, x_12); x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_19); lean_ctor_set(x_21, 1, x_20); -x_22 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_17, x_21); +x_22 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_17, x_21); return x_22; } else @@ -2325,7 +2370,7 @@ lean_ctor_set_uint8(x_27, sizeof(void*)*1, x_25); x_28 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_28, 0, x_26); lean_ctor_set(x_28, 1, x_27); -x_29 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_28); +x_29 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_28); x_30 = lean_ctor_get(x_29, 0); lean_inc(x_30); x_31 = lean_ctor_get(x_29, 1); @@ -2341,7 +2386,7 @@ lean_ctor_set_uint8(x_34, sizeof(void*)*1, x_32); x_35 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_35, 0, x_33); lean_ctor_set(x_35, 1, x_34); -x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_30, x_35); +x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_30, x_35); x_37 = lean_ctor_get(x_36, 0); lean_inc(x_37); x_38 = lean_ctor_get(x_36, 1); @@ -2356,12 +2401,12 @@ lean_ctor_set_uint8(x_40, sizeof(void*)*1, x_32); x_41 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_41, 0, x_39); lean_ctor_set(x_41, 1, x_40); -x_42 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_37, x_41); +x_42 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_37, x_41); return x_42; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; @@ -2373,7 +2418,7 @@ lean_inc(x_3); x_6 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_6, 0, x_3); lean_ctor_set(x_6, 1, x_4); -x_7 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_1, x_6); +x_7 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_6); x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); @@ -2383,11 +2428,11 @@ lean_inc(x_5); x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_5); -x_11 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_8, x_10); +x_11 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_8, x_10); return x_11; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; @@ -2414,15 +2459,15 @@ return x_8; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = lean_alloc_closure((void*)(l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg___boxed), 3, 0); +x_2 = lean_alloc_closure((void*)(l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg___boxed), 3, 0); return x_2; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -2441,7 +2486,7 @@ lean_ctor_set(x_8, 0, x_5); lean_ctor_set_uint8(x_8, sizeof(void*)*1, x_6); lean_ctor_set(x_2, 1, x_8); lean_ctor_set(x_2, 0, x_7); -x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_2); +x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); return x_9; } else @@ -2462,12 +2507,12 @@ lean_ctor_set_uint8(x_14, sizeof(void*)*1, x_12); x_15 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); -x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_15); +x_16 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_15); return x_16; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; @@ -2486,13 +2531,13 @@ lean_ctor_set(x_8, 0, x_5); lean_ctor_set_uint8(x_8, sizeof(void*)*1, x_6); lean_ctor_set(x_2, 1, x_8); lean_ctor_set(x_2, 0, x_7); -x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_2); +x_9 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); x_10 = lean_ctor_get(x_9, 0); lean_inc(x_10); x_11 = lean_ctor_get(x_9, 1); lean_inc(x_11); lean_dec(x_9); -x_12 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_10, x_6); +x_12 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_10, x_6); x_13 = lean_ctor_get(x_12, 0); lean_inc(x_13); x_14 = lean_ctor_get(x_12, 1); @@ -2508,7 +2553,7 @@ lean_ctor_set_uint8(x_17, sizeof(void*)*1, x_6); x_18 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_18, 0, x_16); lean_ctor_set(x_18, 1, x_17); -x_19 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_13, x_18); +x_19 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_13, x_18); return x_19; } else @@ -2529,13 +2574,13 @@ lean_ctor_set_uint8(x_24, sizeof(void*)*1, x_22); x_25 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_25, 0, x_23); lean_ctor_set(x_25, 1, x_24); -x_26 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_25); +x_26 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_25); x_27 = lean_ctor_get(x_26, 0); lean_inc(x_27); x_28 = lean_ctor_get(x_26, 1); lean_inc(x_28); lean_dec(x_26); -x_29 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_27, x_22); +x_29 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_27, x_22); x_30 = lean_ctor_get(x_29, 0); lean_inc(x_30); x_31 = lean_ctor_get(x_29, 1); @@ -2551,12 +2596,12 @@ lean_ctor_set_uint8(x_34, sizeof(void*)*1, x_22); x_35 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_35, 0, x_33); lean_ctor_set(x_35, 1, x_34); -x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_30, x_35); +x_36 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_30, x_35); return x_36; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; @@ -2568,7 +2613,7 @@ lean_inc(x_3); x_6 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_6, 0, x_3); lean_ctor_set(x_6, 1, x_4); -x_7 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_1, x_6); +x_7 = l_Std_Sat_AIG_mkXorCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_1, x_6); x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); @@ -2578,7 +2623,7 @@ lean_inc(x_5); x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_9); lean_ctor_set(x_10, 1, x_5); -x_11 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_8, x_10); +x_11 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_8, x_10); x_12 = lean_ctor_get(x_11, 0); lean_inc(x_12); x_13 = lean_ctor_get(x_11, 1); @@ -2589,14 +2634,14 @@ lean_inc(x_3); x_14 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_14, 0, x_3); lean_ctor_set(x_14, 1, x_4); -x_15 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_12, x_14); +x_15 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_12, x_14); x_16 = !lean_is_exclusive(x_15); if (x_16 == 0) { lean_object* x_17; lean_object* x_18; x_17 = lean_ctor_get(x_15, 0); lean_ctor_set(x_15, 0, x_13); -x_18 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_17, x_15); +x_18 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_17, x_15); return x_18; } else @@ -2610,23 +2655,23 @@ lean_dec(x_15); x_21 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_21, 0, x_13); lean_ctor_set(x_21, 1, x_20); -x_22 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_19, x_21); +x_22 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_19, x_21); return x_22; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; -x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(x_1, x_2); +x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_1, x_2); x_4 = lean_ctor_get(x_3, 0); lean_inc(x_4); x_5 = lean_ctor_get(x_3, 1); lean_inc(x_5); lean_dec(x_3); -x_6 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg(x_4, x_2, lean_box(0)); -x_7 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(x_4, x_6); +x_6 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg(x_4, x_2, lean_box(0)); +x_7 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_4, x_6); lean_dec(x_6); x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); @@ -2640,7 +2685,7 @@ lean_ctor_set(x_10, 2, x_9); return x_10; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -2667,7 +2712,7 @@ x_15 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_15, 0, x_13); lean_ctor_set(x_15, 1, x_14); lean_ctor_set(x_15, 2, x_7); -x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(x_2, x_15); +x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdder___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(x_2, x_15); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -2685,12 +2730,12 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { uint8_t x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; x_4 = 0; -x_5 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_2, x_4); +x_5 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_2, x_4); x_6 = lean_ctor_get(x_5, 0); lean_inc(x_6); x_7 = lean_ctor_get(x_5, 1); @@ -2698,18 +2743,18 @@ lean_inc(x_7); lean_dec(x_5); x_8 = lean_ctor_get(x_3, 0); x_9 = lean_ctor_get(x_3, 1); -x_10 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_6); +x_10 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_6); x_11 = lean_unsigned_to_nat(0u); -x_12 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_6, x_8, x_9, x_11, lean_box(0), x_7, x_10); +x_12 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(x_1, x_6, x_8, x_9, x_11, lean_box(0), x_7, x_10); return x_12; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; x_3 = 1; -x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_3); +x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_3); x_5 = lean_ctor_get(x_4, 0); lean_inc(x_5); x_6 = lean_ctor_get(x_4, 1); @@ -2725,11 +2770,11 @@ lean_ctor_set_uint8(x_9, sizeof(void*)*1, x_3); x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_8); lean_ctor_set(x_10, 1, x_9); -x_11 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__21(x_5, x_10); +x_11 = l_Std_Sat_AIG_mkGateCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_5, x_10); return x_11; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; @@ -2744,13 +2789,13 @@ lean_inc(x_3); x_6 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_6, 0, x_3); lean_ctor_set(x_6, 1, x_4); -x_7 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_1, x_6); +x_7 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_1, x_6); x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); x_9 = lean_ctor_get(x_7, 1); lean_inc(x_9); lean_dec(x_7); -x_10 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_8, x_3); +x_10 = l_Std_Sat_AIG_mkNotCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__31(x_8, x_3); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); @@ -2759,14 +2804,14 @@ lean_dec(x_10); x_13 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_13, 0, x_12); lean_ctor_set(x_13, 1, x_5); -x_14 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_11, x_13); +x_14 = l_Std_Sat_AIG_mkAndCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_11, x_13); x_15 = !lean_is_exclusive(x_14); if (x_15 == 0) { lean_object* x_16; lean_object* x_17; x_16 = lean_ctor_get(x_14, 0); lean_ctor_set(x_14, 0, x_9); -x_17 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_16, x_14); +x_17 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_16, x_14); return x_17; } else @@ -2780,12 +2825,12 @@ lean_dec(x_14); x_20 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_20, 0, x_9); lean_ctor_set(x_20, 1, x_19); -x_21 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__26(x_18, x_20); +x_21 = l_Std_Sat_AIG_mkOrCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_18, x_20); return x_21; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { uint8_t x_9; @@ -2813,7 +2858,7 @@ x_15 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_15, 0, x_5); lean_ctor_set(x_15, 1, x_13); lean_ctor_set(x_15, 2, x_14); -x_16 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(x_2, x_15); +x_16 = l_Std_Sat_AIG_mkIfCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__30(x_2, x_15); x_17 = lean_ctor_get(x_16, 0); lean_inc(x_17); x_18 = lean_ctor_get(x_16, 1); @@ -2828,7 +2873,7 @@ goto _start; } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; @@ -2839,9 +2884,9 @@ lean_inc(x_5); x_6 = lean_ctor_get(x_3, 2); lean_inc(x_6); lean_dec(x_3); -x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_7 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_8 = lean_unsigned_to_nat(0u); -x_9 = l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_2, x_8, lean_box(0), x_4, x_5, x_6, x_7); +x_9 = l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(x_1, x_2, x_8, lean_box(0), x_4, x_5, x_6, x_7); lean_dec(x_6); lean_dec(x_5); return x_9; @@ -2864,280 +2909,308 @@ return x_8; } else { -lean_object* x_9; lean_object* x_10; uint8_t x_11; -lean_inc(x_5); -lean_inc(x_3); -x_9 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_9, 0, x_3); -lean_ctor_set(x_9, 1, x_5); -x_10 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_2, x_9); -lean_dec(x_9); -x_11 = !lean_is_exclusive(x_10); +lean_object* x_9; uint8_t x_10; uint8_t x_11; +x_9 = lean_array_fget(x_4, x_5); +x_10 = 0; +x_11 = l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_2, x_9, x_10); if (x_11 == 0) { -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_12 = lean_ctor_get(x_10, 0); +lean_object* x_12; lean_object* x_13; uint8_t x_14; +lean_inc(x_5); +lean_inc(x_3); +x_12 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_12, 0, x_3); +lean_ctor_set(x_12, 1, x_5); +x_13 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1, x_2, x_12); +lean_dec(x_12); +x_14 = !lean_is_exclusive(x_13); +if (x_14 == 0) +{ +lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +x_15 = lean_ctor_get(x_13, 0); lean_inc(x_6); -lean_ctor_set(x_10, 0, x_6); -x_13 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_12, x_10); -lean_dec(x_10); -x_14 = lean_ctor_get(x_13, 0); -lean_inc(x_14); -x_15 = lean_ctor_get(x_13, 1); -lean_inc(x_15); +lean_ctor_set(x_13, 0, x_6); +x_16 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_15, x_13); lean_dec(x_13); -x_16 = lean_array_fget(x_4, x_5); -x_17 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_15); -lean_ctor_set(x_17, 2, x_6); -x_18 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_14, x_17); -x_19 = lean_ctor_get(x_18, 0); -lean_inc(x_19); -x_20 = lean_ctor_get(x_18, 1); -lean_inc(x_20); -lean_dec(x_18); -x_21 = lean_unsigned_to_nat(1u); -x_22 = lean_nat_add(x_5, x_21); +x_17 = lean_ctor_get(x_16, 0); +lean_inc(x_17); +x_18 = lean_ctor_get(x_16, 1); +lean_inc(x_18); +lean_dec(x_16); +x_19 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_19, 0, x_9); +lean_ctor_set(x_19, 1, x_18); +lean_ctor_set(x_19, 2, x_6); +x_20 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_17, x_19); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_ctor_get(x_20, 1); +lean_inc(x_22); +lean_dec(x_20); +x_23 = lean_unsigned_to_nat(1u); +x_24 = lean_nat_add(x_5, x_23); lean_dec(x_5); -x_2 = x_19; -x_5 = x_22; -x_6 = x_20; +x_2 = x_21; +x_5 = x_24; +x_6 = x_22; goto _start; } else { -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_24 = lean_ctor_get(x_10, 0); -x_25 = lean_ctor_get(x_10, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_10); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +x_26 = lean_ctor_get(x_13, 0); +x_27 = lean_ctor_get(x_13, 1); +lean_inc(x_27); +lean_inc(x_26); +lean_dec(x_13); lean_inc(x_6); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_6); -lean_ctor_set(x_26, 1, x_25); -x_27 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_24, x_26); -lean_dec(x_26); -x_28 = lean_ctor_get(x_27, 0); -lean_inc(x_28); -x_29 = lean_ctor_get(x_27, 1); -lean_inc(x_29); -lean_dec(x_27); -x_30 = lean_array_fget(x_4, x_5); -x_31 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_29); -lean_ctor_set(x_31, 2, x_6); -x_32 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_28, x_31); -x_33 = lean_ctor_get(x_32, 0); -lean_inc(x_33); -x_34 = lean_ctor_get(x_32, 1); +x_28 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_28, 0, x_6); +lean_ctor_set(x_28, 1, x_27); +x_29 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_26, x_28); +lean_dec(x_28); +x_30 = lean_ctor_get(x_29, 0); +lean_inc(x_30); +x_31 = lean_ctor_get(x_29, 1); +lean_inc(x_31); +lean_dec(x_29); +x_32 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_32, 0, x_9); +lean_ctor_set(x_32, 1, x_31); +lean_ctor_set(x_32, 2, x_6); +x_33 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_30, x_32); +x_34 = lean_ctor_get(x_33, 0); lean_inc(x_34); -lean_dec(x_32); -x_35 = lean_unsigned_to_nat(1u); -x_36 = lean_nat_add(x_5, x_35); +x_35 = lean_ctor_get(x_33, 1); +lean_inc(x_35); +lean_dec(x_33); +x_36 = lean_unsigned_to_nat(1u); +x_37 = lean_nat_add(x_5, x_36); lean_dec(x_5); -x_2 = x_33; -x_5 = x_36; -x_6 = x_34; +x_2 = x_34; +x_5 = x_37; +x_6 = x_35; +goto _start; +} +} +else +{ +lean_object* x_39; lean_object* x_40; +lean_dec(x_9); +x_39 = lean_unsigned_to_nat(1u); +x_40 = lean_nat_add(x_5, x_39); +lean_dec(x_5); +x_5 = x_40; goto _start; } } } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +_start: +{ +uint8_t x_4; uint8_t x_5; lean_object* x_6; +x_4 = lean_unbox(x_3); +lean_dec(x_3); +x_5 = l_Std_Sat_AIG_isConstant___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_2, x_4); +lean_dec(x_2); +lean_dec(x_1); +x_6 = lean_box(x_5); +return x_6; +} +} +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1); +x_2 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___boxed(lean_object* x_1) { _start: { uint64_t x_2; lean_object* x_3; -x_2 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_1); +x_2 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_1); lean_dec(x_1); x_3 = lean_box_uint64(x_2); return x_3; } } -LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_1, x_2); +x_3 = l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_decEqDecl____x40_Std_Sat_AIG_Basic___hyg_400____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7(x_1, x_2); +x_3 = l_Std_DHashMap_Internal_AssocList_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__8(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___rarg(x_1, x_2); +x_3 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___rarg(x_1, x_2); lean_dec(x_2); lean_dec(x_1); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1); +x_2 = l_Std_Sat_AIG_Cache_get_x3f___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; -x_3 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_1, x_2); +x_3 = l_Std_DHashMap_Internal_AssocList_contains___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__11(x_1, x_2); lean_dec(x_2); lean_dec(x_1); x_4 = lean_box(x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__9(x_1, x_2, x_3); +x_4 = l_Std_Sat_AIG_Cache_insert___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__10(x_1, x_2, x_3); lean_dec(x_1); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___boxed(lean_object* x_1, lean_object* x_2) { _start: { uint8_t x_3; lean_object* x_4; x_3 = lean_unbox(x_2); lean_dec(x_2); -x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_3); +x_4 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_3); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7) { _start: { lean_object* x_8; -x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_1, x_2, x_3, x_4, x_5, x_6, x_7); +x_8 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_2, x_3, x_4, x_5, x_6, x_7); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); return x_8; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__1(x_1, x_2, x_3); +x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastShiftLeftConst___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_1, x_2, x_3); lean_dec(x_3); lean_dec(x_1); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__22(x_1, x_2); +x_3 = l_Std_Sat_AIG_mkGateCached_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__19(x_1, x_2); +x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderOut___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__20(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___rarg(x_1, x_2, x_3); +x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___rarg(x_1, x_2, x_3); lean_dec(x_1); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23___boxed(lean_object* x_1) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___boxed(lean_object* x_1) { _start: { lean_object* x_2; -x_2 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__23(x_1); +x_2 = l_Std_Tactic_BVDecide_BVExpr_bitblast_FullAdderInput_cast___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(x_1); lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24___boxed(lean_object* x_1, lean_object* x_2) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25___boxed(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; -x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__24(x_1, x_2); +x_3 = l_Std_Tactic_BVDecide_BVExpr_bitblast_mkFullAdderCarry___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__25(x_1, x_2); lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__18(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_4); lean_dec(x_3); lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__16(x_1, x_2, x_3); +x_4 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastAdd___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__17(x_1, x_2, x_3); lean_dec(x_3); lean_dec(x_1); return x_4; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5, lean_object* x_6, lean_object* x_7, lean_object* x_8) { _start: { lean_object* x_9; -x_9 = l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); +x_9 = l_Std_Sat_AIG_RefVec_ite_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__29(x_1, x_2, x_3, x_4, x_5, x_6, x_7, x_8); lean_dec(x_7); lean_dec(x_6); lean_dec(x_1); return x_9; } } -LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { +LEAN_EXPORT lean_object* l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { lean_object* x_4; -x_4 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_2, x_3); +x_4 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_2, x_3); lean_dec(x_1); return x_4; } @@ -3170,7 +3243,7 @@ else { uint8_t x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; x_9 = l_Nat_testBit(x_3, x_4); -x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_2, x_9); +x_10 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_2, x_9); x_11 = lean_ctor_get(x_10, 0); lean_inc(x_11); x_12 = lean_ctor_get(x_10, 1); @@ -3192,7 +3265,7 @@ LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst___at_S _start: { lean_object* x_4; lean_object* x_5; lean_object* x_6; -x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_4 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_5 = lean_unsigned_to_nat(0u); x_6 = l_Std_Tactic_BVDecide_BVExpr_bitblast_blastConst_go___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_blast___spec__2(x_1, x_2, x_3, x_5, x_4, lean_box(0)); return x_6; @@ -3226,7 +3299,7 @@ x_13 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_13, 0, x_12); lean_ctor_set(x_13, 1, x_10); lean_ctor_set(x_13, 2, x_9); -x_14 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__27(x_1, x_8, x_13); +x_14 = l_Std_Sat_AIG_RefVec_ite___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__28(x_1, x_8, x_13); x_15 = lean_ctor_get(x_14, 0); lean_inc(x_15); x_16 = lean_ctor_get(x_14, 1); @@ -3241,7 +3314,7 @@ else { lean_object* x_19; lean_object* x_20; lean_dec(x_3); -x_19 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2(x_2); +x_19 = l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3(x_2); x_20 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_20, 0, x_2); lean_ctor_set(x_20, 1, x_19); @@ -3518,12 +3591,12 @@ lean_dec_ref(res); res = initialize_Std_Tactic_BVDecide_Bitblast_BVExpr_Circuit_Impl_Const(builtin, lean_io_mk_world()); if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); -l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1 = _init_l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1(); -lean_mark_persistent(l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__2___closed__1); -l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__1 = _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__1(); -l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__2 = _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__6___closed__2(); -l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___closed__1 = _init_l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___closed__1(); -lean_mark_persistent(l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4___closed__1); +l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1 = _init_l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1(); +lean_mark_persistent(l_Std_Sat_AIG_RefVec_empty___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__3___closed__1); +l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__1 = _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__1(); +l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__2 = _init_l___private_Std_Sat_AIG_Basic_0__Std_Sat_AIG_hashDecl____x40_Std_Sat_AIG_Basic___hyg_84____at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__7___closed__2(); +l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___closed__1 = _init_l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___closed__1(); +lean_mark_persistent(l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5___closed__1); l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2___closed__1 = _init_l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2___closed__1(); lean_mark_persistent(l_Array_foldlMUnsafe_fold___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul___spec__2___closed__1); return lean_io_result_mk_ok(lean_box(0)); diff --git a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.c b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.c index e625c56fae..fc2a79729c 100644 --- a/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.c +++ b/stage0/stdlib/Std/Tactic/BVDecide/Bitblast/BVExpr/Circuit/Impl/Pred.c @@ -16,10 +16,10 @@ extern "C" { LEAN_EXPORT lean_object* l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Circuit_Impl_Pred_0__Std_Tactic_BVDecide_BVPred_bitblast_match__2_splitter(lean_object*); LEAN_EXPORT lean_object* l_Std_Tactic_BVDecide_BVPred_blastGetLsbD___at_Std_Tactic_BVDecide_BVPred_bitblast___spec__1___boxed(lean_object*, lean_object*); lean_object* lean_array_fget(lean_object*, lean_object*); -lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(lean_object*, uint8_t); LEAN_EXPORT lean_object* l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Circuit_Impl_Pred_0__Std_Tactic_BVDecide_BVPred_bitblast_match__1_splitter(lean_object*); lean_object* l_Std_Tactic_BVDecide_BVPred_mkEq___at_Std_Tactic_BVDecide_BVExpr_bitblast_go___spec__8(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Tactic_BVDecide_BVPred_blastGetLsbD___at_Std_Tactic_BVDecide_BVPred_bitblast___spec__1___closed__1; +lean_object* l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(lean_object*, uint8_t); LEAN_EXPORT lean_object* l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Circuit_Impl_Pred_0__Std_Tactic_BVDecide_BVPred_bitblast_match__1_splitter___rarg(uint8_t, lean_object*, lean_object*); lean_object* l_Std_Tactic_BVDecide_BVExpr_bitblast_go(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Tactic_BVDecide_Bitblast_BVExpr_Circuit_Impl_Pred_0__Std_Tactic_BVDecide_BVPred_bitblast_match__1_splitter___rarg___boxed(lean_object*, lean_object*, lean_object*); @@ -48,7 +48,7 @@ if (x_5 == 0) { uint8_t x_6; lean_object* x_7; x_6 = 0; -x_7 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__4(x_1, x_6); +x_7 = l_Std_Sat_AIG_mkConstCached___at_Std_Tactic_BVDecide_BVExpr_bitblast_blastMul_go___spec__5(x_1, x_6); return x_7; } else diff --git a/stage0/stdlib/Std/Time/DateTime/PlainDateTime.c b/stage0/stdlib/Std/Time/DateTime/PlainDateTime.c index 99e3e95112..b15aa251bf 100644 --- a/stage0/stdlib/Std/Time/DateTime/PlainDateTime.c +++ b/stage0/stdlib/Std/Time/DateTime/PlainDateTime.c @@ -30,7 +30,6 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addYearsClip(lean_object*, lea LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subWeeks___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l___private_Std_Time_DateTime_PlainDateTime_0__Std_Time_reprPlainDateTime____x40_Std_Time_DateTime_PlainDateTime___hyg_111_(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___boxed(lean_object*); -lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__16; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMilliseconds___boxed(lean_object*, lean_object*); static lean_object* l___private_Std_Time_DateTime_PlainDateTime_0__Std_Time_reprPlainDateTime____x40_Std_Time_DateTime_PlainDateTime___hyg_111____closed__9; @@ -46,6 +45,7 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_day___boxed(lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__36; lean_object* l_Std_Time_Month_Ordinal_days(uint8_t, lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__31; +static lean_object* l_Std_Time_PlainDateTime_addMinutes___closed__1; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMinutes(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___closed__2; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); @@ -99,6 +99,7 @@ LEAN_EXPORT uint8_t l_Std_Time_PlainDateTime_weekday(lean_object*); LEAN_EXPORT lean_object* l_List_forIn_x27_loop___at_Std_Time_PlainDateTime_ofTimestampAssumingUTC___spec__1___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__24; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_ofDaysSinceUNIXEpoch(lean_object*, lean_object*); +static lean_object* l_Std_Time_PlainDateTime_addHours___closed__1; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_dayOfYear(lean_object*); uint8_t l_instDecidableNot___rarg(uint8_t); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_withMonthClip(lean_object*, lean_object*); @@ -126,7 +127,6 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subYearsClip(lean_object*, lea LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_nanosecond(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_quarter(lean_object*); lean_object* l_Std_Time_ValidDate_dayOfYear(uint8_t, lean_object*); -lean_object* l_Std_Time_PlainTime_ofNanoseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_hour___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instHAddDuration___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__14; @@ -158,11 +158,11 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addNanoseconds___boxed(lean_ob LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_withYearClip(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_minute(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addWeeks(lean_object*, lean_object*); +lean_object* lean_int_div(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_withMinutes(lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedPlainDateTime___closed__6; static lean_object* l___private_Std_Time_DateTime_PlainDateTime_0__Std_Time_reprPlainDateTime____x40_Std_Time_DateTime_PlainDateTime___hyg_111____closed__13; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subNanoseconds(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toMilliseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_instBEqPlainDateTime; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_ofDaysSinceUNIXEpoch___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__2___closed__6; @@ -209,7 +209,6 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instHAddOffset__6; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subYearsClip___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subYearsRollOver___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___closed__13; -lean_object* l_Std_Time_PlainTime_addMilliseconds(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instHSubOffset__2; uint8_t l_Std_Time_Year_Offset_era(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subDays___boxed(lean_object*, lean_object*); @@ -272,7 +271,6 @@ uint8_t lean_nat_dec_le(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__2___closed__10; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subMinutes(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__4___closed__1; -static lean_object* l_Std_Time_PlainDateTime_addMilliseconds___closed__1; static lean_object* l___private_Std_Time_DateTime_PlainDateTime_0__Std_Time_reprPlainDateTime____x40_Std_Time_DateTime_PlainDateTime___hyg_111____closed__8; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addSeconds(lean_object*, lean_object*); lean_object* lean_nat_add(lean_object*, lean_object*); @@ -1903,7 +1901,7 @@ x_6 = lean_int_add(x_4, x_5); lean_dec(x_4); x_7 = lean_int_ediv(x_6, x_3); x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_9 = lean_int_ediv(x_7, x_8); +x_9 = lean_int_div(x_7, x_8); x_10 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___closed__1; x_11 = lean_int_sub(x_9, x_10); lean_dec(x_9); @@ -4746,43 +4744,147 @@ lean_dec(x_2); return x_3; } } +LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addNanoseconds(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; +x_3 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_4 = l_Std_Time_Duration_ofNanoseconds(x_2); +x_5 = lean_ctor_get(x_3, 0); +lean_inc(x_5); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_7 = lean_int_mul(x_5, x_6); +lean_dec(x_5); +x_8 = lean_ctor_get(x_3, 1); +lean_inc(x_8); +lean_dec(x_3); +x_9 = lean_int_add(x_7, x_8); +lean_dec(x_8); +lean_dec(x_7); +x_10 = lean_ctor_get(x_4, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); +lean_dec(x_10); +x_12 = lean_ctor_get(x_4, 1); +lean_inc(x_12); +lean_dec(x_4); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_int_add(x_9, x_13); +lean_dec(x_13); +lean_dec(x_9); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_14); +lean_dec(x_14); +x_16 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_15); +lean_dec(x_15); +return x_16; +} +} +LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_Time_PlainDateTime_addNanoseconds(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subNanoseconds(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; +x_3 = lean_int_neg(x_2); +x_4 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_5 = l_Std_Time_Duration_ofNanoseconds(x_3); +lean_dec(x_3); +x_6 = lean_ctor_get(x_4, 0); +lean_inc(x_6); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_8 = lean_int_mul(x_6, x_7); +lean_dec(x_6); +x_9 = lean_ctor_get(x_4, 1); +lean_inc(x_9); +lean_dec(x_4); +x_10 = lean_int_add(x_8, x_9); +lean_dec(x_9); +lean_dec(x_8); +x_11 = lean_ctor_get(x_5, 0); +lean_inc(x_11); +x_12 = lean_int_mul(x_11, x_7); +lean_dec(x_11); +x_13 = lean_ctor_get(x_5, 1); +lean_inc(x_13); +lean_dec(x_5); +x_14 = lean_int_add(x_12, x_13); +lean_dec(x_13); +lean_dec(x_12); +x_15 = lean_int_add(x_10, x_14); +lean_dec(x_14); +lean_dec(x_10); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_15); +lean_dec(x_15); +x_17 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_16); +lean_dec(x_16); +return x_17; +} +} +LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_Time_PlainDateTime_subNanoseconds(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +static lean_object* _init_l_Std_Time_PlainDateTime_addHours___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_cstr_to_nat("3600000000000"); +x_2 = lean_nat_to_int(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addHours(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = l_Std_Time_PlainTime_toSeconds(x_3); -x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__1___closed__2; -x_6 = lean_int_mul(x_2, x_5); -x_7 = lean_int_add(x_4, x_6); +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_3 = l_Std_Time_PlainDateTime_addHours___closed__1; +x_4 = lean_int_mul(x_2, x_3); +x_5 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_6 = l_Std_Time_Duration_ofNanoseconds(x_4); lean_dec(x_4); -x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_9 = lean_int_ediv(x_7, x_8); +x_7 = lean_ctor_get(x_5, 0); +lean_inc(x_7); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_3); -lean_dec(x_3); -x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_12 = lean_int_mul(x_6, x_11); -lean_dec(x_6); -x_13 = lean_int_add(x_10, x_12); -lean_dec(x_12); +x_10 = lean_ctor_get(x_5, 1); +lean_inc(x_10); +lean_dec(x_5); +x_11 = lean_int_add(x_9, x_10); lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_1, 0); -lean_inc(x_15); -lean_dec(x_1); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_9); lean_dec(x_9); +x_12 = lean_ctor_get(x_6, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_8); +lean_dec(x_12); +x_14 = lean_ctor_get(x_6, 1); +lean_inc(x_14); +lean_dec(x_6); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_int_add(x_11, x_15); +lean_dec(x_15); +lean_dec(x_11); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +x_18 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); -return x_19; +return x_18; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addHours___boxed(lean_object* x_1, lean_object* x_2) { @@ -4797,42 +4899,43 @@ return x_3; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subHours(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_3 = lean_int_neg(x_2); -x_4 = lean_ctor_get(x_1, 1); -lean_inc(x_4); -x_5 = l_Std_Time_PlainTime_toSeconds(x_4); -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__1___closed__2; -x_7 = lean_int_mul(x_3, x_6); +x_4 = l_Std_Time_PlainDateTime_addHours___closed__1; +x_5 = lean_int_mul(x_3, x_4); lean_dec(x_3); -x_8 = lean_int_add(x_5, x_7); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_5); lean_dec(x_5); -x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_10 = lean_int_ediv(x_8, x_9); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_4); -lean_dec(x_4); -x_12 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_13 = lean_int_mul(x_7, x_12); -lean_dec(x_7); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); +x_11 = lean_ctor_get(x_6, 1); +lean_inc(x_11); +lean_dec(x_6); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_1, 0); -lean_inc(x_16); -lean_dec(x_1); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); lean_dec(x_10); +x_13 = lean_ctor_get(x_7, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); +lean_dec(x_13); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); +lean_dec(x_16); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); -return x_20; +return x_19; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subHours___boxed(lean_object* x_1, lean_object* x_2) { @@ -4844,43 +4947,53 @@ lean_dec(x_2); return x_3; } } +static lean_object* _init_l_Std_Time_PlainDateTime_addMinutes___closed__1() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = lean_cstr_to_nat("60000000000"); +x_2 = lean_nat_to_int(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMinutes(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = l_Std_Time_PlainTime_toSeconds(x_3); -x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__1___closed__1; -x_6 = lean_int_mul(x_2, x_5); -x_7 = lean_int_add(x_4, x_6); +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_3 = l_Std_Time_PlainDateTime_addMinutes___closed__1; +x_4 = lean_int_mul(x_2, x_3); +x_5 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_6 = l_Std_Time_Duration_ofNanoseconds(x_4); lean_dec(x_4); -x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_9 = lean_int_ediv(x_7, x_8); +x_7 = lean_ctor_get(x_5, 0); +lean_inc(x_7); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_3); -lean_dec(x_3); -x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_12 = lean_int_mul(x_6, x_11); -lean_dec(x_6); -x_13 = lean_int_add(x_10, x_12); -lean_dec(x_12); +x_10 = lean_ctor_get(x_5, 1); +lean_inc(x_10); +lean_dec(x_5); +x_11 = lean_int_add(x_9, x_10); lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_1, 0); -lean_inc(x_15); -lean_dec(x_1); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_9); lean_dec(x_9); +x_12 = lean_ctor_get(x_6, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_8); +lean_dec(x_12); +x_14 = lean_ctor_get(x_6, 1); +lean_inc(x_14); +lean_dec(x_6); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_int_add(x_11, x_15); +lean_dec(x_15); +lean_dec(x_11); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +x_18 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); -return x_19; +return x_18; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMinutes___boxed(lean_object* x_1, lean_object* x_2) { @@ -4895,42 +5008,43 @@ return x_3; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subMinutes(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_3 = lean_int_neg(x_2); -x_4 = lean_ctor_get(x_1, 1); -lean_inc(x_4); -x_5 = l_Std_Time_PlainTime_toSeconds(x_4); -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC___lambda__1___closed__1; -x_7 = lean_int_mul(x_3, x_6); +x_4 = l_Std_Time_PlainDateTime_addMinutes___closed__1; +x_5 = lean_int_mul(x_3, x_4); lean_dec(x_3); -x_8 = lean_int_add(x_5, x_7); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_5); lean_dec(x_5); -x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_10 = lean_int_ediv(x_8, x_9); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_4); -lean_dec(x_4); -x_12 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_13 = lean_int_mul(x_7, x_12); -lean_dec(x_7); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); +x_11 = lean_ctor_get(x_6, 1); +lean_inc(x_11); +lean_dec(x_6); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_1, 0); -lean_inc(x_16); -lean_dec(x_1); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); lean_dec(x_10); +x_13 = lean_ctor_get(x_7, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); +lean_dec(x_13); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); +lean_dec(x_16); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); -return x_20; +return x_19; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subMinutes___boxed(lean_object* x_1, lean_object* x_2) { @@ -4946,35 +5060,38 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addSeconds(lean_object* x_1, l _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = l_Std_Time_PlainTime_toSeconds(x_3); -x_5 = lean_int_add(x_4, x_2); +x_3 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_4 = lean_int_mul(x_2, x_3); +x_5 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_6 = l_Std_Time_Duration_ofNanoseconds(x_4); lean_dec(x_4); -x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_7 = lean_int_ediv(x_5, x_6); -lean_dec(x_5); -x_8 = l_Std_Time_PlainTime_toNanoseconds(x_3); -lean_dec(x_3); -x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_10 = lean_int_mul(x_2, x_9); -x_11 = lean_int_add(x_8, x_10); -lean_dec(x_10); -lean_dec(x_8); -x_12 = l_Std_Time_PlainTime_ofNanoseconds(x_11); -lean_dec(x_11); -x_13 = lean_ctor_get(x_1, 0); -lean_inc(x_13); -lean_dec(x_1); -x_14 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_15 = lean_int_add(x_14, x_7); +x_7 = lean_ctor_get(x_5, 0); +lean_inc(x_7); +x_8 = lean_int_mul(x_7, x_3); lean_dec(x_7); +x_9 = lean_ctor_get(x_5, 1); +lean_inc(x_9); +lean_dec(x_5); +x_10 = lean_int_add(x_8, x_9); +lean_dec(x_9); +lean_dec(x_8); +x_11 = lean_ctor_get(x_6, 0); +lean_inc(x_11); +x_12 = lean_int_mul(x_11, x_3); +lean_dec(x_11); +x_13 = lean_ctor_get(x_6, 1); +lean_inc(x_13); +lean_dec(x_6); +x_14 = lean_int_add(x_12, x_13); +lean_dec(x_13); +lean_dec(x_12); +x_15 = lean_int_add(x_10, x_14); lean_dec(x_14); -x_16 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_15); +lean_dec(x_10); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_15); lean_dec(x_15); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_12); +x_17 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_16); +lean_dec(x_16); return x_17; } } @@ -4992,36 +5109,39 @@ _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; x_3 = lean_int_neg(x_2); -x_4 = lean_ctor_get(x_1, 1); -lean_inc(x_4); -x_5 = l_Std_Time_PlainTime_toSeconds(x_4); -x_6 = lean_int_add(x_5, x_3); -lean_dec(x_5); -x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__1; -x_8 = lean_int_ediv(x_6, x_7); -lean_dec(x_6); -x_9 = l_Std_Time_PlainTime_toNanoseconds(x_4); -lean_dec(x_4); -x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_11 = lean_int_mul(x_3, x_10); +x_4 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_5 = lean_int_mul(x_3, x_4); lean_dec(x_3); -x_12 = lean_int_add(x_9, x_11); -lean_dec(x_11); -lean_dec(x_9); -x_13 = l_Std_Time_PlainTime_ofNanoseconds(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_1, 0); -lean_inc(x_14); -lean_dec(x_1); -x_15 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_14); -x_16 = lean_int_add(x_15, x_8); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_5); +lean_dec(x_5); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = lean_int_mul(x_8, x_4); lean_dec(x_8); +x_10 = lean_ctor_get(x_6, 1); +lean_inc(x_10); +lean_dec(x_6); +x_11 = lean_int_add(x_9, x_10); +lean_dec(x_10); +lean_dec(x_9); +x_12 = lean_ctor_get(x_7, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_4); +lean_dec(x_12); +x_14 = lean_ctor_get(x_7, 1); +lean_inc(x_14); +lean_dec(x_7); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_int_add(x_11, x_15); lean_dec(x_15); -x_17 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_16); +lean_dec(x_11); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_16); lean_dec(x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_13); +x_18 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_17); +lean_dec(x_17); return x_18; } } @@ -5034,42 +5154,44 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l_Std_Time_PlainDateTime_addMilliseconds___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400000u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMilliseconds(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = l_Std_Time_PlainTime_toMilliseconds(x_3); -x_5 = lean_int_add(x_4, x_2); +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; +x_3 = l_Std_Time_PlainDateTime_withMilliseconds___closed__2; +x_4 = lean_int_mul(x_2, x_3); +x_5 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_6 = l_Std_Time_Duration_ofNanoseconds(x_4); lean_dec(x_4); -x_6 = l_Std_Time_PlainDateTime_addMilliseconds___closed__1; -x_7 = lean_int_ediv(x_5, x_6); -lean_dec(x_5); -x_8 = l_Std_Time_PlainTime_addMilliseconds(x_3, x_2); -lean_dec(x_3); -x_9 = lean_ctor_get(x_1, 0); -lean_inc(x_9); -lean_dec(x_1); -x_10 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_11 = lean_int_add(x_10, x_7); +x_7 = lean_ctor_get(x_5, 0); +lean_inc(x_7); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); +x_10 = lean_ctor_get(x_5, 1); +lean_inc(x_10); +lean_dec(x_5); +x_11 = lean_int_add(x_9, x_10); lean_dec(x_10); -x_12 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_11); +lean_dec(x_9); +x_12 = lean_ctor_get(x_6, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_8); +lean_dec(x_12); +x_14 = lean_ctor_get(x_6, 1); +lean_inc(x_14); +lean_dec(x_6); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_int_add(x_11, x_15); +lean_dec(x_15); lean_dec(x_11); -x_13 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_13, 0, x_12); -lean_ctor_set(x_13, 1, x_8); -return x_13; +x_17 = l_Std_Time_Duration_ofNanoseconds(x_16); +lean_dec(x_16); +x_18 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_17); +lean_dec(x_17); +return x_18; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addMilliseconds___boxed(lean_object* x_1, lean_object* x_2) { @@ -5084,32 +5206,43 @@ return x_3; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subMilliseconds(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_3 = lean_int_neg(x_2); -x_4 = lean_ctor_get(x_1, 1); -lean_inc(x_4); -x_5 = l_Std_Time_PlainTime_toMilliseconds(x_4); -x_6 = lean_int_add(x_5, x_3); -lean_dec(x_5); -x_7 = l_Std_Time_PlainDateTime_addMilliseconds___closed__1; -x_8 = lean_int_ediv(x_6, x_7); -lean_dec(x_6); -x_9 = l_Std_Time_PlainTime_addMilliseconds(x_4, x_3); +x_4 = l_Std_Time_PlainDateTime_withMilliseconds___closed__2; +x_5 = lean_int_mul(x_3, x_4); lean_dec(x_3); -lean_dec(x_4); -x_10 = lean_ctor_get(x_1, 0); -lean_inc(x_10); -lean_dec(x_1); -x_11 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_10); -x_12 = lean_int_add(x_11, x_8); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_5); +lean_dec(x_5); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); +x_11 = lean_ctor_get(x_6, 1); +lean_inc(x_11); +lean_dec(x_6); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_13 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_12); +lean_dec(x_10); +x_13 = lean_ctor_get(x_7, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); +lean_dec(x_13); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); +lean_dec(x_16); lean_dec(x_12); -x_14 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_14, 0, x_13); -lean_ctor_set(x_14, 1, x_9); -return x_14; +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); +lean_dec(x_17); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); +return x_19; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subMilliseconds___boxed(lean_object* x_1, lean_object* x_2) { @@ -5121,251 +5254,6 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addNanoseconds(lean_object* x_1, lean_object* x_2) { -_start: -{ -uint8_t x_3; -x_3 = !lean_is_exclusive(x_1); -if (x_3 == 0) -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; uint8_t x_14; -x_4 = lean_ctor_get(x_1, 1); -x_5 = lean_ctor_get(x_4, 3); -lean_inc(x_5); -x_6 = lean_int_add(x_5, x_2); -lean_dec(x_5); -x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_8 = lean_int_ediv(x_6, x_7); -x_9 = lean_int_emod(x_6, x_7); -lean_dec(x_6); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_4); -lean_dec(x_4); -x_11 = lean_int_mul(x_8, x_7); -lean_dec(x_8); -x_12 = lean_int_add(x_10, x_11); -lean_dec(x_11); -lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_ofNanoseconds(x_12); -lean_dec(x_12); -x_14 = !lean_is_exclusive(x_13); -if (x_14 == 0) -{ -lean_object* x_15; -x_15 = lean_ctor_get(x_13, 3); -lean_dec(x_15); -lean_ctor_set(x_13, 3, x_9); -lean_ctor_set(x_1, 1, x_13); -return x_1; -} -else -{ -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_16 = lean_ctor_get(x_13, 0); -x_17 = lean_ctor_get(x_13, 1); -x_18 = lean_ctor_get(x_13, 2); -lean_inc(x_18); -lean_inc(x_17); -lean_inc(x_16); -lean_dec(x_13); -x_19 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_19, 0, x_16); -lean_ctor_set(x_19, 1, x_17); -lean_ctor_set(x_19, 2, x_18); -lean_ctor_set(x_19, 3, x_9); -lean_ctor_set(x_1, 1, x_19); -return x_1; -} -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; -x_20 = lean_ctor_get(x_1, 0); -x_21 = lean_ctor_get(x_1, 1); -lean_inc(x_21); -lean_inc(x_20); -lean_dec(x_1); -x_22 = lean_ctor_get(x_21, 3); -lean_inc(x_22); -x_23 = lean_int_add(x_22, x_2); -lean_dec(x_22); -x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_25 = lean_int_ediv(x_23, x_24); -x_26 = lean_int_emod(x_23, x_24); -lean_dec(x_23); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_21); -lean_dec(x_21); -x_28 = lean_int_mul(x_25, x_24); -lean_dec(x_25); -x_29 = lean_int_add(x_27, x_28); -lean_dec(x_28); -lean_dec(x_27); -x_30 = l_Std_Time_PlainTime_ofNanoseconds(x_29); -lean_dec(x_29); -x_31 = lean_ctor_get(x_30, 0); -lean_inc(x_31); -x_32 = lean_ctor_get(x_30, 1); -lean_inc(x_32); -x_33 = lean_ctor_get(x_30, 2); -lean_inc(x_33); -if (lean_is_exclusive(x_30)) { - lean_ctor_release(x_30, 0); - lean_ctor_release(x_30, 1); - lean_ctor_release(x_30, 2); - lean_ctor_release(x_30, 3); - x_34 = x_30; -} else { - lean_dec_ref(x_30); - x_34 = lean_box(0); -} -if (lean_is_scalar(x_34)) { - x_35 = lean_alloc_ctor(0, 4, 0); -} else { - x_35 = x_34; -} -lean_ctor_set(x_35, 0, x_31); -lean_ctor_set(x_35, 1, x_32); -lean_ctor_set(x_35, 2, x_33); -lean_ctor_set(x_35, 3, x_26); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_20); -lean_ctor_set(x_36, 1, x_35); -return x_36; -} -} -} -LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_addNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Std_Time_PlainDateTime_addNanoseconds(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subNanoseconds(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; uint8_t x_4; -x_3 = lean_int_neg(x_2); -x_4 = !lean_is_exclusive(x_1); -if (x_4 == 0) -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; -x_5 = lean_ctor_get(x_1, 1); -x_6 = lean_ctor_get(x_5, 3); -lean_inc(x_6); -x_7 = lean_int_add(x_6, x_3); -lean_dec(x_3); -lean_dec(x_6); -x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_9 = lean_int_ediv(x_7, x_8); -x_10 = lean_int_emod(x_7, x_8); -lean_dec(x_7); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_5); -lean_dec(x_5); -x_12 = lean_int_mul(x_9, x_8); -lean_dec(x_9); -x_13 = lean_int_add(x_11, x_12); -lean_dec(x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = !lean_is_exclusive(x_14); -if (x_15 == 0) -{ -lean_object* x_16; -x_16 = lean_ctor_get(x_14, 3); -lean_dec(x_16); -lean_ctor_set(x_14, 3, x_10); -lean_ctor_set(x_1, 1, x_14); -return x_1; -} -else -{ -lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_17 = lean_ctor_get(x_14, 0); -x_18 = lean_ctor_get(x_14, 1); -x_19 = lean_ctor_get(x_14, 2); -lean_inc(x_19); -lean_inc(x_18); -lean_inc(x_17); -lean_dec(x_14); -x_20 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_20, 0, x_17); -lean_ctor_set(x_20, 1, x_18); -lean_ctor_set(x_20, 2, x_19); -lean_ctor_set(x_20, 3, x_10); -lean_ctor_set(x_1, 1, x_20); -return x_1; -} -} -else -{ -lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_21 = lean_ctor_get(x_1, 0); -x_22 = lean_ctor_get(x_1, 1); -lean_inc(x_22); -lean_inc(x_21); -lean_dec(x_1); -x_23 = lean_ctor_get(x_22, 3); -lean_inc(x_23); -x_24 = lean_int_add(x_23, x_3); -lean_dec(x_3); -lean_dec(x_23); -x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; -x_26 = lean_int_ediv(x_24, x_25); -x_27 = lean_int_emod(x_24, x_25); -lean_dec(x_24); -x_28 = l_Std_Time_PlainTime_toNanoseconds(x_22); -lean_dec(x_22); -x_29 = lean_int_mul(x_26, x_25); -lean_dec(x_26); -x_30 = lean_int_add(x_28, x_29); -lean_dec(x_29); -lean_dec(x_28); -x_31 = l_Std_Time_PlainTime_ofNanoseconds(x_30); -lean_dec(x_30); -x_32 = lean_ctor_get(x_31, 0); -lean_inc(x_32); -x_33 = lean_ctor_get(x_31, 1); -lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 2); -lean_inc(x_34); -if (lean_is_exclusive(x_31)) { - lean_ctor_release(x_31, 0); - lean_ctor_release(x_31, 1); - lean_ctor_release(x_31, 2); - lean_ctor_release(x_31, 3); - x_35 = x_31; -} else { - lean_dec_ref(x_31); - x_35 = lean_box(0); -} -if (lean_is_scalar(x_35)) { - x_36 = lean_alloc_ctor(0, 4, 0); -} else { - x_36 = x_35; -} -lean_ctor_set(x_36, 0, x_32); -lean_ctor_set(x_36, 1, x_33); -lean_ctor_set(x_36, 2, x_34); -lean_ctor_set(x_36, 3, x_27); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_21); -lean_ctor_set(x_37, 1, x_36); -return x_37; -} -} -} -LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_subNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Std_Time_PlainDateTime_subNanoseconds(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_year(lean_object* x_1) { _start: { @@ -5987,119 +5875,44 @@ return x_1; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instHAddDuration(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_3 = lean_ctor_get(x_2, 0); x_4 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC___closed__2; x_5 = lean_int_mul(x_3, x_4); x_6 = lean_ctor_get(x_2, 1); x_7 = lean_int_add(x_5, x_6); lean_dec(x_5); -x_8 = !lean_is_exclusive(x_1); -if (x_8 == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_9 = lean_ctor_get(x_1, 1); -x_10 = lean_ctor_get(x_9, 3); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); +lean_dec(x_7); +x_10 = lean_ctor_get(x_8, 0); lean_inc(x_10); -x_11 = lean_int_add(x_10, x_7); -lean_dec(x_7); +x_11 = lean_int_mul(x_10, x_4); lean_dec(x_10); -x_12 = lean_int_ediv(x_11, x_4); -x_13 = lean_int_emod(x_11, x_4); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_9); -lean_dec(x_9); -x_15 = lean_int_mul(x_12, x_4); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); lean_dec(x_12); -x_16 = lean_int_add(x_14, x_15); -lean_dec(x_15); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_4); lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); lean_dec(x_16); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; -x_19 = lean_ctor_get(x_17, 3); -lean_dec(x_19); -lean_ctor_set(x_17, 3, x_13); -lean_ctor_set(x_1, 1, x_17); -return x_1; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; -x_20 = lean_ctor_get(x_17, 0); -x_21 = lean_ctor_get(x_17, 1); -x_22 = lean_ctor_get(x_17, 2); -lean_inc(x_22); -lean_inc(x_21); -lean_inc(x_20); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_23 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_23, 0, x_20); -lean_ctor_set(x_23, 1, x_21); -lean_ctor_set(x_23, 2, x_22); -lean_ctor_set(x_23, 3, x_13); -lean_ctor_set(x_1, 1, x_23); -return x_1; -} -} -else -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; -x_24 = lean_ctor_get(x_1, 0); -x_25 = lean_ctor_get(x_1, 1); -lean_inc(x_25); -lean_inc(x_24); -lean_dec(x_1); -x_26 = lean_ctor_get(x_25, 3); -lean_inc(x_26); -x_27 = lean_int_add(x_26, x_7); -lean_dec(x_7); -lean_dec(x_26); -x_28 = lean_int_ediv(x_27, x_4); -x_29 = lean_int_emod(x_27, x_4); -lean_dec(x_27); -x_30 = l_Std_Time_PlainTime_toNanoseconds(x_25); -lean_dec(x_25); -x_31 = lean_int_mul(x_28, x_4); -lean_dec(x_28); -x_32 = lean_int_add(x_30, x_31); -lean_dec(x_31); -lean_dec(x_30); -x_33 = l_Std_Time_PlainTime_ofNanoseconds(x_32); -lean_dec(x_32); -x_34 = lean_ctor_get(x_33, 0); -lean_inc(x_34); -x_35 = lean_ctor_get(x_33, 1); -lean_inc(x_35); -x_36 = lean_ctor_get(x_33, 2); -lean_inc(x_36); -if (lean_is_exclusive(x_33)) { - lean_ctor_release(x_33, 0); - lean_ctor_release(x_33, 1); - lean_ctor_release(x_33, 2); - lean_ctor_release(x_33, 3); - x_37 = x_33; -} else { - lean_dec_ref(x_33); - x_37 = lean_box(0); -} -if (lean_is_scalar(x_37)) { - x_38 = lean_alloc_ctor(0, 4, 0); -} else { - x_38 = x_37; -} -lean_ctor_set(x_38, 0, x_34); -lean_ctor_set(x_38, 1, x_35); -lean_ctor_set(x_38, 2, x_36); -lean_ctor_set(x_38, 3, x_29); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_24); -lean_ctor_set(x_39, 1, x_38); -return x_39; -} +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); +lean_dec(x_18); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); +return x_20; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instHAddDuration___boxed(lean_object* x_1, lean_object* x_2) { @@ -6350,8 +6163,10 @@ l_Std_Time_PlainDateTime_addWeeks___closed__1 = _init_l_Std_Time_PlainDateTime_a lean_mark_persistent(l_Std_Time_PlainDateTime_addWeeks___closed__1); l_Std_Time_PlainDateTime_addYearsRollOver___closed__1 = _init_l_Std_Time_PlainDateTime_addYearsRollOver___closed__1(); lean_mark_persistent(l_Std_Time_PlainDateTime_addYearsRollOver___closed__1); -l_Std_Time_PlainDateTime_addMilliseconds___closed__1 = _init_l_Std_Time_PlainDateTime_addMilliseconds___closed__1(); -lean_mark_persistent(l_Std_Time_PlainDateTime_addMilliseconds___closed__1); +l_Std_Time_PlainDateTime_addHours___closed__1 = _init_l_Std_Time_PlainDateTime_addHours___closed__1(); +lean_mark_persistent(l_Std_Time_PlainDateTime_addHours___closed__1); +l_Std_Time_PlainDateTime_addMinutes___closed__1 = _init_l_Std_Time_PlainDateTime_addMinutes___closed__1(); +lean_mark_persistent(l_Std_Time_PlainDateTime_addMinutes___closed__1); l_Std_Time_PlainDateTime_instHAddOffset___closed__1 = _init_l_Std_Time_PlainDateTime_instHAddOffset___closed__1(); lean_mark_persistent(l_Std_Time_PlainDateTime_instHAddOffset___closed__1); l_Std_Time_PlainDateTime_instHAddOffset = _init_l_Std_Time_PlainDateTime_instHAddOffset(); diff --git a/stage0/stdlib/Std/Time/Duration.c b/stage0/stdlib/Std/Time/Duration.c index 7d5b91e64d..921fcab09a 100644 --- a/stage0/stdlib/Std/Time/Duration.c +++ b/stage0/stdlib/Std/Time/Duration.c @@ -112,6 +112,7 @@ static lean_object* l___private_Std_Time_Duration_0__Std_Time_reprDuration____x4 lean_object* l_Std_Time_Hour_Offset_toSeconds___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_instReprDuration__1___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Duration_ofMillisecond(lean_object*); +lean_object* lean_int_div(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Duration_toMinutes___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Duration_addMilliseconds(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Duration_toSeconds(lean_object*); @@ -1310,7 +1311,7 @@ _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; x_2 = l_Std_Time_Duration_ofNanoseconds___closed__1; -x_3 = lean_int_ediv(x_1, x_2); +x_3 = lean_int_div(x_1, x_2); x_4 = lean_int_mod(x_1, x_2); x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_3); @@ -1517,7 +1518,7 @@ _start: lean_object* x_2; lean_object* x_3; lean_object* x_4; x_2 = lean_ctor_get(x_1, 0); x_3 = l_Std_Time_Duration_toMinutes___closed__1; -x_4 = lean_int_ediv(x_2, x_3); +x_4 = lean_int_div(x_2, x_3); return x_4; } } @@ -1545,7 +1546,7 @@ _start: lean_object* x_2; lean_object* x_3; lean_object* x_4; x_2 = lean_ctor_get(x_1, 0); x_3 = l_Std_Time_Duration_toDays___closed__1; -x_4 = lean_int_ediv(x_2, x_3); +x_4 = lean_int_div(x_2, x_3); return x_4; } } diff --git a/stage0/stdlib/Std/Time/Format.c b/stage0/stdlib/Std/Time/Format.c index 17365ce0cc..428b5bb8be 100644 --- a/stage0/stdlib/Std/Time/Format.c +++ b/stage0/stdlib/Std/Time/Format.c @@ -28,6 +28,7 @@ static lean_object* l_Std_Time_Formats_americanDate___closed__1; static lean_object* l_Std_Time_Formats_dateTime24Hour___closed__8; LEAN_EXPORT lean_object* l_Std_Time_Formats_leanDateTimeWithIdentifier; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_fromRFC822String(lean_object*); +lean_object* l_Std_Time_Duration_ofNanoseconds(lean_object*); static lean_object* l_Std_Time_PlainDate_instRepr___closed__3; static lean_object* l_Std_Time_Formats_iso8601___closed__25; LEAN_EXPORT lean_object* l_Std_Time_PlainDate_instRepr___boxed(lean_object*, lean_object*); @@ -44,7 +45,6 @@ lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); static lean_object* l_Std_Time_Formats_dateTime24Hour___closed__2; static lean_object* l_Std_Time_PlainTime_fromTime12Hour___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Formats_ascTime; -lean_object* l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(lean_object*); static lean_object* l_Std_Time_TimeZone_fromTimeZone___closed__4; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_format(lean_object*, lean_object*); extern lean_object* l_Std_Time_TimeZone_GMT; @@ -130,6 +130,7 @@ lean_object* l_Std_Time_PlainDate_quarter(lean_object*); static lean_object* l_Std_Time_Formats_leanDateTimeWithZone___closed__11; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_format___lambda__1(lean_object*, lean_object*); static lean_object* l_Std_Time_Formats_longDateFormat___closed__14; +static lean_object* l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2; static lean_object* l_Std_Time_PlainDate_format___lambda__1___closed__4; static lean_object* l_Std_Time_Formats_time24Hour___closed__4; static lean_object* l_Std_Time_Formats_iso8601___closed__30; @@ -175,7 +176,6 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDate_format(lean_object*, lean_object*) lean_object* l_Std_Time_ValidDate_dayOfYear(uint8_t, lean_object*); static lean_object* l_Std_Time_Formats_leanDateTime24Hour___closed__4; static lean_object* l_Std_Time_Formats_longDateFormat___closed__6; -lean_object* l_Std_Time_PlainTime_ofNanoseconds(lean_object*); static lean_object* l_Std_Time_Formats_iso8601___closed__22; static lean_object* l_Std_Time_Formats_leanDateTimeWithIdentifier___closed__11; static lean_object* l_Std_Time_Formats_dateTime24Hour___closed__13; @@ -291,7 +291,6 @@ static lean_object* l_Std_Time_Formats_dateTime24Hour___closed__7; static lean_object* l_Std_Time_Formats_dateTimeWithZone___closed__4; static lean_object* l_Std_Time_Formats_ascTime___closed__13; static lean_object* l_Std_Time_Formats_rfc850___closed__1; -static lean_object* l_Std_Time_ZonedDateTime_format___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Std_Time_TimeZone_fromTimeZone(lean_object*); static lean_object* l_Std_Time_Formats_leanDateTimeWithIdentifierAndNanos___closed__9; static lean_object* l_Std_Time_TimeZone_fromTimeZone___closed__1; @@ -321,6 +320,7 @@ uint8_t l_Std_Time_Year_Offset_era(lean_object*); static lean_object* l_Std_Time_Formats_rfc822___closed__11; static lean_object* l_Std_Time_Formats_dateTimeWithZone___closed__1; lean_object* l_Std_Time_Hour_Ordinal_toRelative(lean_object*); +static lean_object* l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_instRepr(lean_object*, lean_object*); static lean_object* l_Std_Time_Formats_ascTime___closed__19; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instRepr(lean_object*, lean_object*); @@ -371,7 +371,6 @@ static lean_object* l_Std_Time_Formats_leanDateTimeWithIdentifier___closed__18; uint8_t l_Std_Time_HourMarker_ofOrdinal(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainTime_fromLeanTime24Hour___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_format___lambda__1___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toSeconds(lean_object*); static lean_object* l_Std_Time_Formats_ascTime___closed__18; LEAN_EXPORT lean_object* l_Std_Time_Formats_europeanDate; lean_object* lean_int_add(lean_object*, lean_object*); @@ -387,10 +386,8 @@ static lean_object* l_Std_Time_Formats_leanDateTimeWithZoneNoNanos___closed__11; lean_object* lean_string_append(lean_object*, lean_object*); static lean_object* l_Std_Time_PlainTime_format___lambda__1___closed__1; LEAN_EXPORT lean_object* l_Std_Time_TimeZone_fromTimeZone___lambda__1(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_fromAscTimeString(lean_object*); static lean_object* l_Std_Time_TimeZone_Offset_fromOffset___closed__2; -lean_object* lean_int_ediv(lean_object*, lean_object*); static lean_object* l_Std_Time_Formats_rfc850___closed__2; static lean_object* l_Std_Time_Formats_iso8601___closed__18; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instRepr___boxed(lean_object*, lean_object*); @@ -426,6 +423,7 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_fromRFC850String(lean_object*) static lean_object* l_Std_Time_Formats_leanDateTimeWithZoneNoNanos___closed__1; static lean_object* l_Std_Time_PlainDate_fromAmericanDateString___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Formats_time24Hour; +static lean_object* l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4; static lean_object* l_Std_Time_Formats_longDateFormat___closed__12; static lean_object* l_Std_Time_Formats_leanDateTimeWithIdentifierAndNanos___closed__8; static lean_object* l_Std_Time_Formats_ascTime___closed__17; @@ -4908,15 +4906,6 @@ static lean_object* _init_l_Std_Time_ZonedDateTime_format___lambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_Time_ZonedDateTime_format___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; x_1 = lean_unsigned_to_nat(1000000000u); x_2 = lean_nat_to_int(x_1); return x_2; @@ -4928,35 +4917,38 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_4, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_5); +x_6 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; +x_7 = lean_int_mul(x_5, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_4); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__2; -x_13 = lean_int_mul(x_5, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_4, 0); -lean_inc(x_16); -lean_dec(x_4); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -6479,58 +6471,75 @@ lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; x_1 = l_Std_Time_TimeZone_UTC; x_2 = lean_ctor_get(x_1, 0); lean_inc(x_2); -x_3 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__2; +x_3 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; x_4 = lean_int_mul(x_2, x_3); lean_dec(x_2); return x_4; } } +static lean_object* _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; +x_1 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__1; +x_2 = l_Std_Time_Duration_ofNanoseconds(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2; +x_2 = lean_ctor_get(x_1, 0); +lean_inc(x_2); +x_3 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; +x_4 = lean_int_mul(x_2, x_3); +lean_dec(x_2); +return x_4; +} +} +static lean_object* _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4() { +_start: +{ +lean_object* x_1; lean_object* x_2; lean_object* x_3; lean_object* x_4; +x_1 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2; +x_2 = lean_ctor_get(x_1, 1); +lean_inc(x_2); +x_3 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3; +x_4 = lean_int_add(x_3, x_2); +lean_dec(x_2); +return x_4; +} +} LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_toAscTimeString___lambda__1(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; -x_3 = l_Std_Time_TimeZone_UTC; -x_4 = lean_ctor_get(x_3, 0); -lean_inc(x_4); -x_5 = lean_ctor_get(x_1, 1); -lean_inc(x_5); -x_6 = l_Std_Time_PlainTime_toSeconds(x_5); -x_7 = lean_int_add(x_6, x_4); -lean_dec(x_4); -lean_dec(x_6); -x_8 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; -x_9 = lean_int_ediv(x_7, x_8); -lean_dec(x_7); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_5); +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; +x_3 = lean_ctor_get(x_1, 0); +x_4 = l_Std_Time_ZonedDateTime_format___lambda__1___closed__1; +x_5 = lean_int_mul(x_3, x_4); +x_6 = lean_ctor_get(x_1, 1); +x_7 = lean_int_add(x_5, x_6); lean_dec(x_5); -x_11 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__1; -x_12 = lean_int_add(x_10, x_11); -lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_ofNanoseconds(x_12); -lean_dec(x_12); -x_14 = lean_ctor_get(x_1, 0); -lean_inc(x_14); -lean_dec(x_1); -x_15 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_14); -x_16 = lean_int_add(x_15, x_9); +x_8 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4; +x_9 = lean_int_add(x_7, x_8); +lean_dec(x_7); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_9); lean_dec(x_9); -lean_dec(x_15); -x_17 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_16); -lean_dec(x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_13); -return x_18; +x_11 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_10); +lean_dec(x_10); +return x_11; } } LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_toAscTimeString(lean_object* x_1) { _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -lean_inc(x_1); x_2 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +lean_inc(x_2); x_3 = lean_alloc_closure((void*)(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___boxed), 2, 1); -lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 0, x_2); x_4 = lean_mk_thunk(x_3); x_5 = l_Std_Time_TimeZone_UTC; x_6 = lean_alloc_ctor(0, 2, 0); @@ -6548,6 +6557,7 @@ _start: lean_object* x_3; x_3 = l_Std_Time_PlainDateTime_toAscTimeString___lambda__1(x_1, x_2); lean_dec(x_2); +lean_dec(x_1); return x_3; } } @@ -6615,10 +6625,10 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_toLongDateFormatString(lean_ob _start: { lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; -lean_inc(x_1); x_2 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +lean_inc(x_2); x_3 = lean_alloc_closure((void*)(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___boxed), 2, 1); -lean_closure_set(x_3, 0, x_1); +lean_closure_set(x_3, 0, x_2); x_4 = lean_mk_thunk(x_3); x_5 = l_Std_Time_TimeZone_UTC; x_6 = lean_alloc_ctor(0, 2, 0); @@ -7823,8 +7833,6 @@ l_Std_Time_PlainTime_instRepr___closed__2 = _init_l_Std_Time_PlainTime_instRepr_ lean_mark_persistent(l_Std_Time_PlainTime_instRepr___closed__2); l_Std_Time_ZonedDateTime_format___lambda__1___closed__1 = _init_l_Std_Time_ZonedDateTime_format___lambda__1___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_format___lambda__1___closed__1); -l_Std_Time_ZonedDateTime_format___lambda__1___closed__2 = _init_l_Std_Time_ZonedDateTime_format___lambda__1___closed__2(); -lean_mark_persistent(l_Std_Time_ZonedDateTime_format___lambda__1___closed__2); l_Std_Time_ZonedDateTime_instToString___closed__1 = _init_l_Std_Time_ZonedDateTime_instToString___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_instToString___closed__1); l_Std_Time_ZonedDateTime_instToString = _init_l_Std_Time_ZonedDateTime_instToString(); @@ -7837,6 +7845,12 @@ l_Std_Time_PlainDateTime_fromAscTimeString___closed__1 = _init_l_Std_Time_PlainD lean_mark_persistent(l_Std_Time_PlainDateTime_fromAscTimeString___closed__1); l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__1 = _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__1(); lean_mark_persistent(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__1); +l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2 = _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2(); +lean_mark_persistent(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__2); +l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3 = _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3(); +lean_mark_persistent(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__3); +l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4 = _init_l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4(); +lean_mark_persistent(l_Std_Time_PlainDateTime_toAscTimeString___lambda__1___closed__4); l_Std_Time_PlainDateTime_instToString___closed__1 = _init_l_Std_Time_PlainDateTime_instToString___closed__1(); lean_mark_persistent(l_Std_Time_PlainDateTime_instToString___closed__1); l_Std_Time_PlainDateTime_instToString = _init_l_Std_Time_PlainDateTime_instToString(); diff --git a/stage0/stdlib/Std/Time/Format/Basic.c b/stage0/stdlib/Std/Time/Format/Basic.c index 50680c5fa3..a5722ce454 100644 --- a/stage0/stdlib/Std/Time/Format/Basic.c +++ b/stage0/stdlib/Std/Time/Format/Basic.c @@ -78,7 +78,6 @@ static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprOffsetO___ LEAN_EXPORT lean_object* l_Std_Time_instReprGenericFormat___boxed(lean_object*); lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); LEAN_EXPORT lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_formatEraShort___boxed(lean_object*); -static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModifier___closed__35; lean_object* l_String_toNat_x21(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModifier___closed__82; @@ -86,7 +85,6 @@ LEAN_EXPORT lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseFrac LEAN_EXPORT lean_object* l_Std_Time_Text_noConfusion___rarg___lambda__1___boxed(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModifier___closed__78; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprOffsetO____x40_Std_Time_Format_Basic___hyg_1279____closed__6; -lean_object* l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModifier___closed__48; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_formatWith___closed__4; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprFraction____x40_Std_Time_Format_Basic___hyg_315____closed__9; @@ -930,7 +928,6 @@ LEAN_EXPORT lean_object* l_Std_Internal_Parsec_manyCharsCore___at___private_Std_ static lean_object* l_Std_Time_OffsetO_classify___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Text_noConfusion___rarg___boxed(lean_object*, lean_object*, lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_formatMarkerNarrow___closed__1; -lean_object* l_Std_Time_PlainTime_toSeconds(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprFormatPart____x40_Std_Time_Format_Basic___hyg_3711____closed__5; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprYear____x40_Std_Time_Format_Basic___hyg_469____closed__8; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprFormatPart____x40_Std_Time_Format_Basic___hyg_3711____closed__3; @@ -969,11 +966,9 @@ LEAN_EXPORT lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModi LEAN_EXPORT lean_object* l_Std_Time_OffsetX_toCtorIdx___boxed(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_formatMonthNarrow___closed__1; LEAN_EXPORT lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_dateFromModifier___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprFraction____x40_Std_Time_Format_Basic___hyg_315____closed__7; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_parseModifier___closed__7; static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_reprText____x40_Std_Time_Format_Basic___hyg_15____closed__16; -lean_object* lean_int_ediv(lean_object*, lean_object*); static lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_formatMonthNarrow___closed__8; LEAN_EXPORT lean_object* l_Std_Time_OffsetZ_classify___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_GenericFormat_formatBuilder_go___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); @@ -85610,48 +85605,42 @@ x_4 = lean_int_dec_le(x_1, x_3); return x_4; } } -static lean_object* _init_l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_2); -lean_dec(x_7); -x_9 = l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); +x_6 = lean_int_mul(x_2, x_3); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_6); lean_dec(x_6); -x_12 = lean_int_mul(x_2, x_3); -x_13 = lean_int_add(x_11, x_12); -lean_dec(x_12); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_int_mul(x_9, x_3); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +lean_dec(x_7); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_5, 0); -lean_inc(x_15); -lean_dec(x_5); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_10); lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_3); +lean_dec(x_13); +x_15 = lean_ctor_get(x_8, 1); +lean_inc(x_15); +lean_dec(x_8); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); return x_19; } } @@ -85929,35 +85918,40 @@ lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_ob x_7 = lean_ctor_get(x_3, 0); x_8 = lean_ctor_get(x_4, 0); x_9 = lean_int_neg(x_8); -x_10 = lean_ctor_get(x_7, 1); -lean_inc(x_10); -x_11 = l_Std_Time_PlainTime_toSeconds(x_10); -x_12 = lean_int_add(x_11, x_9); -lean_dec(x_11); -x_13 = l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1; -x_14 = lean_int_ediv(x_12, x_13); -lean_dec(x_12); -x_15 = l_Std_Time_PlainTime_toNanoseconds(x_10); -lean_dec(x_10); -x_16 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; -x_17 = lean_int_mul(x_9, x_16); +x_10 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; +x_11 = lean_int_mul(x_9, x_10); lean_dec(x_9); -x_18 = lean_int_add(x_15, x_17); -lean_dec(x_17); -lean_dec(x_15); -x_19 = l_Std_Time_PlainTime_ofNanoseconds(x_18); -lean_dec(x_18); -x_20 = lean_ctor_get(x_7, 0); -lean_inc(x_20); -x_21 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_20); -x_22 = lean_int_add(x_21, x_14); +lean_inc(x_7); +x_12 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_7); +x_13 = l_Std_Time_Duration_ofNanoseconds(x_11); +lean_dec(x_11); +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_10); lean_dec(x_14); +x_16 = lean_ctor_get(x_12, 1); +lean_inc(x_16); +lean_dec(x_12); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_ctor_get(x_13, 0); +lean_inc(x_18); +x_19 = lean_int_mul(x_18, x_10); +lean_dec(x_18); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_dec(x_13); +x_21 = lean_int_add(x_19, x_20); +lean_dec(x_20); +lean_dec(x_19); +x_22 = lean_int_add(x_17, x_21); lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_22); +lean_dec(x_17); +x_23 = l_Std_Time_Duration_ofNanoseconds(x_22); lean_dec(x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_19); +x_24 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_23); +lean_dec(x_23); x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_24); x_26 = lean_alloc_closure((void*)(l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__1___boxed), 2, 1); lean_closure_set(x_26, 0, x_7); @@ -85976,35 +85970,40 @@ lean_inc(x_29); lean_dec(x_3); x_30 = lean_ctor_get(x_4, 0); x_31 = lean_int_neg(x_30); -x_32 = lean_ctor_get(x_29, 1); -lean_inc(x_32); -x_33 = l_Std_Time_PlainTime_toSeconds(x_32); -x_34 = lean_int_add(x_33, x_31); -lean_dec(x_33); -x_35 = l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1; -x_36 = lean_int_ediv(x_34, x_35); -lean_dec(x_34); -x_37 = l_Std_Time_PlainTime_toNanoseconds(x_32); -lean_dec(x_32); -x_38 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; -x_39 = lean_int_mul(x_31, x_38); +x_32 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; +x_33 = lean_int_mul(x_31, x_32); lean_dec(x_31); -x_40 = lean_int_add(x_37, x_39); -lean_dec(x_39); -lean_dec(x_37); -x_41 = l_Std_Time_PlainTime_ofNanoseconds(x_40); -lean_dec(x_40); -x_42 = lean_ctor_get(x_29, 0); -lean_inc(x_42); -x_43 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_42); -x_44 = lean_int_add(x_43, x_36); +lean_inc(x_29); +x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_29); +x_35 = l_Std_Time_Duration_ofNanoseconds(x_33); +lean_dec(x_33); +x_36 = lean_ctor_get(x_34, 0); +lean_inc(x_36); +x_37 = lean_int_mul(x_36, x_32); lean_dec(x_36); +x_38 = lean_ctor_get(x_34, 1); +lean_inc(x_38); +lean_dec(x_34); +x_39 = lean_int_add(x_37, x_38); +lean_dec(x_38); +lean_dec(x_37); +x_40 = lean_ctor_get(x_35, 0); +lean_inc(x_40); +x_41 = lean_int_mul(x_40, x_32); +lean_dec(x_40); +x_42 = lean_ctor_get(x_35, 1); +lean_inc(x_42); +lean_dec(x_35); +x_43 = lean_int_add(x_41, x_42); +lean_dec(x_42); +lean_dec(x_41); +x_44 = lean_int_add(x_39, x_43); lean_dec(x_43); -x_45 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_44); +lean_dec(x_39); +x_45 = l_Std_Time_Duration_ofNanoseconds(x_44); lean_dec(x_44); -x_46 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_46, 0, x_45); -lean_ctor_set(x_46, 1, x_41); +x_46 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_45); +lean_dec(x_45); x_47 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_46); x_48 = lean_alloc_closure((void*)(l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__1___boxed), 2, 1); lean_closure_set(x_48, 0, x_29); @@ -87091,35 +87090,38 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_4, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_5); +x_6 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; +x_7 = lean_int_mul(x_5, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_4); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l___private_Std_Time_Format_Basic_0__Std_Time_toIsoString___closed__1; -x_13 = lean_int_mul(x_5, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_4, 0); -lean_inc(x_16); -lean_dec(x_4); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -89320,8 +89322,6 @@ l___private_Std_Time_Format_Basic_0__Std_Time_parseWith___closed__3 = _init_l___ lean_mark_persistent(l___private_Std_Time_Format_Basic_0__Std_Time_parseWith___closed__3); l___private_Std_Time_Format_Basic_0__Std_Time_parseWith___closed__4 = _init_l___private_Std_Time_Format_Basic_0__Std_Time_parseWith___closed__4(); lean_mark_persistent(l___private_Std_Time_Format_Basic_0__Std_Time_parseWith___closed__4); -l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1 = _init_l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1(); -lean_mark_persistent(l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___lambda__3___closed__1); l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___closed__1 = _init_l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___closed__1(); lean_mark_persistent(l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___closed__1); l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___closed__2 = _init_l___private_Std_Time_Format_Basic_0__Std_Time_GenericFormat_DateBuilder_build___closed__2(); diff --git a/stage0/stdlib/Std/Time/Internal/UnitVal.c b/stage0/stdlib/Std/Time/Internal/UnitVal.c index 22bc868c49..edef24a661 100644 --- a/stage0/stdlib/Std/Time/Internal/UnitVal.c +++ b/stage0/stdlib/Std/Time/Internal/UnitVal.c @@ -20,6 +20,7 @@ LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instLT(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instLE(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_toInt(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instNeg___boxed(lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instToString___rarg___boxed(lean_object*); static lean_object* l_Std_Time_Internal_UnitVal_instSub___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_toInt___rarg___boxed(lean_object*); @@ -28,6 +29,7 @@ LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_mul___boxed(lean_object*); uint8_t lean_int_dec_le(lean_object*, lean_object*); static lean_object* l_Std_Time_Internal_UnitVal_instToString___rarg___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_div___rarg(lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___rarg___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_Internal_instInhabitedUnitVal___closed__1; LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_convert(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instOfNat(lean_object*); @@ -69,6 +71,7 @@ lean_object* lean_nat_abs(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_abs___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_add___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instSub(lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_abs___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_instDecidableLeUnitVal___rarg___boxed(lean_object*, lean_object*); lean_object* lean_int_mul(lean_object*, lean_object*); @@ -84,6 +87,7 @@ LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instToString(lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instAdd(lean_object*); static lean_object* l_Std_Time_Internal_instBEqUnitVal___closed__1; +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_div(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_ofNat___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_instLT___boxed(lean_object*); @@ -374,6 +378,41 @@ lean_dec(x_1); return x_2; } } +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___rarg(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = lean_int_div(x_1, x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = lean_alloc_closure((void*)(l_Std_Time_Internal_UnitVal_tdiv___rarg___boxed), 2, 0); +return x_2; +} +} +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___rarg___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_Time_Internal_UnitVal_tdiv___rarg(x_1, x_2); +lean_dec(x_2); +lean_dec(x_1); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_tdiv___boxed(lean_object* x_1) { +_start: +{ +lean_object* x_2; +x_2 = l_Std_Time_Internal_UnitVal_tdiv(x_1); +lean_dec(x_1); +return x_2; +} +} LEAN_EXPORT lean_object* l_Std_Time_Internal_UnitVal_div___rarg(lean_object* x_1, lean_object* x_2) { _start: { diff --git a/stage0/stdlib/Std/Time/Zoned.c b/stage0/stdlib/Std/Time/Zoned.c index 22a9247db5..1980713612 100644 --- a/stage0/stdlib/Std/Time/Zoned.c +++ b/stage0/stdlib/Std/Time/Zoned.c @@ -19,11 +19,9 @@ lean_object* l_Std_Time_Duration_ofNanoseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDate_toTimestampWithZone(lean_object*, lean_object*); lean_object* l_Std_Time_TimeZone_LocalTimeType_getTimeZone(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_nowAt(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); lean_object* l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_toTimestampWithZone___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_now(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_DateTime_now___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDate_toTimestamp(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_toTimestampWithZone(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDate_now(lean_object*); @@ -32,14 +30,13 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDateWithZone___boxed(le LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_now(lean_object*); lean_object* l_Std_Time_Database_defaultGetLocalZoneRules(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDate___lambda__2___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDate_toTimestampWithZone___boxed(lean_object*, lean_object*); uint8_t lean_int_dec_le(lean_object*, lean_object*); -static lean_object* l_Std_Time_PlainDateTime_now___closed__2; +static lean_object* l_Std_Time_DateTime_ofPlainDate___closed__2; lean_object* lean_nat_to_int(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDate___lambda__1___boxed(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_ofNanoseconds(lean_object*); extern lean_object* l_Std_Time_PlainTime_midnight; lean_object* l_Array_back_x3f___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_PlainDateTime_now(lean_object*); @@ -53,7 +50,7 @@ lean_object* lean_thunk_get_own(lean_object*); LEAN_EXPORT uint8_t l_Std_Time_ZonedDateTime_ofPlainDate___lambda__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_toPlainDate___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainTime(lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_mk_thunk(lean_object*); lean_object* lean_int_sub(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDateWithZone(lean_object*, lean_object*); @@ -70,11 +67,9 @@ LEAN_EXPORT lean_object* l_Std_Time_PlainTime_now(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainTime___rarg(lean_object*); uint8_t lean_int_dec_lt(lean_object*, lean_object*); lean_object* lean_nat_sub(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_DateTime_now___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainTime___boxed(lean_object*); lean_object* lean_array_mk(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainDate___rarg(lean_object*); -lean_object* l_Std_Time_PlainTime_toSeconds(lean_object*); lean_object* lean_int_add(lean_object*, lean_object*); static lean_object* l_Std_Time_ZonedDateTime_ofPlainDateWithZone___closed__1; lean_object* lean_get_current_time(lean_object*); @@ -91,15 +86,6 @@ static lean_object* _init_l_Std_Time_PlainDateTime_now___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_Time_PlainDateTime_now___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; x_1 = lean_unsigned_to_nat(1000000000u); x_2 = lean_nat_to_int(x_1); return x_2; @@ -125,7 +111,7 @@ uint8_t x_6; x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_7 = lean_ctor_get(x_5, 0); x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); @@ -134,53 +120,56 @@ x_9 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_8, x_3); lean_dec(x_8); x_10 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_11 = lean_ctor_get(x_10, 1); -lean_inc(x_11); -x_12 = l_Std_Time_PlainTime_toSeconds(x_11); -x_13 = l_Std_Time_PlainTime_toNanoseconds(x_11); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = l_Std_Time_PlainDateTime_now___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); lean_dec(x_11); -x_14 = lean_ctor_get(x_10, 0); -lean_inc(x_14); -lean_dec(x_10); -x_15 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_14); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); if (lean_obj_tag(x_9) == 0) { -lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; -x_16 = lean_ctor_get(x_7, 0); -lean_inc(x_16); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; +x_17 = lean_ctor_get(x_7, 0); +lean_inc(x_17); lean_dec(x_7); -x_17 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_16); -lean_dec(x_16); -x_18 = lean_ctor_get(x_17, 0); -lean_inc(x_18); +x_18 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_17); lean_dec(x_17); -x_19 = lean_int_add(x_12, x_18); -lean_dec(x_12); -x_20 = l_Std_Time_PlainDateTime_now___closed__1; -x_21 = lean_int_ediv(x_19, x_20); -lean_dec(x_19); -x_22 = l_Std_Time_PlainDateTime_now___closed__2; -x_23 = lean_int_mul(x_18, x_22); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); lean_dec(x_18); -x_24 = lean_int_add(x_13, x_23); -lean_dec(x_23); -lean_dec(x_13); -x_25 = l_Std_Time_PlainTime_ofNanoseconds(x_24); -lean_dec(x_24); -x_26 = lean_int_add(x_15, x_21); +x_20 = lean_int_mul(x_19, x_13); +lean_dec(x_19); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_13); +lean_dec(x_22); +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); lean_dec(x_21); -lean_dec(x_15); -x_27 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_26); +x_25 = lean_int_add(x_23, x_24); +lean_dec(x_24); +lean_dec(x_23); +x_26 = lean_int_add(x_16, x_25); +lean_dec(x_25); +lean_dec(x_16); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); lean_dec(x_26); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_25); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); +lean_dec(x_27); lean_ctor_set(x_5, 0, x_28); return x_5; } else { -lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; +lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_dec(x_7); x_29 = lean_ctor_get(x_9, 0); lean_inc(x_29); @@ -193,179 +182,182 @@ lean_dec(x_30); x_32 = lean_ctor_get(x_31, 0); lean_inc(x_32); lean_dec(x_31); -x_33 = lean_int_add(x_12, x_32); -lean_dec(x_12); -x_34 = l_Std_Time_PlainDateTime_now___closed__1; -x_35 = lean_int_ediv(x_33, x_34); -lean_dec(x_33); -x_36 = l_Std_Time_PlainDateTime_now___closed__2; -x_37 = lean_int_mul(x_32, x_36); +x_33 = lean_int_mul(x_32, x_13); lean_dec(x_32); -x_38 = lean_int_add(x_13, x_37); -lean_dec(x_37); -lean_dec(x_13); -x_39 = l_Std_Time_PlainTime_ofNanoseconds(x_38); -lean_dec(x_38); -x_40 = lean_int_add(x_15, x_35); +x_34 = l_Std_Time_Duration_ofNanoseconds(x_33); +lean_dec(x_33); +x_35 = lean_ctor_get(x_34, 0); +lean_inc(x_35); +x_36 = lean_int_mul(x_35, x_13); lean_dec(x_35); -lean_dec(x_15); -x_41 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_40); +x_37 = lean_ctor_get(x_34, 1); +lean_inc(x_37); +lean_dec(x_34); +x_38 = lean_int_add(x_36, x_37); +lean_dec(x_37); +lean_dec(x_36); +x_39 = lean_int_add(x_16, x_38); +lean_dec(x_38); +lean_dec(x_16); +x_40 = l_Std_Time_Duration_ofNanoseconds(x_39); +lean_dec(x_39); +x_41 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_40); lean_dec(x_40); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_41); -lean_ctor_set(x_42, 1, x_39); -lean_ctor_set(x_5, 0, x_42); +lean_ctor_set(x_5, 0, x_41); return x_5; } } else { -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; -x_43 = lean_ctor_get(x_5, 0); -x_44 = lean_ctor_get(x_5, 1); -lean_inc(x_44); +lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; +x_42 = lean_ctor_get(x_5, 0); +x_43 = lean_ctor_get(x_5, 1); lean_inc(x_43); +lean_inc(x_42); lean_dec(x_5); -x_45 = lean_ctor_get(x_43, 1); -lean_inc(x_45); +x_44 = lean_ctor_get(x_42, 1); +lean_inc(x_44); lean_inc(x_3); -x_46 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_45, x_3); -lean_dec(x_45); -x_47 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); +x_45 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_44, x_3); +lean_dec(x_44); +x_46 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_48 = lean_ctor_get(x_47, 1); +x_47 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_46); +x_48 = lean_ctor_get(x_47, 0); lean_inc(x_48); -x_49 = l_Std_Time_PlainTime_toSeconds(x_48); -x_50 = l_Std_Time_PlainTime_toNanoseconds(x_48); +x_49 = l_Std_Time_PlainDateTime_now___closed__1; +x_50 = lean_int_mul(x_48, x_49); lean_dec(x_48); -x_51 = lean_ctor_get(x_47, 0); +x_51 = lean_ctor_get(x_47, 1); lean_inc(x_51); lean_dec(x_47); -x_52 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_51); -if (lean_obj_tag(x_46) == 0) +x_52 = lean_int_add(x_50, x_51); +lean_dec(x_51); +lean_dec(x_50); +if (lean_obj_tag(x_45) == 0) { -lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; -x_53 = lean_ctor_get(x_43, 0); +lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; +x_53 = lean_ctor_get(x_42, 0); lean_inc(x_53); -lean_dec(x_43); +lean_dec(x_42); x_54 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_53); lean_dec(x_53); x_55 = lean_ctor_get(x_54, 0); lean_inc(x_55); lean_dec(x_54); -x_56 = lean_int_add(x_49, x_55); -lean_dec(x_49); -x_57 = l_Std_Time_PlainDateTime_now___closed__1; -x_58 = lean_int_ediv(x_56, x_57); -lean_dec(x_56); -x_59 = l_Std_Time_PlainDateTime_now___closed__2; -x_60 = lean_int_mul(x_55, x_59); +x_56 = lean_int_mul(x_55, x_49); lean_dec(x_55); -x_61 = lean_int_add(x_50, x_60); -lean_dec(x_60); -lean_dec(x_50); -x_62 = l_Std_Time_PlainTime_ofNanoseconds(x_61); -lean_dec(x_61); -x_63 = lean_int_add(x_52, x_58); +x_57 = l_Std_Time_Duration_ofNanoseconds(x_56); +lean_dec(x_56); +x_58 = lean_ctor_get(x_57, 0); +lean_inc(x_58); +x_59 = lean_int_mul(x_58, x_49); lean_dec(x_58); +x_60 = lean_ctor_get(x_57, 1); +lean_inc(x_60); +lean_dec(x_57); +x_61 = lean_int_add(x_59, x_60); +lean_dec(x_60); +lean_dec(x_59); +x_62 = lean_int_add(x_52, x_61); +lean_dec(x_61); lean_dec(x_52); -x_64 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_63); +x_63 = l_Std_Time_Duration_ofNanoseconds(x_62); +lean_dec(x_62); +x_64 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_63); lean_dec(x_63); x_65 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_65, 0, x_64); -lean_ctor_set(x_65, 1, x_62); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_65); -lean_ctor_set(x_66, 1, x_44); -return x_66; +lean_ctor_set(x_65, 1, x_43); +return x_65; } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; -lean_dec(x_43); -x_67 = lean_ctor_get(x_46, 0); +lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; +lean_dec(x_42); +x_66 = lean_ctor_get(x_45, 0); +lean_inc(x_66); +lean_dec(x_45); +x_67 = lean_ctor_get(x_66, 1); lean_inc(x_67); -lean_dec(x_46); -x_68 = lean_ctor_get(x_67, 1); -lean_inc(x_68); +lean_dec(x_66); +x_68 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_67); lean_dec(x_67); -x_69 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_68); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); lean_dec(x_68); -x_70 = lean_ctor_get(x_69, 0); -lean_inc(x_70); +x_70 = lean_int_mul(x_69, x_49); lean_dec(x_69); -x_71 = lean_int_add(x_49, x_70); -lean_dec(x_49); -x_72 = l_Std_Time_PlainDateTime_now___closed__1; -x_73 = lean_int_ediv(x_71, x_72); -lean_dec(x_71); -x_74 = l_Std_Time_PlainDateTime_now___closed__2; -x_75 = lean_int_mul(x_70, x_74); +x_71 = l_Std_Time_Duration_ofNanoseconds(x_70); lean_dec(x_70); -x_76 = lean_int_add(x_50, x_75); -lean_dec(x_75); -lean_dec(x_50); -x_77 = l_Std_Time_PlainTime_ofNanoseconds(x_76); -lean_dec(x_76); -x_78 = lean_int_add(x_52, x_73); +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +x_73 = lean_int_mul(x_72, x_49); +lean_dec(x_72); +x_74 = lean_ctor_get(x_71, 1); +lean_inc(x_74); +lean_dec(x_71); +x_75 = lean_int_add(x_73, x_74); +lean_dec(x_74); lean_dec(x_73); +x_76 = lean_int_add(x_52, x_75); +lean_dec(x_75); lean_dec(x_52); -x_79 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_78); -lean_dec(x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_79); -lean_ctor_set(x_80, 1, x_77); -x_81 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_81, 0, x_80); -lean_ctor_set(x_81, 1, x_44); -return x_81; +x_77 = l_Std_Time_Duration_ofNanoseconds(x_76); +lean_dec(x_76); +x_78 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_77); +lean_dec(x_77); +x_79 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_79, 0, x_78); +lean_ctor_set(x_79, 1, x_43); +return x_79; } } } else { -uint8_t x_82; +uint8_t x_80; lean_dec(x_3); -x_82 = !lean_is_exclusive(x_5); -if (x_82 == 0) +x_80 = !lean_is_exclusive(x_5); +if (x_80 == 0) { return x_5; } else { -lean_object* x_83; lean_object* x_84; lean_object* x_85; -x_83 = lean_ctor_get(x_5, 0); -x_84 = lean_ctor_get(x_5, 1); -lean_inc(x_84); -lean_inc(x_83); +lean_object* x_81; lean_object* x_82; lean_object* x_83; +x_81 = lean_ctor_get(x_5, 0); +x_82 = lean_ctor_get(x_5, 1); +lean_inc(x_82); +lean_inc(x_81); lean_dec(x_5); -x_85 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_85, 0, x_83); -lean_ctor_set(x_85, 1, x_84); -return x_85; +x_83 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_83, 0, x_81); +lean_ctor_set(x_83, 1, x_82); +return x_83; } } } else { -uint8_t x_86; -x_86 = !lean_is_exclusive(x_2); -if (x_86 == 0) +uint8_t x_84; +x_84 = !lean_is_exclusive(x_2); +if (x_84 == 0) { return x_2; } else { -lean_object* x_87; lean_object* x_88; lean_object* x_89; -x_87 = lean_ctor_get(x_2, 0); -x_88 = lean_ctor_get(x_2, 1); -lean_inc(x_88); -lean_inc(x_87); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_2, 0); +x_86 = lean_ctor_get(x_2, 1); +lean_inc(x_86); +lean_inc(x_85); lean_dec(x_2); -x_89 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_89, 0, x_87); -lean_ctor_set(x_89, 1, x_88); -return x_89; +x_87 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +return x_87; } } } @@ -390,7 +382,7 @@ uint8_t x_6; x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_7 = lean_ctor_get(x_5, 0); x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); @@ -399,196 +391,256 @@ x_9 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_8, x_3); lean_dec(x_8); x_10 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_11 = lean_ctor_get(x_10, 1); -lean_inc(x_11); -x_12 = l_Std_Time_PlainTime_toSeconds(x_11); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = l_Std_Time_PlainDateTime_now___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); lean_dec(x_11); -x_13 = lean_ctor_get(x_10, 0); -lean_inc(x_13); -lean_dec(x_10); -x_14 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); if (lean_obj_tag(x_9) == 0) { -lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; -x_15 = lean_ctor_get(x_7, 0); -lean_inc(x_15); -lean_dec(x_7); -x_16 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_16, 0); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_17 = lean_ctor_get(x_7, 0); lean_inc(x_17); -lean_dec(x_16); -x_18 = lean_int_add(x_12, x_17); -lean_dec(x_17); -lean_dec(x_12); -x_19 = l_Std_Time_PlainDateTime_now___closed__1; -x_20 = lean_int_ediv(x_18, x_19); -lean_dec(x_18); -x_21 = lean_int_add(x_14, x_20); -lean_dec(x_20); -lean_dec(x_14); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); -lean_dec(x_21); -lean_ctor_set(x_5, 0, x_22); -return x_5; -} -else -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_dec(x_7); -x_23 = lean_ctor_get(x_9, 0); -lean_inc(x_23); -lean_dec(x_9); -x_24 = lean_ctor_get(x_23, 1); +x_18 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_17); +lean_dec(x_17); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); +lean_dec(x_18); +x_20 = lean_int_mul(x_19, x_13); +lean_dec(x_19); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_13); +lean_dec(x_22); +x_24 = lean_ctor_get(x_21, 1); lean_inc(x_24); -lean_dec(x_23); -x_25 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_24); +lean_dec(x_21); +x_25 = lean_int_add(x_23, x_24); lean_dec(x_24); -x_26 = lean_ctor_get(x_25, 0); -lean_inc(x_26); +lean_dec(x_23); +x_26 = lean_int_add(x_16, x_25); lean_dec(x_25); -x_27 = lean_int_add(x_12, x_26); +lean_dec(x_16); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); lean_dec(x_26); -lean_dec(x_12); -x_28 = l_Std_Time_PlainDateTime_now___closed__1; -x_29 = lean_int_ediv(x_27, x_28); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); lean_dec(x_27); -x_30 = lean_int_add(x_14, x_29); -lean_dec(x_29); -lean_dec(x_14); -x_31 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_30); -lean_dec(x_30); -lean_ctor_set(x_5, 0, x_31); +x_29 = lean_ctor_get(x_28, 0); +lean_inc(x_29); +lean_dec(x_28); +lean_ctor_set(x_5, 0, x_29); return x_5; } -} else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; -x_32 = lean_ctor_get(x_5, 0); -x_33 = lean_ctor_get(x_5, 1); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_dec(x_7); +x_30 = lean_ctor_get(x_9, 0); +lean_inc(x_30); +lean_dec(x_9); +x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_31); +lean_dec(x_30); +x_32 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_31); +lean_dec(x_31); +x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_5); -x_34 = lean_ctor_get(x_32, 1); -lean_inc(x_34); -lean_inc(x_3); -x_35 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_34, x_3); -lean_dec(x_34); -x_36 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); -lean_dec(x_3); -x_37 = lean_ctor_get(x_36, 1); -lean_inc(x_37); -x_38 = l_Std_Time_PlainTime_toSeconds(x_37); -lean_dec(x_37); -x_39 = lean_ctor_get(x_36, 0); -lean_inc(x_39); -lean_dec(x_36); -x_40 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_39); -if (lean_obj_tag(x_35) == 0) -{ -lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; -x_41 = lean_ctor_get(x_32, 0); -lean_inc(x_41); lean_dec(x_32); -x_42 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_41); +x_34 = lean_int_mul(x_33, x_13); +lean_dec(x_33); +x_35 = l_Std_Time_Duration_ofNanoseconds(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_int_mul(x_36, x_13); +lean_dec(x_36); +x_38 = lean_ctor_get(x_35, 1); +lean_inc(x_38); +lean_dec(x_35); +x_39 = lean_int_add(x_37, x_38); +lean_dec(x_38); +lean_dec(x_37); +x_40 = lean_int_add(x_16, x_39); +lean_dec(x_39); +lean_dec(x_16); +x_41 = l_Std_Time_Duration_ofNanoseconds(x_40); +lean_dec(x_40); +x_42 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_41); lean_dec(x_41); x_43 = lean_ctor_get(x_42, 0); lean_inc(x_43); lean_dec(x_42); -x_44 = lean_int_add(x_38, x_43); -lean_dec(x_43); -lean_dec(x_38); -x_45 = l_Std_Time_PlainDateTime_now___closed__1; -x_46 = lean_int_ediv(x_44, x_45); -lean_dec(x_44); -x_47 = lean_int_add(x_40, x_46); +lean_ctor_set(x_5, 0, x_43); +return x_5; +} +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_44 = lean_ctor_get(x_5, 0); +x_45 = lean_ctor_get(x_5, 1); +lean_inc(x_45); +lean_inc(x_44); +lean_dec(x_5); +x_46 = lean_ctor_get(x_44, 1); +lean_inc(x_46); +lean_inc(x_3); +x_47 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_46, x_3); lean_dec(x_46); -lean_dec(x_40); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); -lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_33); -return x_49; -} -else -{ -lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -lean_dec(x_32); -x_50 = lean_ctor_get(x_35, 0); -lean_inc(x_50); -lean_dec(x_35); -x_51 = lean_ctor_get(x_50, 1); -lean_inc(x_51); -lean_dec(x_50); -x_52 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_51); -lean_dec(x_51); -x_53 = lean_ctor_get(x_52, 0); -lean_inc(x_53); -lean_dec(x_52); -x_54 = lean_int_add(x_38, x_53); -lean_dec(x_53); -lean_dec(x_38); -x_55 = l_Std_Time_PlainDateTime_now___closed__1; -x_56 = lean_int_ediv(x_54, x_55); -lean_dec(x_54); -x_57 = lean_int_add(x_40, x_56); -lean_dec(x_56); -lean_dec(x_40); -x_58 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_57); -lean_dec(x_57); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_33); -return x_59; -} -} -} -else -{ -uint8_t x_60; +x_48 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_60 = !lean_is_exclusive(x_5); -if (x_60 == 0) +x_49 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_48); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = l_Std_Time_PlainDateTime_now___closed__1; +x_52 = lean_int_mul(x_50, x_51); +lean_dec(x_50); +x_53 = lean_ctor_get(x_49, 1); +lean_inc(x_53); +lean_dec(x_49); +x_54 = lean_int_add(x_52, x_53); +lean_dec(x_53); +lean_dec(x_52); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_55 = lean_ctor_get(x_44, 0); +lean_inc(x_55); +lean_dec(x_44); +x_56 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_55); +lean_dec(x_55); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +lean_dec(x_56); +x_58 = lean_int_mul(x_57, x_51); +lean_dec(x_57); +x_59 = l_Std_Time_Duration_ofNanoseconds(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_int_mul(x_60, x_51); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); +lean_inc(x_62); +lean_dec(x_59); +x_63 = lean_int_add(x_61, x_62); +lean_dec(x_62); +lean_dec(x_61); +x_64 = lean_int_add(x_54, x_63); +lean_dec(x_63); +lean_dec(x_54); +x_65 = l_Std_Time_Duration_ofNanoseconds(x_64); +lean_dec(x_64); +x_66 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_65); +lean_dec(x_65); +x_67 = lean_ctor_get(x_66, 0); +lean_inc(x_67); +lean_dec(x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_45); +return x_68; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_44); +x_69 = lean_ctor_get(x_47, 0); +lean_inc(x_69); +lean_dec(x_47); +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +lean_dec(x_69); +x_71 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_70); +lean_dec(x_70); +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +lean_dec(x_71); +x_73 = lean_int_mul(x_72, x_51); +lean_dec(x_72); +x_74 = l_Std_Time_Duration_ofNanoseconds(x_73); +lean_dec(x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_int_mul(x_75, x_51); +lean_dec(x_75); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); +lean_dec(x_74); +x_78 = lean_int_add(x_76, x_77); +lean_dec(x_77); +lean_dec(x_76); +x_79 = lean_int_add(x_54, x_78); +lean_dec(x_78); +lean_dec(x_54); +x_80 = l_Std_Time_Duration_ofNanoseconds(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_80); +lean_dec(x_80); +x_82 = lean_ctor_get(x_81, 0); +lean_inc(x_82); +lean_dec(x_81); +x_83 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_83, 0, x_82); +lean_ctor_set(x_83, 1, x_45); +return x_83; +} +} +} +else +{ +uint8_t x_84; +lean_dec(x_3); +x_84 = !lean_is_exclusive(x_5); +if (x_84 == 0) { return x_5; } else { -lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_61 = lean_ctor_get(x_5, 0); -x_62 = lean_ctor_get(x_5, 1); -lean_inc(x_62); -lean_inc(x_61); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_5, 0); +x_86 = lean_ctor_get(x_5, 1); +lean_inc(x_86); +lean_inc(x_85); lean_dec(x_5); -x_63 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_63, 0, x_61); -lean_ctor_set(x_63, 1, x_62); -return x_63; +x_87 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +return x_87; } } } else { -uint8_t x_64; -x_64 = !lean_is_exclusive(x_2); -if (x_64 == 0) +uint8_t x_88; +x_88 = !lean_is_exclusive(x_2); +if (x_88 == 0) { return x_2; } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; -x_65 = lean_ctor_get(x_2, 0); -x_66 = lean_ctor_get(x_2, 1); -lean_inc(x_66); -lean_inc(x_65); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_89 = lean_ctor_get(x_2, 0); +x_90 = lean_ctor_get(x_2, 1); +lean_inc(x_90); +lean_inc(x_89); lean_dec(x_2); -x_67 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_67, 0, x_65); -lean_ctor_set(x_67, 1, x_66); -return x_67; +x_91 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_91, 0, x_89); +lean_ctor_set(x_91, 1, x_90); +return x_91; } } } @@ -613,7 +665,7 @@ uint8_t x_6; x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; x_7 = lean_ctor_get(x_5, 0); x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); @@ -622,216 +674,298 @@ x_9 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_8, x_3); lean_dec(x_8); x_10 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_11 = lean_ctor_get(x_10, 1); -lean_inc(x_11); -lean_dec(x_10); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_11); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_10); +x_12 = lean_ctor_get(x_11, 0); +lean_inc(x_12); +x_13 = l_Std_Time_PlainDateTime_now___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); lean_dec(x_11); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); if (lean_obj_tag(x_9) == 0) { -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; -x_13 = lean_ctor_get(x_7, 0); -lean_inc(x_13); +lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +x_17 = lean_ctor_get(x_7, 0); +lean_inc(x_17); lean_dec(x_7); -x_14 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_14, 0); -lean_inc(x_15); -lean_dec(x_14); -x_16 = l_Std_Time_PlainDateTime_now___closed__2; -x_17 = lean_int_mul(x_15, x_16); -lean_dec(x_15); -x_18 = lean_int_add(x_12, x_17); +x_18 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_17); lean_dec(x_17); -lean_dec(x_12); -x_19 = l_Std_Time_PlainTime_ofNanoseconds(x_18); +x_19 = lean_ctor_get(x_18, 0); +lean_inc(x_19); lean_dec(x_18); -lean_ctor_set(x_5, 0, x_19); -return x_5; -} -else -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; -lean_dec(x_7); -x_20 = lean_ctor_get(x_9, 0); -lean_inc(x_20); -lean_dec(x_9); -x_21 = lean_ctor_get(x_20, 1); -lean_inc(x_21); +x_20 = lean_int_mul(x_19, x_13); +lean_dec(x_19); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); lean_dec(x_20); -x_22 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_21); -lean_dec(x_21); -x_23 = lean_ctor_get(x_22, 0); -lean_inc(x_23); +x_22 = lean_ctor_get(x_21, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_13); lean_dec(x_22); -x_24 = l_Std_Time_PlainDateTime_now___closed__2; -x_25 = lean_int_mul(x_23, x_24); +x_24 = lean_ctor_get(x_21, 1); +lean_inc(x_24); +lean_dec(x_21); +x_25 = lean_int_add(x_23, x_24); +lean_dec(x_24); lean_dec(x_23); -x_26 = lean_int_add(x_12, x_25); +x_26 = lean_int_add(x_16, x_25); lean_dec(x_25); -lean_dec(x_12); -x_27 = l_Std_Time_PlainTime_ofNanoseconds(x_26); +lean_dec(x_16); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); lean_dec(x_26); -lean_ctor_set(x_5, 0, x_27); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); +lean_dec(x_27); +x_29 = lean_ctor_get(x_28, 1); +lean_inc(x_29); +lean_dec(x_28); +lean_ctor_set(x_5, 0, x_29); return x_5; } -} else { -lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_28 = lean_ctor_get(x_5, 0); -x_29 = lean_ctor_get(x_5, 1); -lean_inc(x_29); -lean_inc(x_28); -lean_dec(x_5); -x_30 = lean_ctor_get(x_28, 1); +lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; +lean_dec(x_7); +x_30 = lean_ctor_get(x_9, 0); lean_inc(x_30); -lean_inc(x_3); -x_31 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_30, x_3); +lean_dec(x_9); +x_31 = lean_ctor_get(x_30, 1); +lean_inc(x_31); lean_dec(x_30); -x_32 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); -lean_dec(x_3); -x_33 = lean_ctor_get(x_32, 1); +x_32 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_31); +lean_dec(x_31); +x_33 = lean_ctor_get(x_32, 0); lean_inc(x_33); lean_dec(x_32); -x_34 = l_Std_Time_PlainTime_toNanoseconds(x_33); +x_34 = lean_int_mul(x_33, x_13); lean_dec(x_33); -if (lean_obj_tag(x_31) == 0) -{ -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_35 = lean_ctor_get(x_28, 0); -lean_inc(x_35); -lean_dec(x_28); -x_36 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_35); -lean_dec(x_35); -x_37 = lean_ctor_get(x_36, 0); -lean_inc(x_37); +x_35 = l_Std_Time_Duration_ofNanoseconds(x_34); +lean_dec(x_34); +x_36 = lean_ctor_get(x_35, 0); +lean_inc(x_36); +x_37 = lean_int_mul(x_36, x_13); lean_dec(x_36); -x_38 = l_Std_Time_PlainDateTime_now___closed__2; -x_39 = lean_int_mul(x_37, x_38); +x_38 = lean_ctor_get(x_35, 1); +lean_inc(x_38); +lean_dec(x_35); +x_39 = lean_int_add(x_37, x_38); +lean_dec(x_38); lean_dec(x_37); -x_40 = lean_int_add(x_34, x_39); +x_40 = lean_int_add(x_16, x_39); lean_dec(x_39); -lean_dec(x_34); -x_41 = l_Std_Time_PlainTime_ofNanoseconds(x_40); +lean_dec(x_16); +x_41 = l_Std_Time_Duration_ofNanoseconds(x_40); lean_dec(x_40); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_41); -lean_ctor_set(x_42, 1, x_29); -return x_42; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; -lean_dec(x_28); -x_43 = lean_ctor_get(x_31, 0); +x_42 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_41); +lean_dec(x_41); +x_43 = lean_ctor_get(x_42, 1); lean_inc(x_43); -lean_dec(x_31); -x_44 = lean_ctor_get(x_43, 1); +lean_dec(x_42); +lean_ctor_set(x_5, 0, x_43); +return x_5; +} +} +else +{ +lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; +x_44 = lean_ctor_get(x_5, 0); +x_45 = lean_ctor_get(x_5, 1); +lean_inc(x_45); lean_inc(x_44); -lean_dec(x_43); -x_45 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_44); -lean_dec(x_44); -x_46 = lean_ctor_get(x_45, 0); +lean_dec(x_5); +x_46 = lean_ctor_get(x_44, 1); lean_inc(x_46); -lean_dec(x_45); -x_47 = l_Std_Time_PlainDateTime_now___closed__2; -x_48 = lean_int_mul(x_46, x_47); +lean_inc(x_3); +x_47 = l_Std_Time_TimeZone_Transition_findTransitionForTimestamp(x_46, x_3); lean_dec(x_46); -x_49 = lean_int_add(x_34, x_48); -lean_dec(x_48); -lean_dec(x_34); -x_50 = l_Std_Time_PlainTime_ofNanoseconds(x_49); +x_48 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); +lean_dec(x_3); +x_49 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_48); +x_50 = lean_ctor_get(x_49, 0); +lean_inc(x_50); +x_51 = l_Std_Time_PlainDateTime_now___closed__1; +x_52 = lean_int_mul(x_50, x_51); +lean_dec(x_50); +x_53 = lean_ctor_get(x_49, 1); +lean_inc(x_53); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_29); -return x_51; +x_54 = lean_int_add(x_52, x_53); +lean_dec(x_53); +lean_dec(x_52); +if (lean_obj_tag(x_47) == 0) +{ +lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; +x_55 = lean_ctor_get(x_44, 0); +lean_inc(x_55); +lean_dec(x_44); +x_56 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_55); +lean_dec(x_55); +x_57 = lean_ctor_get(x_56, 0); +lean_inc(x_57); +lean_dec(x_56); +x_58 = lean_int_mul(x_57, x_51); +lean_dec(x_57); +x_59 = l_Std_Time_Duration_ofNanoseconds(x_58); +lean_dec(x_58); +x_60 = lean_ctor_get(x_59, 0); +lean_inc(x_60); +x_61 = lean_int_mul(x_60, x_51); +lean_dec(x_60); +x_62 = lean_ctor_get(x_59, 1); +lean_inc(x_62); +lean_dec(x_59); +x_63 = lean_int_add(x_61, x_62); +lean_dec(x_62); +lean_dec(x_61); +x_64 = lean_int_add(x_54, x_63); +lean_dec(x_63); +lean_dec(x_54); +x_65 = l_Std_Time_Duration_ofNanoseconds(x_64); +lean_dec(x_64); +x_66 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_65); +lean_dec(x_65); +x_67 = lean_ctor_get(x_66, 1); +lean_inc(x_67); +lean_dec(x_66); +x_68 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_68, 0, x_67); +lean_ctor_set(x_68, 1, x_45); +return x_68; +} +else +{ +lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; +lean_dec(x_44); +x_69 = lean_ctor_get(x_47, 0); +lean_inc(x_69); +lean_dec(x_47); +x_70 = lean_ctor_get(x_69, 1); +lean_inc(x_70); +lean_dec(x_69); +x_71 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_70); +lean_dec(x_70); +x_72 = lean_ctor_get(x_71, 0); +lean_inc(x_72); +lean_dec(x_71); +x_73 = lean_int_mul(x_72, x_51); +lean_dec(x_72); +x_74 = l_Std_Time_Duration_ofNanoseconds(x_73); +lean_dec(x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_int_mul(x_75, x_51); +lean_dec(x_75); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); +lean_dec(x_74); +x_78 = lean_int_add(x_76, x_77); +lean_dec(x_77); +lean_dec(x_76); +x_79 = lean_int_add(x_54, x_78); +lean_dec(x_78); +lean_dec(x_54); +x_80 = l_Std_Time_Duration_ofNanoseconds(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_80); +lean_dec(x_80); +x_82 = lean_ctor_get(x_81, 1); +lean_inc(x_82); +lean_dec(x_81); +x_83 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_83, 0, x_82); +lean_ctor_set(x_83, 1, x_45); +return x_83; } } } else { -uint8_t x_52; +uint8_t x_84; lean_dec(x_3); -x_52 = !lean_is_exclusive(x_5); -if (x_52 == 0) +x_84 = !lean_is_exclusive(x_5); +if (x_84 == 0) { return x_5; } else { -lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_53 = lean_ctor_get(x_5, 0); -x_54 = lean_ctor_get(x_5, 1); -lean_inc(x_54); -lean_inc(x_53); +lean_object* x_85; lean_object* x_86; lean_object* x_87; +x_85 = lean_ctor_get(x_5, 0); +x_86 = lean_ctor_get(x_5, 1); +lean_inc(x_86); +lean_inc(x_85); lean_dec(x_5); -x_55 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_55, 0, x_53); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_87 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_87, 0, x_85); +lean_ctor_set(x_87, 1, x_86); +return x_87; } } } else { -uint8_t x_56; -x_56 = !lean_is_exclusive(x_2); -if (x_56 == 0) +uint8_t x_88; +x_88 = !lean_is_exclusive(x_2); +if (x_88 == 0) { return x_2; } else { -lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_57 = lean_ctor_get(x_2, 0); -x_58 = lean_ctor_get(x_2, 1); -lean_inc(x_58); -lean_inc(x_57); +lean_object* x_89; lean_object* x_90; lean_object* x_91; +x_89 = lean_ctor_get(x_2, 0); +x_90 = lean_ctor_get(x_2, 1); +lean_inc(x_90); +lean_inc(x_89); lean_dec(x_2); -x_59 = lean_alloc_ctor(1, 2, 0); -lean_ctor_set(x_59, 0, x_57); -lean_ctor_set(x_59, 1, x_58); -return x_59; +x_91 = lean_alloc_ctor(1, 2, 0); +lean_ctor_set(x_91, 0, x_89); +lean_ctor_set(x_91, 1, x_90); +return x_91; } } } } -LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_6 = lean_ctor_get(x_2, 0); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = lean_int_add(x_8, x_6); -lean_dec(x_8); -x_10 = lean_int_ediv(x_9, x_3); -lean_dec(x_9); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_7); +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); +x_5 = lean_ctor_get(x_2, 0); +x_6 = l_Std_Time_PlainDateTime_now___closed__1; +x_7 = lean_int_mul(x_5, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_4); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_12 = l_Std_Time_PlainDateTime_now___closed__2; -x_13 = lean_int_mul(x_6, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_5, 0); -lean_inc(x_16); -lean_dec(x_5); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -839,6 +973,15 @@ static lean_object* _init_l_Std_Time_DateTime_ofPlainDate___closed__1() { _start: { lean_object* x_1; lean_object* x_2; +x_1 = lean_unsigned_to_nat(86400u); +x_2 = lean_nat_to_int(x_1); +return x_2; +} +} +static lean_object* _init_l_Std_Time_DateTime_ofPlainDate___closed__2() { +_start: +{ +lean_object* x_1; lean_object* x_2; x_1 = lean_unsigned_to_nat(0u); x_2 = lean_nat_to_int(x_1); return x_2; @@ -849,18 +992,17 @@ _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; x_3 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_1); -x_4 = l_Std_Time_PlainDateTime_now___closed__1; +x_4 = l_Std_Time_DateTime_ofPlainDate___closed__1; x_5 = lean_int_mul(x_3, x_4); lean_dec(x_3); -x_6 = l_Std_Time_DateTime_ofPlainDate___closed__1; +x_6 = l_Std_Time_DateTime_ofPlainDate___closed__2; x_7 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_7, 0, x_5); lean_ctor_set(x_7, 1, x_6); lean_inc(x_7); -x_8 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 4, 3); +x_8 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 3, 2); lean_closure_set(x_8, 0, x_7); lean_closure_set(x_8, 1, x_2); -lean_closure_set(x_8, 2, x_4); x_9 = lean_mk_thunk(x_8); x_10 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_10, 0, x_7); @@ -868,16 +1010,15 @@ lean_ctor_set(x_10, 1, x_9); return x_10; } } -LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_5; -x_5 = l_Std_Time_DateTime_ofPlainDate___lambda__1(x_1, x_2, x_3, x_4); -lean_dec(x_4); +lean_object* x_4; +x_4 = l_Std_Time_DateTime_ofPlainDate___lambda__1(x_1, x_2, x_3); lean_dec(x_3); lean_dec(x_2); lean_dec(x_1); -return x_5; +return x_4; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainDate___rarg(lean_object* x_1) { @@ -886,7 +1027,7 @@ _start: lean_object* x_2; lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; x_2 = lean_ctor_get(x_1, 0); x_3 = lean_ctor_get(x_2, 0); -x_4 = l_Std_Time_PlainDateTime_now___closed__1; +x_4 = l_Std_Time_DateTime_ofPlainDate___closed__1; x_5 = lean_int_ediv(x_3, x_4); x_6 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_5); lean_dec(x_5); @@ -957,44 +1098,6 @@ lean_dec(x_1); return x_2; } } -LEAN_EXPORT lean_object* l_Std_Time_DateTime_now___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_4, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_5); -lean_dec(x_7); -x_9 = l_Std_Time_PlainDateTime_now___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l_Std_Time_PlainDateTime_now___closed__2; -x_13 = lean_int_mul(x_5, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_4, 0); -lean_inc(x_16); -lean_dec(x_4); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); -lean_dec(x_10); -lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); -lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); -return x_20; -} -} LEAN_EXPORT lean_object* l_Std_Time_DateTime_now(lean_object* x_1, lean_object* x_2) { _start: { @@ -1009,7 +1112,7 @@ if (x_4 == 0) lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_5 = lean_ctor_get(x_3, 0); lean_inc(x_5); -x_6 = lean_alloc_closure((void*)(l_Std_Time_DateTime_now___lambda__1___boxed), 3, 2); +x_6 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 3, 2); lean_closure_set(x_6, 0, x_5); lean_closure_set(x_6, 1, x_1); x_7 = lean_mk_thunk(x_6); @@ -1028,7 +1131,7 @@ lean_inc(x_10); lean_inc(x_9); lean_dec(x_3); lean_inc(x_9); -x_11 = lean_alloc_closure((void*)(l_Std_Time_DateTime_now___lambda__1___boxed), 3, 2); +x_11 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 3, 2); lean_closure_set(x_11, 0, x_9); lean_closure_set(x_11, 1, x_1); x_12 = lean_mk_thunk(x_11); @@ -1066,17 +1169,6 @@ return x_18; } } } -LEAN_EXPORT lean_object* l_Std_Time_DateTime_now___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { -_start: -{ -lean_object* x_4; -x_4 = l_Std_Time_DateTime_now___lambda__1(x_1, x_2, x_3); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_4; -} -} LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_now(lean_object* x_1) { _start: { @@ -1136,7 +1228,7 @@ block_14: lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_inc(x_9); lean_inc(x_3); -x_10 = lean_alloc_closure((void*)(l_Std_Time_DateTime_now___lambda__1___boxed), 3, 2); +x_10 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 3, 2); lean_closure_set(x_10, 0, x_3); lean_closure_set(x_10, 1, x_9); x_11 = lean_mk_thunk(x_10); @@ -1262,7 +1354,7 @@ block_15: lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_inc(x_10); lean_inc(x_4); -x_11 = lean_alloc_closure((void*)(l_Std_Time_DateTime_now___lambda__1___boxed), 3, 2); +x_11 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDate___lambda__1___boxed), 3, 2); lean_closure_set(x_11, 0, x_4); lean_closure_set(x_11, 1, x_10); x_12 = lean_mk_thunk(x_11); @@ -1344,34 +1436,37 @@ _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_2); -lean_dec(x_7); -x_9 = l_Std_Time_PlainDateTime_now___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); +x_6 = lean_int_mul(x_2, x_3); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_6); lean_dec(x_6); -x_12 = lean_int_mul(x_2, x_3); -x_13 = lean_int_add(x_11, x_12); -lean_dec(x_12); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_int_mul(x_9, x_3); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +lean_dec(x_7); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_5, 0); -lean_inc(x_15); -lean_dec(x_5); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_10); lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_3); +lean_dec(x_13); +x_15 = lean_ctor_get(x_8, 1); +lean_inc(x_15); +lean_dec(x_8); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); return x_19; } } @@ -1379,7 +1474,7 @@ static lean_object* _init_l_Std_Time_ZonedDateTime_ofPlainDate___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = l_Std_Time_DateTime_ofPlainDate___closed__1; +x_1 = l_Std_Time_DateTime_ofPlainDate___closed__2; x_2 = lean_int_neg(x_1); return x_2; } @@ -1402,7 +1497,7 @@ x_8 = lean_ctor_get(x_2, 1); lean_inc(x_8); x_9 = lean_unsigned_to_nat(0u); x_10 = l_Array_findFinIdx_x3f_loop___rarg(x_7, x_8, x_9); -x_11 = l_Std_Time_PlainDateTime_now___closed__2; +x_11 = l_Std_Time_PlainDateTime_now___closed__1; x_12 = lean_int_mul(x_6, x_11); x_13 = lean_ctor_get(x_5, 1); lean_inc(x_13); @@ -1594,7 +1689,7 @@ x_16 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDate___lambda_ lean_closure_set(x_16, 0, x_15); x_17 = lean_unsigned_to_nat(0u); x_18 = l_Array_findFinIdx_x3f_loop___rarg(x_16, x_12, x_17); -x_19 = l_Std_Time_PlainDateTime_now___closed__2; +x_19 = l_Std_Time_PlainDateTime_now___closed__1; x_20 = lean_int_mul(x_15, x_19); x_21 = lean_ctor_get(x_14, 1); lean_inc(x_21); @@ -1785,7 +1880,7 @@ x_11 = lean_ctor_get(x_5, 1); lean_inc(x_11); x_12 = lean_unsigned_to_nat(0u); x_13 = l_Array_findFinIdx_x3f_loop___rarg(x_10, x_11, x_12); -x_14 = l_Std_Time_PlainDateTime_now___closed__2; +x_14 = l_Std_Time_PlainDateTime_now___closed__1; x_15 = lean_int_mul(x_9, x_14); x_16 = lean_ctor_get(x_8, 1); lean_inc(x_16); @@ -1944,7 +2039,7 @@ x_6 = lean_ctor_get(x_2, 1); lean_inc(x_6); x_7 = lean_unsigned_to_nat(0u); x_8 = l_Array_findFinIdx_x3f_loop___rarg(x_5, x_6, x_7); -x_9 = l_Std_Time_PlainDateTime_now___closed__2; +x_9 = l_Std_Time_PlainDateTime_now___closed__1; x_10 = lean_int_mul(x_4, x_9); x_11 = lean_ctor_get(x_3, 1); lean_inc(x_11); @@ -2081,7 +2176,7 @@ lean_closure_set(x_12, 0, x_11); x_13 = l_Std_Time_ZonedDateTime_ofPlainDateWithZone___closed__1; x_14 = lean_unsigned_to_nat(0u); x_15 = l_Array_findFinIdx_x3f_loop___rarg(x_12, x_13, x_14); -x_16 = l_Std_Time_PlainDateTime_now___closed__2; +x_16 = l_Std_Time_PlainDateTime_now___closed__1; x_17 = lean_int_mul(x_11, x_16); x_18 = lean_ctor_get(x_10, 1); lean_inc(x_18); @@ -2209,7 +2304,7 @@ x_8 = lean_ctor_get(x_2, 1); lean_inc(x_8); x_9 = lean_unsigned_to_nat(0u); x_10 = l_Array_findFinIdx_x3f_loop___rarg(x_7, x_8, x_9); -x_11 = l_Std_Time_PlainDateTime_now___closed__2; +x_11 = l_Std_Time_PlainDateTime_now___closed__1; x_12 = lean_int_mul(x_6, x_11); x_13 = lean_ctor_get(x_5, 1); lean_inc(x_13); @@ -2350,7 +2445,7 @@ lean_closure_set(x_14, 0, x_13); x_15 = l_Std_Time_ZonedDateTime_ofPlainDateWithZone___closed__1; x_16 = lean_unsigned_to_nat(0u); x_17 = l_Array_findFinIdx_x3f_loop___rarg(x_14, x_15, x_16); -x_18 = l_Std_Time_PlainDateTime_now___closed__2; +x_18 = l_Std_Time_PlainDateTime_now___closed__1; x_19 = lean_int_mul(x_13, x_18); x_20 = lean_ctor_get(x_12, 1); lean_inc(x_20); @@ -2483,10 +2578,10 @@ if (lean_io_result_is_error(res)) return res; lean_dec_ref(res); l_Std_Time_PlainDateTime_now___closed__1 = _init_l_Std_Time_PlainDateTime_now___closed__1(); lean_mark_persistent(l_Std_Time_PlainDateTime_now___closed__1); -l_Std_Time_PlainDateTime_now___closed__2 = _init_l_Std_Time_PlainDateTime_now___closed__2(); -lean_mark_persistent(l_Std_Time_PlainDateTime_now___closed__2); l_Std_Time_DateTime_ofPlainDate___closed__1 = _init_l_Std_Time_DateTime_ofPlainDate___closed__1(); lean_mark_persistent(l_Std_Time_DateTime_ofPlainDate___closed__1); +l_Std_Time_DateTime_ofPlainDate___closed__2 = _init_l_Std_Time_DateTime_ofPlainDate___closed__2(); +lean_mark_persistent(l_Std_Time_DateTime_ofPlainDate___closed__2); l_Std_Time_ZonedDateTime_ofPlainDate___closed__1 = _init_l_Std_Time_ZonedDateTime_ofPlainDate___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_ofPlainDate___closed__1); l_Std_Time_ZonedDateTime_ofPlainDateWithZone___closed__1 = _init_l_Std_Time_ZonedDateTime_ofPlainDateWithZone___closed__1(); diff --git a/stage0/stdlib/Std/Time/Zoned/Database/TzIf.c b/stage0/stdlib/Std/Time/Zoned/Database/TzIf.c index 13b88a6602..021c11748f 100644 --- a/stage0/stdlib/Std/Time/Zoned/Database/TzIf.c +++ b/stage0/stdlib/Std/Time/Zoned/Database/TzIf.c @@ -59,7 +59,6 @@ static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZon static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprTZifV1____x40_Std_Time_Zoned_Database_TzIf___hyg_532____closed__24; LEAN_EXPORT lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_parseLocalTimeTypes___boxed(lean_object*, lean_object*); static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_parseTZifV1___closed__1; -lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(lean_object*, lean_object*); static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprHeader____x40_Std_Time_Zoned_Database_TzIf___hyg_76____closed__19; static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprHeader____x40_Std_Time_Zoned_Database_TzIf___hyg_76____closed__28; static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprHeader____x40_Std_Time_Zoned_Database_TzIf___hyg_76____closed__7; @@ -246,6 +245,7 @@ static lean_object* l_Option_repr___at___private_Std_Time_Zoned_Database_TzIf_0_ static lean_object* l_Std_Time_TimeZone_TZif_instInhabitedLocalTimeType___closed__1; static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprTZifV1____x40_Std_Time_Zoned_Database_TzIf___hyg_532____closed__25; static lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprLocalTimeType____x40_Std_Time_Zoned_Database_TzIf___hyg_278____closed__17; +lean_object* l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(lean_object*, lean_object*); lean_object* lean_array_mk(lean_object*); LEAN_EXPORT lean_object* l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_parseIndicators___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Format_joinSep___at___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprTZifV1____x40_Std_Time_Zoned_Database_TzIf___hyg_532____spec__14(lean_object*, lean_object*); @@ -2614,7 +2614,7 @@ if (x_31 == 0) lean_object* x_157; lean_object* x_158; lean_object* x_159; lean_object* x_160; lean_object* x_161; lean_object* x_162; lean_object* x_163; lean_object* x_164; lean_object* x_165; uint8_t x_166; lean_object* x_167; x_157 = lean_array_to_list(x_29); x_158 = l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprTZifV1____x40_Std_Time_Zoned_Database_TzIf___hyg_532____closed__23; -x_159 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2056____spec__3(x_157, x_158); +x_159 = l_Std_Format_joinSep___at___private_Init_Meta_0__Lean_Syntax_reprPreresolved____x40_Init_Meta___hyg_2064____spec__3(x_157, x_158); x_160 = l___private_Std_Time_Zoned_Database_TzIf_0__Std_Time_TimeZone_TZif_reprTZifV1____x40_Std_Time_Zoned_Database_TzIf___hyg_532____closed__27; x_161 = lean_alloc_ctor(5, 2, 0); lean_ctor_set(x_161, 0, x_160); diff --git a/stage0/stdlib/Std/Time/Zoned/DateTime.c b/stage0/stdlib/Std/Time/Zoned/DateTime.c index 74d18516db..906077ef81 100644 --- a/stage0/stdlib/Std/Time/Zoned/DateTime.c +++ b/stage0/stdlib/Std/Time/Zoned/DateTime.c @@ -32,7 +32,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMonthRollOver(lean_object*, lea LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMinutes___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_second___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toPlainDateTime___boxed(lean_object*); -lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHAddOffset__5(lean_object*); lean_object* l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMonthsRollOver___boxed(lean_object*, lean_object*, lean_object*); @@ -79,7 +78,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_day___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_subYearsClip(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_dayOfYear___rarg___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMonthRollOver___boxed(lean_object*, lean_object*, lean_object*); -static lean_object* l_Std_Time_DateTime_withMilliseconds___closed__2; static lean_object* l_Std_Time_instInhabitedDateTime___lambda__1___closed__3; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subMilliseconds(lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Time_DateTime_addMinutes___closed__1; @@ -108,7 +106,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMonthClip(lean_object*, lean_ob LEAN_EXPORT lean_object* l_Std_Time_DateTime_withHours(lean_object*, lean_object*, lean_object*); lean_object* l_Std_Time_ValidDate_dayOfYear(uint8_t, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHSubOffset__1(lean_object*); -lean_object* l_Std_Time_PlainTime_ofNanoseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_subWeeks(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_month___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withYearRollOver___boxed(lean_object*, lean_object*, lean_object*); @@ -142,7 +139,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHSubOffset__2(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMilliseconds(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_month(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withYearClip___boxed(lean_object*, lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toMilliseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_millisecond(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withNanoseconds(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_subNanoseconds(lean_object*, lean_object*, lean_object*); @@ -182,7 +178,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_subYearsRollOver___boxed(lean_objec LEAN_EXPORT lean_object* l_Std_Time_DateTime_convertTimeZone___rarg(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_weekOfYear(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toDaysSinceUNIXEpoch___rarg(lean_object*); -lean_object* l_Std_Time_PlainTime_addMilliseconds(lean_object*, lean_object*); uint8_t l_Std_Time_Year_Offset_era(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_year___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toTimestamp___rarg___boxed(lean_object*); @@ -218,7 +213,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_subSeconds___boxed(lean_object*, le LEAN_EXPORT lean_object* l_Std_Time_DateTime_withDaysClip___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_year___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_minute___rarg___boxed(lean_object*); -lean_object* l_Std_Time_PlainTime_toSeconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_dayOfYear___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withYearClip(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_quarter___rarg___boxed(lean_object*); @@ -237,7 +231,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_subNanoseconds___boxed(lean_object* LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofTimestamp___lambda__1___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDateTimeAssumingUTC(lean_object*, lean_object*); lean_object* l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(lean_object*); -lean_object* lean_int_ediv(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofTimestamp(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMonthClip___boxed(lean_object*, lean_object*, lean_object*); lean_object* lean_int_neg(lean_object*); @@ -259,7 +252,6 @@ LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHSubOffset__5(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMonthsRollOver(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_toDaysSinceUNIXEpoch___rarg___boxed(lean_object*); static lean_object* l_Std_Time_instInhabitedDateTime___closed__2; -static lean_object* l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; LEAN_EXPORT uint8_t l_Std_Time_DateTime_weekday___rarg(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_subHours___boxed(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_DateTime_addNanoseconds___boxed(lean_object*, lean_object*, lean_object*); @@ -487,15 +479,6 @@ static lean_object* _init_l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__ _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; x_1 = lean_unsigned_to_nat(1000000000u); x_2 = lean_nat_to_int(x_1); return x_2; @@ -507,35 +490,38 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_4, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_5); +x_6 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_7 = lean_int_mul(x_5, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_4); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_13 = lean_int_mul(x_5, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_4, 0); -lean_inc(x_16); -lean_dec(x_4); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -696,49 +682,46 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDateTimeAssumingUTC___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; x_4 = lean_ctor_get(x_1, 0); -x_5 = lean_ctor_get(x_2, 1); -lean_inc(x_5); -x_6 = l_Std_Time_PlainTime_toSeconds(x_5); -x_7 = lean_int_add(x_6, x_4); +x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_6 = lean_int_mul(x_4, x_5); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_6); lean_dec(x_6); -x_8 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_9 = lean_int_ediv(x_7, x_8); -lean_dec(x_7); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_5); -lean_dec(x_5); -x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_12 = lean_int_mul(x_4, x_11); -x_13 = lean_int_add(x_10, x_12); -lean_dec(x_12); -lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_2, 0); -lean_inc(x_15); -lean_dec(x_2); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_9); +x_8 = lean_ctor_get(x_2, 0); +x_9 = lean_int_mul(x_8, x_5); +x_10 = lean_ctor_get(x_2, 1); +x_11 = lean_int_add(x_9, x_10); lean_dec(x_9); +x_12 = lean_ctor_get(x_7, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_5); +lean_dec(x_12); +x_14 = lean_ctor_get(x_7, 1); +lean_inc(x_14); +lean_dec(x_7); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_int_add(x_11, x_15); +lean_dec(x_15); +lean_dec(x_11); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +x_18 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); -return x_19; +return x_18; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofPlainDateTimeAssumingUTC(lean_object* x_1, lean_object* x_2) { _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; -lean_inc(x_1); x_3 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +lean_inc(x_3); x_4 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTimeAssumingUTC___lambda__1___boxed), 3, 2); lean_closure_set(x_4, 0, x_2); -lean_closure_set(x_4, 1, x_1); +lean_closure_set(x_4, 1, x_3); x_5 = lean_mk_thunk(x_4); x_6 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_6, 0, x_3); @@ -752,6 +735,7 @@ _start: lean_object* x_4; x_4 = l_Std_Time_DateTime_ofPlainDateTimeAssumingUTC___lambda__1(x_1, x_2, x_3); lean_dec(x_3); +lean_dec(x_2); lean_dec(x_1); return x_4; } @@ -769,35 +753,40 @@ _start: lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; x_3 = lean_ctor_get(x_2, 0); x_4 = lean_int_neg(x_3); -x_5 = lean_ctor_get(x_1, 1); -lean_inc(x_5); -x_6 = l_Std_Time_PlainTime_toSeconds(x_5); -x_7 = lean_int_add(x_6, x_4); -lean_dec(x_6); -x_8 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_9 = lean_int_ediv(x_7, x_8); -lean_dec(x_7); -x_10 = l_Std_Time_PlainTime_toNanoseconds(x_5); -lean_dec(x_5); -x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_12 = lean_int_mul(x_4, x_11); +x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_6 = lean_int_mul(x_4, x_5); lean_dec(x_4); -x_13 = lean_int_add(x_10, x_12); -lean_dec(x_12); -lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_1, 0); -lean_inc(x_15); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_9); +lean_inc(x_1); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_1); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_6); +lean_dec(x_6); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_int_mul(x_9, x_5); lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +lean_dec(x_7); +x_12 = lean_int_add(x_10, x_11); +lean_dec(x_11); +lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_5); +lean_dec(x_13); +x_15 = lean_ctor_get(x_8, 1); +lean_inc(x_15); +lean_dec(x_8); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); x_20 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_19); x_21 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); lean_closure_set(x_21, 0, x_1); @@ -831,7 +820,7 @@ static lean_object* _init_l_Std_Time_DateTime_addHours___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(3600u); +x_1 = lean_cstr_to_nat("3600000000000"); x_2 = lean_nat_to_int(x_1); return x_2; } @@ -839,76 +828,85 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_addHours(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = l_Std_Time_DateTime_addHours___closed__1; -x_9 = lean_int_mul(x_3, x_8); -x_10 = lean_int_add(x_7, x_9); +x_6 = l_Std_Time_DateTime_addHours___closed__1; +x_7 = lean_int_mul(x_3, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_12 = lean_int_ediv(x_10, x_11); +x_12 = lean_int_mul(x_10, x_11); lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_14 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_15 = lean_int_mul(x_9, x_14); -lean_dec(x_9); -x_16 = lean_int_add(x_13, x_15); -lean_dec(x_15); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_int_add(x_12, x_13); lean_dec(x_13); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); -lean_dec(x_16); -x_18 = lean_ctor_get(x_5, 0); -lean_inc(x_18); -lean_dec(x_5); -x_19 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_18); -x_20 = lean_int_add(x_19, x_12); lean_dec(x_12); -lean_dec(x_19); -x_21 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_20); -lean_dec(x_20); +x_15 = lean_ctor_get(x_9, 0); +lean_inc(x_15); +x_16 = lean_int_mul(x_15, x_11); +lean_dec(x_15); +x_17 = lean_ctor_get(x_9, 1); lean_inc(x_17); -lean_inc(x_21); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_17); -x_23 = lean_ctor_get(x_1, 0); -x_24 = lean_int_neg(x_23); -x_25 = l_Std_Time_PlainTime_toSeconds(x_17); -x_26 = lean_int_add(x_25, x_24); -lean_dec(x_25); -x_27 = lean_int_ediv(x_26, x_11); -lean_dec(x_26); -x_28 = l_Std_Time_PlainTime_toNanoseconds(x_17); +lean_dec(x_9); +x_18 = lean_int_add(x_16, x_17); lean_dec(x_17); -x_29 = lean_int_mul(x_24, x_14); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); +lean_dec(x_18); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); +x_22 = lean_ctor_get(x_1, 0); +x_23 = lean_int_neg(x_22); +x_24 = lean_int_mul(x_23, x_11); +lean_dec(x_23); +lean_inc(x_21); +x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_24); lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_11); +lean_dec(x_27); +x_29 = lean_ctor_get(x_25, 1); +lean_inc(x_29); +lean_dec(x_25); x_30 = lean_int_add(x_28, x_29); lean_dec(x_29); lean_dec(x_28); -x_31 = l_Std_Time_PlainTime_ofNanoseconds(x_30); -lean_dec(x_30); -x_32 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_21); -x_33 = lean_int_add(x_32, x_27); -lean_dec(x_27); -lean_dec(x_32); -x_34 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_33); +x_31 = lean_ctor_get(x_26, 0); +lean_inc(x_31); +x_32 = lean_int_mul(x_31, x_11); +lean_dec(x_31); +x_33 = lean_ctor_get(x_26, 1); +lean_inc(x_33); +lean_dec(x_26); +x_34 = lean_int_add(x_32, x_33); lean_dec(x_33); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_31); -x_36 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_35); -x_37 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_37, 0, x_22); -x_38 = lean_mk_thunk(x_37); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_36); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_dec(x_32); +x_35 = lean_int_add(x_30, x_34); +lean_dec(x_34); +lean_dec(x_30); +x_36 = l_Std_Time_Duration_ofNanoseconds(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_39 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_39, 0, x_21); +x_40 = lean_mk_thunk(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_38); +lean_ctor_set(x_41, 1, x_40); +return x_41; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_addHours___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -925,78 +923,87 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subHours(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); x_6 = lean_int_neg(x_3); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = l_Std_Time_DateTime_addHours___closed__1; -x_10 = lean_int_mul(x_6, x_9); +x_7 = l_Std_Time_DateTime_addHours___closed__1; +x_8 = lean_int_mul(x_6, x_7); lean_dec(x_6); -x_11 = lean_int_add(x_8, x_10); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); +x_13 = lean_int_mul(x_11, x_12); lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_10, x_15); -lean_dec(x_10); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_5, 0); -lean_inc(x_19); -lean_dec(x_5); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); lean_dec(x_13); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); -lean_dec(x_21); +x_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); lean_inc(x_18); -lean_inc(x_22); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); -x_24 = lean_ctor_get(x_1, 0); -x_25 = lean_int_neg(x_24); -x_26 = l_Std_Time_PlainTime_toSeconds(x_18); -x_27 = lean_int_add(x_26, x_25); -lean_dec(x_26); -x_28 = lean_int_ediv(x_27, x_12); -lean_dec(x_27); -x_29 = l_Std_Time_PlainTime_toNanoseconds(x_18); +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); lean_dec(x_18); -x_30 = lean_int_mul(x_25, x_15); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = lean_ctor_get(x_1, 0); +x_24 = lean_int_neg(x_23); +x_25 = lean_int_mul(x_24, x_12); +lean_dec(x_24); +lean_inc(x_22); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_25); lean_dec(x_25); +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_int_mul(x_28, x_12); +lean_dec(x_28); +x_30 = lean_ctor_get(x_26, 1); +lean_inc(x_30); +lean_dec(x_26); x_31 = lean_int_add(x_29, x_30); lean_dec(x_30); lean_dec(x_29); -x_32 = l_Std_Time_PlainTime_ofNanoseconds(x_31); -lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_22); -x_34 = lean_int_add(x_33, x_28); -lean_dec(x_28); -lean_dec(x_33); -x_35 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_34); +x_32 = lean_ctor_get(x_27, 0); +lean_inc(x_32); +x_33 = lean_int_mul(x_32, x_12); +lean_dec(x_32); +x_34 = lean_ctor_get(x_27, 1); +lean_inc(x_34); +lean_dec(x_27); +x_35 = lean_int_add(x_33, x_34); lean_dec(x_34); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_36); -x_38 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_38, 0, x_23); -x_39 = lean_mk_thunk(x_38); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_37); -lean_ctor_set(x_40, 1, x_39); -return x_40; +lean_dec(x_33); +x_36 = lean_int_add(x_31, x_35); +lean_dec(x_35); +lean_dec(x_31); +x_37 = l_Std_Time_Duration_ofNanoseconds(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_37); +lean_dec(x_37); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_38); +x_40 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_40, 0, x_22); +x_41 = lean_mk_thunk(x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_39); +lean_ctor_set(x_42, 1, x_41); +return x_42; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_subHours___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1014,7 +1021,7 @@ static lean_object* _init_l_Std_Time_DateTime_addMinutes___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(60u); +x_1 = lean_cstr_to_nat("60000000000"); x_2 = lean_nat_to_int(x_1); return x_2; } @@ -1022,76 +1029,85 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMinutes(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = l_Std_Time_DateTime_addMinutes___closed__1; -x_9 = lean_int_mul(x_3, x_8); -x_10 = lean_int_add(x_7, x_9); +x_6 = l_Std_Time_DateTime_addMinutes___closed__1; +x_7 = lean_int_mul(x_3, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_12 = lean_int_ediv(x_10, x_11); +x_12 = lean_int_mul(x_10, x_11); lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_14 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_15 = lean_int_mul(x_9, x_14); -lean_dec(x_9); -x_16 = lean_int_add(x_13, x_15); -lean_dec(x_15); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_int_add(x_12, x_13); lean_dec(x_13); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); -lean_dec(x_16); -x_18 = lean_ctor_get(x_5, 0); -lean_inc(x_18); -lean_dec(x_5); -x_19 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_18); -x_20 = lean_int_add(x_19, x_12); lean_dec(x_12); -lean_dec(x_19); -x_21 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_20); -lean_dec(x_20); +x_15 = lean_ctor_get(x_9, 0); +lean_inc(x_15); +x_16 = lean_int_mul(x_15, x_11); +lean_dec(x_15); +x_17 = lean_ctor_get(x_9, 1); lean_inc(x_17); -lean_inc(x_21); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_17); -x_23 = lean_ctor_get(x_1, 0); -x_24 = lean_int_neg(x_23); -x_25 = l_Std_Time_PlainTime_toSeconds(x_17); -x_26 = lean_int_add(x_25, x_24); -lean_dec(x_25); -x_27 = lean_int_ediv(x_26, x_11); -lean_dec(x_26); -x_28 = l_Std_Time_PlainTime_toNanoseconds(x_17); +lean_dec(x_9); +x_18 = lean_int_add(x_16, x_17); lean_dec(x_17); -x_29 = lean_int_mul(x_24, x_14); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); +lean_dec(x_18); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); +x_22 = lean_ctor_get(x_1, 0); +x_23 = lean_int_neg(x_22); +x_24 = lean_int_mul(x_23, x_11); +lean_dec(x_23); +lean_inc(x_21); +x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_24); lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_11); +lean_dec(x_27); +x_29 = lean_ctor_get(x_25, 1); +lean_inc(x_29); +lean_dec(x_25); x_30 = lean_int_add(x_28, x_29); lean_dec(x_29); lean_dec(x_28); -x_31 = l_Std_Time_PlainTime_ofNanoseconds(x_30); -lean_dec(x_30); -x_32 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_21); -x_33 = lean_int_add(x_32, x_27); -lean_dec(x_27); -lean_dec(x_32); -x_34 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_33); +x_31 = lean_ctor_get(x_26, 0); +lean_inc(x_31); +x_32 = lean_int_mul(x_31, x_11); +lean_dec(x_31); +x_33 = lean_ctor_get(x_26, 1); +lean_inc(x_33); +lean_dec(x_26); +x_34 = lean_int_add(x_32, x_33); lean_dec(x_33); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_34); -lean_ctor_set(x_35, 1, x_31); -x_36 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_35); -x_37 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_37, 0, x_22); -x_38 = lean_mk_thunk(x_37); -x_39 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_39, 0, x_36); -lean_ctor_set(x_39, 1, x_38); -return x_39; +lean_dec(x_32); +x_35 = lean_int_add(x_30, x_34); +lean_dec(x_34); +lean_dec(x_30); +x_36 = l_Std_Time_Duration_ofNanoseconds(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_39 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_39, 0, x_21); +x_40 = lean_mk_thunk(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_38); +lean_ctor_set(x_41, 1, x_40); +return x_41; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMinutes___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1108,78 +1124,87 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subMinutes(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); x_6 = lean_int_neg(x_3); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = l_Std_Time_DateTime_addMinutes___closed__1; -x_10 = lean_int_mul(x_6, x_9); +x_7 = l_Std_Time_DateTime_addMinutes___closed__1; +x_8 = lean_int_mul(x_6, x_7); lean_dec(x_6); -x_11 = lean_int_add(x_8, x_10); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); +x_13 = lean_int_mul(x_11, x_12); lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_10, x_15); -lean_dec(x_10); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_5, 0); -lean_inc(x_19); -lean_dec(x_5); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); lean_dec(x_13); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); -lean_dec(x_21); +x_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); lean_inc(x_18); -lean_inc(x_22); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); -x_24 = lean_ctor_get(x_1, 0); -x_25 = lean_int_neg(x_24); -x_26 = l_Std_Time_PlainTime_toSeconds(x_18); -x_27 = lean_int_add(x_26, x_25); -lean_dec(x_26); -x_28 = lean_int_ediv(x_27, x_12); -lean_dec(x_27); -x_29 = l_Std_Time_PlainTime_toNanoseconds(x_18); +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); lean_dec(x_18); -x_30 = lean_int_mul(x_25, x_15); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = lean_ctor_get(x_1, 0); +x_24 = lean_int_neg(x_23); +x_25 = lean_int_mul(x_24, x_12); +lean_dec(x_24); +lean_inc(x_22); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_25); lean_dec(x_25); +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_int_mul(x_28, x_12); +lean_dec(x_28); +x_30 = lean_ctor_get(x_26, 1); +lean_inc(x_30); +lean_dec(x_26); x_31 = lean_int_add(x_29, x_30); lean_dec(x_30); lean_dec(x_29); -x_32 = l_Std_Time_PlainTime_ofNanoseconds(x_31); -lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_22); -x_34 = lean_int_add(x_33, x_28); -lean_dec(x_28); -lean_dec(x_33); -x_35 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_34); +x_32 = lean_ctor_get(x_27, 0); +lean_inc(x_32); +x_33 = lean_int_mul(x_32, x_12); +lean_dec(x_32); +x_34 = lean_ctor_get(x_27, 1); +lean_inc(x_34); +lean_dec(x_27); +x_35 = lean_int_add(x_33, x_34); lean_dec(x_34); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_36); -x_38 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_38, 0, x_23); -x_39 = lean_mk_thunk(x_38); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_37); -lean_ctor_set(x_40, 1, x_39); -return x_40; +lean_dec(x_33); +x_36 = lean_int_add(x_31, x_35); +lean_dec(x_35); +lean_dec(x_31); +x_37 = l_Std_Time_Duration_ofNanoseconds(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_37); +lean_dec(x_37); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_38); +x_40 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_40, 0, x_22); +x_41 = lean_mk_thunk(x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_39); +lean_ctor_set(x_42, 1, x_41); +return x_42; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_subMinutes___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1196,73 +1221,84 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_addSeconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_3); +x_6 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_7 = lean_int_mul(x_3, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_13 = lean_int_mul(x_3, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_5, 0); -lean_inc(x_16); -lean_dec(x_5); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -lean_inc(x_15); -lean_inc(x_19); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); x_21 = lean_ctor_get(x_1, 0); x_22 = lean_int_neg(x_21); -x_23 = l_Std_Time_PlainTime_toSeconds(x_15); -x_24 = lean_int_add(x_23, x_22); -lean_dec(x_23); -x_25 = lean_int_ediv(x_24, x_9); -lean_dec(x_24); -x_26 = l_Std_Time_PlainTime_toNanoseconds(x_15); -lean_dec(x_15); -x_27 = lean_int_mul(x_22, x_12); +x_23 = lean_int_mul(x_22, x_6); lean_dec(x_22); -x_28 = lean_int_add(x_26, x_27); -lean_dec(x_27); +lean_inc(x_20); +x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_20); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_23); +lean_dec(x_23); +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_int_mul(x_26, x_6); lean_dec(x_26); -x_29 = l_Std_Time_PlainTime_ofNanoseconds(x_28); +x_28 = lean_ctor_get(x_24, 1); +lean_inc(x_28); +lean_dec(x_24); +x_29 = lean_int_add(x_27, x_28); lean_dec(x_28); -x_30 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_31 = lean_int_add(x_30, x_25); -lean_dec(x_25); +lean_dec(x_27); +x_30 = lean_ctor_get(x_25, 0); +lean_inc(x_30); +x_31 = lean_int_mul(x_30, x_6); lean_dec(x_30); -x_32 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_31); +x_32 = lean_ctor_get(x_25, 1); +lean_inc(x_32); +lean_dec(x_25); +x_33 = lean_int_add(x_31, x_32); +lean_dec(x_32); lean_dec(x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_29); -x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_33); -x_35 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_35, 0, x_20); -x_36 = lean_mk_thunk(x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_34); -lean_ctor_set(x_37, 1, x_36); -return x_37; +x_34 = lean_int_add(x_29, x_33); +lean_dec(x_33); +lean_dec(x_29); +x_35 = l_Std_Time_Duration_ofNanoseconds(x_34); +lean_dec(x_34); +x_36 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_36); +x_38 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_38, 0, x_20); +x_39 = lean_mk_thunk(x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_37); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_addSeconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1279,75 +1315,86 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subSeconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); x_6 = lean_int_neg(x_3); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = lean_int_add(x_8, x_6); -lean_dec(x_8); -x_10 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_14 = lean_int_mul(x_6, x_13); +x_7 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_8 = lean_int_mul(x_6, x_7); lean_dec(x_6); -x_15 = lean_int_add(x_12, x_14); -lean_dec(x_14); -lean_dec(x_12); -x_16 = l_Std_Time_PlainTime_ofNanoseconds(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_5, 0); -lean_inc(x_17); -lean_dec(x_5); -x_18 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_17); -x_19 = lean_int_add(x_18, x_11); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); +lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_int_mul(x_11, x_7); lean_dec(x_11); +x_13 = lean_ctor_get(x_9, 1); +lean_inc(x_13); +lean_dec(x_9); +x_14 = lean_int_add(x_12, x_13); +lean_dec(x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_10, 0); +lean_inc(x_15); +x_16 = lean_int_mul(x_15, x_7); +lean_dec(x_15); +x_17 = lean_ctor_get(x_10, 1); +lean_inc(x_17); +lean_dec(x_10); +x_18 = lean_int_add(x_16, x_17); +lean_dec(x_17); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); lean_dec(x_18); -x_20 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_19); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); lean_dec(x_19); -lean_inc(x_16); -lean_inc(x_20); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_16); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); x_22 = lean_ctor_get(x_1, 0); x_23 = lean_int_neg(x_22); -x_24 = l_Std_Time_PlainTime_toSeconds(x_16); -x_25 = lean_int_add(x_24, x_23); -lean_dec(x_24); -x_26 = lean_int_ediv(x_25, x_10); -lean_dec(x_25); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_16); -lean_dec(x_16); -x_28 = lean_int_mul(x_23, x_13); +x_24 = lean_int_mul(x_23, x_7); lean_dec(x_23); -x_29 = lean_int_add(x_27, x_28); -lean_dec(x_28); +lean_inc(x_21); +x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_7); lean_dec(x_27); -x_30 = l_Std_Time_PlainTime_ofNanoseconds(x_29); +x_29 = lean_ctor_get(x_25, 1); +lean_inc(x_29); +lean_dec(x_25); +x_30 = lean_int_add(x_28, x_29); lean_dec(x_29); -x_31 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_20); -x_32 = lean_int_add(x_31, x_26); -lean_dec(x_26); +lean_dec(x_28); +x_31 = lean_ctor_get(x_26, 0); +lean_inc(x_31); +x_32 = lean_int_mul(x_31, x_7); lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_32); +x_33 = lean_ctor_get(x_26, 1); +lean_inc(x_33); +lean_dec(x_26); +x_34 = lean_int_add(x_32, x_33); +lean_dec(x_33); lean_dec(x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_30); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_34); -x_36 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_36, 0, x_21); -x_37 = lean_mk_thunk(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_35); -lean_ctor_set(x_38, 1, x_37); -return x_38; +x_35 = lean_int_add(x_30, x_34); +lean_dec(x_34); +lean_dec(x_30); +x_36 = l_Std_Time_Duration_ofNanoseconds(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_39 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_39, 0, x_21); +x_40 = lean_mk_thunk(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_38); +lean_ctor_set(x_41, 1, x_40); +return x_41; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_subSeconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1365,7 +1412,7 @@ static lean_object* _init_l_Std_Time_DateTime_addMilliseconds___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400000u); +x_1 = lean_unsigned_to_nat(1000000u); x_2 = lean_nat_to_int(x_1); return x_2; } @@ -1373,68 +1420,85 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMilliseconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toMilliseconds(x_6); -x_8 = lean_int_add(x_7, x_3); +x_6 = l_Std_Time_DateTime_addMilliseconds___closed__1; +x_7 = lean_int_mul(x_3, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l_Std_Time_DateTime_addMilliseconds___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_addMilliseconds(x_6, x_3); -lean_dec(x_6); -x_12 = lean_ctor_get(x_5, 0); -lean_inc(x_12); -lean_dec(x_5); -x_13 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_14 = lean_int_add(x_13, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_12 = lean_int_mul(x_10, x_11); lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_int_add(x_12, x_13); lean_dec(x_13); -x_15 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_14); -lean_dec(x_14); -lean_inc(x_11); +lean_dec(x_12); +x_15 = lean_ctor_get(x_9, 0); lean_inc(x_15); -x_16 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_16, 0, x_15); -lean_ctor_set(x_16, 1, x_11); -x_17 = lean_ctor_get(x_1, 0); -x_18 = lean_int_neg(x_17); -x_19 = l_Std_Time_PlainTime_toSeconds(x_11); -x_20 = lean_int_add(x_19, x_18); -lean_dec(x_19); -x_21 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_22 = lean_int_ediv(x_20, x_21); -lean_dec(x_20); -x_23 = l_Std_Time_PlainTime_toNanoseconds(x_11); -lean_dec(x_11); -x_24 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_25 = lean_int_mul(x_18, x_24); +x_16 = lean_int_mul(x_15, x_11); +lean_dec(x_15); +x_17 = lean_ctor_get(x_9, 1); +lean_inc(x_17); +lean_dec(x_9); +x_18 = lean_int_add(x_16, x_17); +lean_dec(x_17); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); lean_dec(x_18); -x_26 = lean_int_add(x_23, x_25); -lean_dec(x_25); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); +x_22 = lean_ctor_get(x_1, 0); +x_23 = lean_int_neg(x_22); +x_24 = lean_int_mul(x_23, x_11); lean_dec(x_23); -x_27 = l_Std_Time_PlainTime_ofNanoseconds(x_26); -lean_dec(x_26); -x_28 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_29 = lean_int_add(x_28, x_22); -lean_dec(x_22); -lean_dec(x_28); -x_30 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_29); +lean_inc(x_21); +x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_27 = lean_ctor_get(x_25, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_11); +lean_dec(x_27); +x_29 = lean_ctor_get(x_25, 1); +lean_inc(x_29); +lean_dec(x_25); +x_30 = lean_int_add(x_28, x_29); lean_dec(x_29); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_30); -lean_ctor_set(x_31, 1, x_27); -x_32 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_31); -x_33 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_33, 0, x_16); -x_34 = lean_mk_thunk(x_33); -x_35 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_35, 0, x_32); -lean_ctor_set(x_35, 1, x_34); -return x_35; +lean_dec(x_28); +x_31 = lean_ctor_get(x_26, 0); +lean_inc(x_31); +x_32 = lean_int_mul(x_31, x_11); +lean_dec(x_31); +x_33 = lean_ctor_get(x_26, 1); +lean_inc(x_33); +lean_dec(x_26); +x_34 = lean_int_add(x_32, x_33); +lean_dec(x_33); +lean_dec(x_32); +x_35 = lean_int_add(x_30, x_34); +lean_dec(x_34); +lean_dec(x_30); +x_36 = l_Std_Time_Duration_ofNanoseconds(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_39 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_39, 0, x_21); +x_40 = lean_mk_thunk(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_38); +lean_ctor_set(x_41, 1, x_40); +return x_41; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_addMilliseconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1451,70 +1515,87 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subMilliseconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); x_6 = lean_int_neg(x_3); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toMilliseconds(x_7); -x_9 = lean_int_add(x_8, x_6); -lean_dec(x_8); -x_10 = l_Std_Time_DateTime_addMilliseconds___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_addMilliseconds(x_7, x_6); +x_7 = l_Std_Time_DateTime_addMilliseconds___closed__1; +x_8 = lean_int_mul(x_6, x_7); lean_dec(x_6); -lean_dec(x_7); -x_13 = lean_ctor_get(x_5, 0); -lean_inc(x_13); -lean_dec(x_5); -x_14 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_15 = lean_int_add(x_14, x_11); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); +lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); lean_dec(x_14); -x_16 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_15); -lean_dec(x_15); -lean_inc(x_12); +lean_dec(x_13); +x_16 = lean_ctor_get(x_10, 0); lean_inc(x_16); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_12); -x_18 = lean_ctor_get(x_1, 0); -x_19 = lean_int_neg(x_18); -x_20 = l_Std_Time_PlainTime_toSeconds(x_12); -x_21 = lean_int_add(x_20, x_19); -lean_dec(x_20); -x_22 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_23 = lean_int_ediv(x_21, x_22); -lean_dec(x_21); -x_24 = l_Std_Time_PlainTime_toNanoseconds(x_12); -lean_dec(x_12); -x_25 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_26 = lean_int_mul(x_19, x_25); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); +lean_inc(x_18); +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); lean_dec(x_19); -x_27 = lean_int_add(x_24, x_26); -lean_dec(x_26); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = lean_ctor_get(x_1, 0); +x_24 = lean_int_neg(x_23); +x_25 = lean_int_mul(x_24, x_12); lean_dec(x_24); -x_28 = l_Std_Time_PlainTime_ofNanoseconds(x_27); -lean_dec(x_27); -x_29 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_30 = lean_int_add(x_29, x_23); -lean_dec(x_23); -lean_dec(x_29); -x_31 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_30); +lean_inc(x_22); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_28 = lean_ctor_get(x_26, 0); +lean_inc(x_28); +x_29 = lean_int_mul(x_28, x_12); +lean_dec(x_28); +x_30 = lean_ctor_get(x_26, 1); +lean_inc(x_30); +lean_dec(x_26); +x_31 = lean_int_add(x_29, x_30); lean_dec(x_30); -x_32 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_32, 0, x_31); -lean_ctor_set(x_32, 1, x_28); -x_33 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_32); -x_34 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_34, 0, x_17); -x_35 = lean_mk_thunk(x_34); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_33); -lean_ctor_set(x_36, 1, x_35); -return x_36; +lean_dec(x_29); +x_32 = lean_ctor_get(x_27, 0); +lean_inc(x_32); +x_33 = lean_int_mul(x_32, x_12); +lean_dec(x_32); +x_34 = lean_ctor_get(x_27, 1); +lean_inc(x_34); +lean_dec(x_27); +x_35 = lean_int_add(x_33, x_34); +lean_dec(x_34); +lean_dec(x_33); +x_36 = lean_int_add(x_31, x_35); +lean_dec(x_35); +lean_dec(x_31); +x_37 = l_Std_Time_Duration_ofNanoseconds(x_36); +lean_dec(x_36); +x_38 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_37); +lean_dec(x_37); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_38); +x_40 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_40, 0, x_22); +x_41 = lean_mk_thunk(x_40); +x_42 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_42, 0, x_39); +lean_ctor_set(x_42, 1, x_41); +return x_42; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_subMilliseconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1531,221 +1612,82 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_addNanoseconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; uint8_t x_6; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = !lean_is_exclusive(x_5); -if (x_6 == 0) -{ -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_ctor_get(x_8, 3); -lean_inc(x_9); -x_10 = lean_int_add(x_9, x_3); -lean_dec(x_9); -x_11 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_12 = lean_int_ediv(x_10, x_11); -x_13 = lean_int_emod(x_10, x_11); -lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_6 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_7 = l_Std_Time_Duration_ofNanoseconds(x_3); +x_8 = lean_ctor_get(x_6, 0); +lean_inc(x_8); +x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_15 = lean_int_mul(x_12, x_11); -lean_dec(x_12); +x_11 = lean_ctor_get(x_6, 1); +lean_inc(x_11); +lean_dec(x_6); +x_12 = lean_int_add(x_10, x_11); +lean_dec(x_11); +lean_dec(x_10); +x_13 = lean_ctor_get(x_7, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); +lean_dec(x_13); +x_15 = lean_ctor_get(x_7, 1); +lean_inc(x_15); +lean_dec(x_7); x_16 = lean_int_add(x_14, x_15); lean_dec(x_15); lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); +x_17 = lean_int_add(x_12, x_16); lean_dec(x_16); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; -x_19 = lean_ctor_get(x_17, 3); -lean_dec(x_19); -lean_ctor_set(x_17, 3, x_13); -lean_inc(x_17); -lean_inc(x_7); -lean_ctor_set(x_5, 1, x_17); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); +lean_dec(x_17); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); x_20 = lean_ctor_get(x_1, 0); x_21 = lean_int_neg(x_20); -x_22 = l_Std_Time_PlainTime_toSeconds(x_17); -x_23 = lean_int_add(x_22, x_21); -lean_dec(x_22); -x_24 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_25 = lean_int_ediv(x_23, x_24); -lean_dec(x_23); -x_26 = l_Std_Time_PlainTime_toNanoseconds(x_17); -lean_dec(x_17); -x_27 = lean_int_mul(x_21, x_11); +x_22 = lean_int_mul(x_21, x_9); lean_dec(x_21); +lean_inc(x_19); +x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_19); +x_24 = l_Std_Time_Duration_ofNanoseconds(x_22); +lean_dec(x_22); +x_25 = lean_ctor_get(x_23, 0); +lean_inc(x_25); +x_26 = lean_int_mul(x_25, x_9); +lean_dec(x_25); +x_27 = lean_ctor_get(x_23, 1); +lean_inc(x_27); +lean_dec(x_23); x_28 = lean_int_add(x_26, x_27); lean_dec(x_27); lean_dec(x_26); -x_29 = l_Std_Time_PlainTime_ofNanoseconds(x_28); -lean_dec(x_28); -x_30 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_31 = lean_int_add(x_30, x_25); -lean_dec(x_25); -lean_dec(x_30); -x_32 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_31); +x_29 = lean_ctor_get(x_24, 0); +lean_inc(x_29); +x_30 = lean_int_mul(x_29, x_9); +lean_dec(x_29); +x_31 = lean_ctor_get(x_24, 1); +lean_inc(x_31); +lean_dec(x_24); +x_32 = lean_int_add(x_30, x_31); lean_dec(x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_32); -lean_ctor_set(x_33, 1, x_29); -x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_33); -x_35 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_35, 0, x_5); -x_36 = lean_mk_thunk(x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_34); -lean_ctor_set(x_37, 1, x_36); -return x_37; -} -else -{ -lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_38 = lean_ctor_get(x_17, 0); -x_39 = lean_ctor_get(x_17, 1); -x_40 = lean_ctor_get(x_17, 2); -lean_inc(x_40); -lean_inc(x_39); -lean_inc(x_38); -lean_dec(x_17); -x_41 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_41, 0, x_38); -lean_ctor_set(x_41, 1, x_39); -lean_ctor_set(x_41, 2, x_40); -lean_ctor_set(x_41, 3, x_13); -lean_inc(x_41); -lean_inc(x_7); -lean_ctor_set(x_5, 1, x_41); -x_42 = lean_ctor_get(x_1, 0); -x_43 = lean_int_neg(x_42); -x_44 = l_Std_Time_PlainTime_toSeconds(x_41); -x_45 = lean_int_add(x_44, x_43); -lean_dec(x_44); -x_46 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_47 = lean_int_ediv(x_45, x_46); -lean_dec(x_45); -x_48 = l_Std_Time_PlainTime_toNanoseconds(x_41); -lean_dec(x_41); -x_49 = lean_int_mul(x_43, x_11); -lean_dec(x_43); -x_50 = lean_int_add(x_48, x_49); -lean_dec(x_49); -lean_dec(x_48); -x_51 = l_Std_Time_PlainTime_ofNanoseconds(x_50); -lean_dec(x_50); -x_52 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_53 = lean_int_add(x_52, x_47); -lean_dec(x_47); -lean_dec(x_52); -x_54 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_53); -lean_dec(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_51); -x_56 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_55); -x_57 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_57, 0, x_5); -x_58 = lean_mk_thunk(x_57); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_58); -return x_59; -} -} -else -{ -lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_60 = lean_ctor_get(x_5, 0); -x_61 = lean_ctor_get(x_5, 1); -lean_inc(x_61); -lean_inc(x_60); -lean_dec(x_5); -x_62 = lean_ctor_get(x_61, 3); -lean_inc(x_62); -x_63 = lean_int_add(x_62, x_3); -lean_dec(x_62); -x_64 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_65 = lean_int_ediv(x_63, x_64); -x_66 = lean_int_emod(x_63, x_64); -lean_dec(x_63); -x_67 = l_Std_Time_PlainTime_toNanoseconds(x_61); -lean_dec(x_61); -x_68 = lean_int_mul(x_65, x_64); -lean_dec(x_65); -x_69 = lean_int_add(x_67, x_68); -lean_dec(x_68); -lean_dec(x_67); -x_70 = l_Std_Time_PlainTime_ofNanoseconds(x_69); -lean_dec(x_69); -x_71 = lean_ctor_get(x_70, 0); -lean_inc(x_71); -x_72 = lean_ctor_get(x_70, 1); -lean_inc(x_72); -x_73 = lean_ctor_get(x_70, 2); -lean_inc(x_73); -if (lean_is_exclusive(x_70)) { - lean_ctor_release(x_70, 0); - lean_ctor_release(x_70, 1); - lean_ctor_release(x_70, 2); - lean_ctor_release(x_70, 3); - x_74 = x_70; -} else { - lean_dec_ref(x_70); - x_74 = lean_box(0); -} -if (lean_is_scalar(x_74)) { - x_75 = lean_alloc_ctor(0, 4, 0); -} else { - x_75 = x_74; -} -lean_ctor_set(x_75, 0, x_71); -lean_ctor_set(x_75, 1, x_72); -lean_ctor_set(x_75, 2, x_73); -lean_ctor_set(x_75, 3, x_66); -lean_inc(x_75); -lean_inc(x_60); -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_60); -lean_ctor_set(x_76, 1, x_75); -x_77 = lean_ctor_get(x_1, 0); -x_78 = lean_int_neg(x_77); -x_79 = l_Std_Time_PlainTime_toSeconds(x_75); -x_80 = lean_int_add(x_79, x_78); -lean_dec(x_79); -x_81 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_82 = lean_int_ediv(x_80, x_81); -lean_dec(x_80); -x_83 = l_Std_Time_PlainTime_toNanoseconds(x_75); -lean_dec(x_75); -x_84 = lean_int_mul(x_78, x_64); -lean_dec(x_78); -x_85 = lean_int_add(x_83, x_84); -lean_dec(x_84); -lean_dec(x_83); -x_86 = l_Std_Time_PlainTime_ofNanoseconds(x_85); -lean_dec(x_85); -x_87 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_60); -x_88 = lean_int_add(x_87, x_82); -lean_dec(x_82); -lean_dec(x_87); -x_89 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_88); -lean_dec(x_88); -x_90 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_86); -x_91 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_90); -x_92 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_92, 0, x_76); -x_93 = lean_mk_thunk(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_91); -lean_ctor_set(x_94, 1, x_93); -return x_94; -} +lean_dec(x_30); +x_33 = lean_int_add(x_28, x_32); +lean_dec(x_32); +lean_dec(x_28); +x_34 = l_Std_Time_Duration_ofNanoseconds(x_33); +lean_dec(x_33); +x_35 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_34); +lean_dec(x_34); +x_36 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_35); +x_37 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_37, 0, x_19); +x_38 = lean_mk_thunk(x_37); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_36); +lean_ctor_set(x_39, 1, x_38); +return x_39; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_addNanoseconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -1762,224 +1704,84 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_subNanoseconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); x_6 = lean_int_neg(x_3); -x_7 = !lean_is_exclusive(x_5); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_8 = lean_ctor_get(x_5, 0); -x_9 = lean_ctor_get(x_5, 1); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -x_11 = lean_int_add(x_10, x_6); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_6); lean_dec(x_6); -lean_dec(x_10); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_13 = lean_int_ediv(x_11, x_12); -x_14 = lean_int_emod(x_11, x_12); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_toNanoseconds(x_9); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_11 = lean_int_mul(x_9, x_10); lean_dec(x_9); -x_16 = lean_int_mul(x_13, x_12); -lean_dec(x_13); +x_12 = lean_ctor_get(x_7, 1); +lean_inc(x_12); +lean_dec(x_7); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_8, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_10); +lean_dec(x_14); +x_16 = lean_ctor_get(x_8, 1); +lean_inc(x_16); +lean_dec(x_8); x_17 = lean_int_add(x_15, x_16); lean_dec(x_16); lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_20 = lean_ctor_get(x_18, 3); -lean_dec(x_20); -lean_ctor_set(x_18, 3, x_14); -lean_inc(x_18); -lean_inc(x_8); -lean_ctor_set(x_5, 1, x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); +lean_dec(x_18); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); x_21 = lean_ctor_get(x_1, 0); x_22 = lean_int_neg(x_21); -x_23 = l_Std_Time_PlainTime_toSeconds(x_18); -x_24 = lean_int_add(x_23, x_22); -lean_dec(x_23); -x_25 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_26 = lean_int_ediv(x_24, x_25); -lean_dec(x_24); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_18); -lean_dec(x_18); -x_28 = lean_int_mul(x_22, x_12); +x_23 = lean_int_mul(x_22, x_10); lean_dec(x_22); +lean_inc(x_20); +x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_20); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_23); +lean_dec(x_23); +x_26 = lean_ctor_get(x_24, 0); +lean_inc(x_26); +x_27 = lean_int_mul(x_26, x_10); +lean_dec(x_26); +x_28 = lean_ctor_get(x_24, 1); +lean_inc(x_28); +lean_dec(x_24); x_29 = lean_int_add(x_27, x_28); lean_dec(x_28); lean_dec(x_27); -x_30 = l_Std_Time_PlainTime_ofNanoseconds(x_29); -lean_dec(x_29); -x_31 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_8); -x_32 = lean_int_add(x_31, x_26); -lean_dec(x_26); -lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_32); +x_30 = lean_ctor_get(x_25, 0); +lean_inc(x_30); +x_31 = lean_int_mul(x_30, x_10); +lean_dec(x_30); +x_32 = lean_ctor_get(x_25, 1); +lean_inc(x_32); +lean_dec(x_25); +x_33 = lean_int_add(x_31, x_32); lean_dec(x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_30); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_34); -x_36 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_36, 0, x_5); -x_37 = lean_mk_thunk(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_35); -lean_ctor_set(x_38, 1, x_37); -return x_38; -} -else -{ -lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; -x_39 = lean_ctor_get(x_18, 0); -x_40 = lean_ctor_get(x_18, 1); -x_41 = lean_ctor_get(x_18, 2); -lean_inc(x_41); -lean_inc(x_40); -lean_inc(x_39); -lean_dec(x_18); -x_42 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_42, 0, x_39); -lean_ctor_set(x_42, 1, x_40); -lean_ctor_set(x_42, 2, x_41); -lean_ctor_set(x_42, 3, x_14); -lean_inc(x_42); -lean_inc(x_8); -lean_ctor_set(x_5, 1, x_42); -x_43 = lean_ctor_get(x_1, 0); -x_44 = lean_int_neg(x_43); -x_45 = l_Std_Time_PlainTime_toSeconds(x_42); -x_46 = lean_int_add(x_45, x_44); -lean_dec(x_45); -x_47 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_48 = lean_int_ediv(x_46, x_47); -lean_dec(x_46); -x_49 = l_Std_Time_PlainTime_toNanoseconds(x_42); -lean_dec(x_42); -x_50 = lean_int_mul(x_44, x_12); -lean_dec(x_44); -x_51 = lean_int_add(x_49, x_50); -lean_dec(x_50); -lean_dec(x_49); -x_52 = l_Std_Time_PlainTime_ofNanoseconds(x_51); -lean_dec(x_51); -x_53 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_8); -x_54 = lean_int_add(x_53, x_48); -lean_dec(x_48); -lean_dec(x_53); -x_55 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_54); -lean_dec(x_54); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_55); -lean_ctor_set(x_56, 1, x_52); -x_57 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_56); -x_58 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_58, 0, x_5); -x_59 = lean_mk_thunk(x_58); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_57); -lean_ctor_set(x_60, 1, x_59); -return x_60; -} -} -else -{ -lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; -x_61 = lean_ctor_get(x_5, 0); -x_62 = lean_ctor_get(x_5, 1); -lean_inc(x_62); -lean_inc(x_61); -lean_dec(x_5); -x_63 = lean_ctor_get(x_62, 3); -lean_inc(x_63); -x_64 = lean_int_add(x_63, x_6); -lean_dec(x_6); -lean_dec(x_63); -x_65 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_66 = lean_int_ediv(x_64, x_65); -x_67 = lean_int_emod(x_64, x_65); -lean_dec(x_64); -x_68 = l_Std_Time_PlainTime_toNanoseconds(x_62); -lean_dec(x_62); -x_69 = lean_int_mul(x_66, x_65); -lean_dec(x_66); -x_70 = lean_int_add(x_68, x_69); -lean_dec(x_69); -lean_dec(x_68); -x_71 = l_Std_Time_PlainTime_ofNanoseconds(x_70); -lean_dec(x_70); -x_72 = lean_ctor_get(x_71, 0); -lean_inc(x_72); -x_73 = lean_ctor_get(x_71, 1); -lean_inc(x_73); -x_74 = lean_ctor_get(x_71, 2); -lean_inc(x_74); -if (lean_is_exclusive(x_71)) { - lean_ctor_release(x_71, 0); - lean_ctor_release(x_71, 1); - lean_ctor_release(x_71, 2); - lean_ctor_release(x_71, 3); - x_75 = x_71; -} else { - lean_dec_ref(x_71); - x_75 = lean_box(0); -} -if (lean_is_scalar(x_75)) { - x_76 = lean_alloc_ctor(0, 4, 0); -} else { - x_76 = x_75; -} -lean_ctor_set(x_76, 0, x_72); -lean_ctor_set(x_76, 1, x_73); -lean_ctor_set(x_76, 2, x_74); -lean_ctor_set(x_76, 3, x_67); -lean_inc(x_76); -lean_inc(x_61); -x_77 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_77, 0, x_61); -lean_ctor_set(x_77, 1, x_76); -x_78 = lean_ctor_get(x_1, 0); -x_79 = lean_int_neg(x_78); -x_80 = l_Std_Time_PlainTime_toSeconds(x_76); -x_81 = lean_int_add(x_80, x_79); -lean_dec(x_80); -x_82 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_83 = lean_int_ediv(x_81, x_82); -lean_dec(x_81); -x_84 = l_Std_Time_PlainTime_toNanoseconds(x_76); -lean_dec(x_76); -x_85 = lean_int_mul(x_79, x_65); -lean_dec(x_79); -x_86 = lean_int_add(x_84, x_85); -lean_dec(x_85); -lean_dec(x_84); -x_87 = l_Std_Time_PlainTime_ofNanoseconds(x_86); -lean_dec(x_86); -x_88 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_61); -x_89 = lean_int_add(x_88, x_83); -lean_dec(x_83); -lean_dec(x_88); -x_90 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_89); -lean_dec(x_89); -x_91 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_91, 0, x_90); -lean_ctor_set(x_91, 1, x_87); -x_92 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_91); -x_93 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_93, 0, x_77); -x_94 = lean_mk_thunk(x_93); -x_95 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_95, 0, x_92); -lean_ctor_set(x_95, 1, x_94); -return x_95; -} +lean_dec(x_31); +x_34 = lean_int_add(x_29, x_33); +lean_dec(x_33); +lean_dec(x_29); +x_35 = l_Std_Time_Duration_ofNanoseconds(x_34); +lean_dec(x_34); +x_36 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_35); +lean_dec(x_35); +x_37 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_36); +x_38 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_38, 0, x_20); +x_39 = lean_mk_thunk(x_38); +x_40 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_40, 0, x_37); +lean_ctor_set(x_40, 1, x_39); +return x_40; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_subNanoseconds___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -2002,106 +1804,119 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_10 = lean_int_add(x_9, x_3); -lean_dec(x_9); -x_11 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_10); -lean_dec(x_10); -lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); -lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); +x_9 = lean_int_add(x_8, x_3); lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_10 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_9); +lean_dec(x_9); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); +lean_dec(x_14); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); +lean_inc(x_33); lean_inc(x_32); -lean_inc(x_31); lean_dec(x_5); -x_33 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_31); -x_34 = lean_int_add(x_33, x_3); -lean_dec(x_33); -x_35 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_34); +x_34 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_32); +x_35 = lean_int_add(x_34, x_3); lean_dec(x_34); -lean_inc(x_32); -lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); +x_36 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_35); +lean_dec(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); -lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -2125,110 +1940,123 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_int_neg(x_3); -x_10 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_11 = lean_int_add(x_10, x_9); -lean_dec(x_9); -lean_dec(x_10); -x_12 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_11); -lean_dec(x_11); -lean_inc(x_8); -lean_inc(x_12); -lean_ctor_set(x_5, 0, x_12); -x_13 = lean_ctor_get(x_1, 0); -x_14 = lean_int_neg(x_13); -x_15 = l_Std_Time_PlainTime_toSeconds(x_8); -x_16 = lean_int_add(x_15, x_14); -lean_dec(x_15); -x_17 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_18 = lean_int_ediv(x_16, x_17); -lean_dec(x_16); -x_19 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = lean_int_neg(x_3); +x_9 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); +x_10 = lean_int_add(x_9, x_8); lean_dec(x_8); -x_20 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_21 = lean_int_mul(x_14, x_20); -lean_dec(x_14); -x_22 = lean_int_add(x_19, x_21); -lean_dec(x_21); -lean_dec(x_19); -x_23 = l_Std_Time_PlainTime_ofNanoseconds(x_22); -lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_25 = lean_int_add(x_24, x_18); +lean_dec(x_9); +x_11 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_10); +lean_dec(x_10); +lean_ctor_set(x_5, 0, x_11); +x_12 = lean_ctor_get(x_1, 0); +x_13 = lean_int_neg(x_12); +x_14 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_15 = lean_int_mul(x_13, x_14); +lean_dec(x_13); +lean_inc(x_5); +x_16 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_15); +lean_dec(x_15); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = lean_int_mul(x_18, x_14); lean_dec(x_18); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_dec(x_16); +x_21 = lean_int_add(x_19, x_20); +lean_dec(x_20); +lean_dec(x_19); +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_14); +lean_dec(x_22); +x_24 = lean_ctor_get(x_17, 1); +lean_inc(x_24); +lean_dec(x_17); +x_25 = lean_int_add(x_23, x_24); lean_dec(x_24); -x_26 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_25); +lean_dec(x_23); +x_26 = lean_int_add(x_21, x_25); lean_dec(x_25); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); -x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); -x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_29, 0, x_5); -x_30 = lean_mk_thunk(x_29); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_28); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_dec(x_21); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); +lean_dec(x_27); +x_29 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_28); +x_30 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_30, 0, x_5); +x_31 = lean_mk_thunk(x_30); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_29); +lean_ctor_set(x_32, 1, x_31); +return x_32; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_32 = lean_ctor_get(x_5, 0); -x_33 = lean_ctor_get(x_5, 1); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_33 = lean_ctor_get(x_5, 0); +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); lean_inc(x_33); -lean_inc(x_32); lean_dec(x_5); -x_34 = lean_int_neg(x_3); -x_35 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_32); -x_36 = lean_int_add(x_35, x_34); -lean_dec(x_34); +x_35 = lean_int_neg(x_3); +x_36 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_33); +x_37 = lean_int_add(x_36, x_35); lean_dec(x_35); -x_37 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_36); lean_dec(x_36); -lean_inc(x_33); -lean_inc(x_37); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_33); -x_39 = lean_ctor_get(x_1, 0); -x_40 = lean_int_neg(x_39); -x_41 = l_Std_Time_PlainTime_toSeconds(x_33); -x_42 = lean_int_add(x_41, x_40); +x_38 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_37); +lean_dec(x_37); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_34); +x_40 = lean_ctor_get(x_1, 0); +x_41 = lean_int_neg(x_40); +x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_43 = lean_int_mul(x_41, x_42); lean_dec(x_41); -x_43 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_44 = lean_int_ediv(x_42, x_43); -lean_dec(x_42); -x_45 = l_Std_Time_PlainTime_toNanoseconds(x_33); -lean_dec(x_33); -x_46 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_47 = lean_int_mul(x_40, x_46); -lean_dec(x_40); -x_48 = lean_int_add(x_45, x_47); -lean_dec(x_47); -lean_dec(x_45); -x_49 = l_Std_Time_PlainTime_ofNanoseconds(x_48); -lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_37); -x_51 = lean_int_add(x_50, x_44); +lean_inc(x_39); +x_44 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_39); +x_45 = l_Std_Time_Duration_ofNanoseconds(x_43); +lean_dec(x_43); +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_int_mul(x_46, x_42); +lean_dec(x_46); +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); lean_dec(x_44); +x_49 = lean_int_add(x_47, x_48); +lean_dec(x_48); +lean_dec(x_47); +x_50 = lean_ctor_get(x_45, 0); +lean_inc(x_50); +x_51 = lean_int_mul(x_50, x_42); lean_dec(x_50); -x_52 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_51); +x_52 = lean_ctor_get(x_45, 1); +lean_inc(x_52); +lean_dec(x_45); +x_53 = lean_int_add(x_51, x_52); +lean_dec(x_52); lean_dec(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_49); -x_54 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_53); -x_55 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_55, 0, x_38); -x_56 = lean_mk_thunk(x_55); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_54); -lean_ctor_set(x_57, 1, x_56); -return x_57; +x_54 = lean_int_add(x_49, x_53); +lean_dec(x_53); +lean_dec(x_49); +x_55 = l_Std_Time_Duration_ofNanoseconds(x_54); +lean_dec(x_54); +x_56 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_55); +lean_dec(x_55); +x_57 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_56); +x_58 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_58, 0, x_39); +x_59 = lean_mk_thunk(x_58); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_59); +return x_60; } } } @@ -2261,112 +2089,125 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_10 = l_Std_Time_DateTime_addWeeks___closed__1; -x_11 = lean_int_mul(x_3, x_10); -x_12 = lean_int_add(x_9, x_11); -lean_dec(x_11); -lean_dec(x_9); -x_13 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_12); -lean_dec(x_12); -lean_inc(x_8); -lean_inc(x_13); -lean_ctor_set(x_5, 0, x_13); -x_14 = lean_ctor_get(x_1, 0); -x_15 = lean_int_neg(x_14); -x_16 = l_Std_Time_PlainTime_toSeconds(x_8); -x_17 = lean_int_add(x_16, x_15); -lean_dec(x_16); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_19 = lean_int_ediv(x_17, x_18); -lean_dec(x_17); -x_20 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); +x_9 = l_Std_Time_DateTime_addWeeks___closed__1; +x_10 = lean_int_mul(x_3, x_9); +x_11 = lean_int_add(x_8, x_10); +lean_dec(x_10); lean_dec(x_8); -x_21 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_22 = lean_int_mul(x_15, x_21); -lean_dec(x_15); -x_23 = lean_int_add(x_20, x_22); -lean_dec(x_22); -lean_dec(x_20); -x_24 = l_Std_Time_PlainTime_ofNanoseconds(x_23); -lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_26 = lean_int_add(x_25, x_19); +x_12 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_11); +lean_dec(x_11); +lean_ctor_set(x_5, 0, x_12); +x_13 = lean_ctor_get(x_1, 0); +x_14 = lean_int_neg(x_13); +x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_16 = lean_int_mul(x_14, x_15); +lean_dec(x_14); +lean_inc(x_5); +x_17 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_16); +lean_dec(x_16); +x_19 = lean_ctor_get(x_17, 0); +lean_inc(x_19); +x_20 = lean_int_mul(x_19, x_15); lean_dec(x_19); +x_21 = lean_ctor_get(x_17, 1); +lean_inc(x_21); +lean_dec(x_17); +x_22 = lean_int_add(x_20, x_21); +lean_dec(x_21); +lean_dec(x_20); +x_23 = lean_ctor_get(x_18, 0); +lean_inc(x_23); +x_24 = lean_int_mul(x_23, x_15); +lean_dec(x_23); +x_25 = lean_ctor_get(x_18, 1); +lean_inc(x_25); +lean_dec(x_18); +x_26 = lean_int_add(x_24, x_25); lean_dec(x_25); -x_27 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_26); +lean_dec(x_24); +x_27 = lean_int_add(x_22, x_26); lean_dec(x_26); -x_28 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_28, 0, x_27); -lean_ctor_set(x_28, 1, x_24); -x_29 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_28); -x_30 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_30, 0, x_5); -x_31 = lean_mk_thunk(x_30); -x_32 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_32, 0, x_29); -lean_ctor_set(x_32, 1, x_31); -return x_32; +lean_dec(x_22); +x_28 = l_Std_Time_Duration_ofNanoseconds(x_27); +lean_dec(x_27); +x_29 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_28); +lean_dec(x_28); +x_30 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_29); +x_31 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_31, 0, x_5); +x_32 = lean_mk_thunk(x_31); +x_33 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_33, 0, x_30); +lean_ctor_set(x_33, 1, x_32); +return x_33; } else { -lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; -x_33 = lean_ctor_get(x_5, 0); -x_34 = lean_ctor_get(x_5, 1); +lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; +x_34 = lean_ctor_get(x_5, 0); +x_35 = lean_ctor_get(x_5, 1); +lean_inc(x_35); lean_inc(x_34); -lean_inc(x_33); lean_dec(x_5); -x_35 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_33); -x_36 = l_Std_Time_DateTime_addWeeks___closed__1; -x_37 = lean_int_mul(x_3, x_36); -x_38 = lean_int_add(x_35, x_37); -lean_dec(x_37); -lean_dec(x_35); -x_39 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_38); +x_36 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_34); +x_37 = l_Std_Time_DateTime_addWeeks___closed__1; +x_38 = lean_int_mul(x_3, x_37); +x_39 = lean_int_add(x_36, x_38); lean_dec(x_38); -lean_inc(x_34); -lean_inc(x_39); -x_40 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_34); -x_41 = lean_ctor_get(x_1, 0); -x_42 = lean_int_neg(x_41); -x_43 = l_Std_Time_PlainTime_toSeconds(x_34); -x_44 = lean_int_add(x_43, x_42); +lean_dec(x_36); +x_40 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_39); +lean_dec(x_39); +x_41 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_41, 0, x_40); +lean_ctor_set(x_41, 1, x_35); +x_42 = lean_ctor_get(x_1, 0); +x_43 = lean_int_neg(x_42); +x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_45 = lean_int_mul(x_43, x_44); lean_dec(x_43); -x_45 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_46 = lean_int_ediv(x_44, x_45); -lean_dec(x_44); -x_47 = l_Std_Time_PlainTime_toNanoseconds(x_34); -lean_dec(x_34); -x_48 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_49 = lean_int_mul(x_42, x_48); -lean_dec(x_42); -x_50 = lean_int_add(x_47, x_49); -lean_dec(x_49); -lean_dec(x_47); -x_51 = l_Std_Time_PlainTime_ofNanoseconds(x_50); -lean_dec(x_50); -x_52 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_39); -x_53 = lean_int_add(x_52, x_46); +lean_inc(x_41); +x_46 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_41); +x_47 = l_Std_Time_Duration_ofNanoseconds(x_45); +lean_dec(x_45); +x_48 = lean_ctor_get(x_46, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_44); +lean_dec(x_48); +x_50 = lean_ctor_get(x_46, 1); +lean_inc(x_50); lean_dec(x_46); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); +lean_dec(x_49); +x_52 = lean_ctor_get(x_47, 0); +lean_inc(x_52); +x_53 = lean_int_mul(x_52, x_44); lean_dec(x_52); -x_54 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_53); +x_54 = lean_ctor_get(x_47, 1); +lean_inc(x_54); +lean_dec(x_47); +x_55 = lean_int_add(x_53, x_54); +lean_dec(x_54); lean_dec(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_54); -lean_ctor_set(x_55, 1, x_51); -x_56 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_55); -x_57 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_57, 0, x_40); -x_58 = lean_mk_thunk(x_57); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_56); -lean_ctor_set(x_59, 1, x_58); -return x_59; +x_56 = lean_int_add(x_51, x_55); +lean_dec(x_55); +lean_dec(x_51); +x_57 = l_Std_Time_Duration_ofNanoseconds(x_56); +lean_dec(x_56); +x_58 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_57); +lean_dec(x_57); +x_59 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_58); +x_60 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_60, 0, x_41); +x_61 = lean_mk_thunk(x_60); +x_62 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_62, 0, x_59); +lean_ctor_set(x_62, 1, x_61); +return x_62; } } } @@ -2390,116 +2231,129 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_int_neg(x_3); -x_10 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); -x_11 = l_Std_Time_DateTime_addWeeks___closed__1; -x_12 = lean_int_mul(x_9, x_11); -lean_dec(x_9); -x_13 = lean_int_add(x_10, x_12); -lean_dec(x_12); -lean_dec(x_10); -x_14 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_13); -lean_dec(x_13); -lean_inc(x_8); -lean_inc(x_14); -lean_ctor_set(x_5, 0, x_14); -x_15 = lean_ctor_get(x_1, 0); -x_16 = lean_int_neg(x_15); -x_17 = l_Std_Time_PlainTime_toSeconds(x_8); -x_18 = lean_int_add(x_17, x_16); -lean_dec(x_17); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_20 = lean_int_ediv(x_18, x_19); -lean_dec(x_18); -x_21 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = lean_int_neg(x_3); +x_9 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_7); +x_10 = l_Std_Time_DateTime_addWeeks___closed__1; +x_11 = lean_int_mul(x_8, x_10); lean_dec(x_8); -x_22 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_23 = lean_int_mul(x_16, x_22); -lean_dec(x_16); -x_24 = lean_int_add(x_21, x_23); -lean_dec(x_23); -lean_dec(x_21); -x_25 = l_Std_Time_PlainTime_ofNanoseconds(x_24); -lean_dec(x_24); -x_26 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_14); -x_27 = lean_int_add(x_26, x_20); +x_12 = lean_int_add(x_9, x_11); +lean_dec(x_11); +lean_dec(x_9); +x_13 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_12); +lean_dec(x_12); +lean_ctor_set(x_5, 0, x_13); +x_14 = lean_ctor_get(x_1, 0); +x_15 = lean_int_neg(x_14); +x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_17 = lean_int_mul(x_15, x_16); +lean_dec(x_15); +lean_inc(x_5); +x_18 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_17); +lean_dec(x_17); +x_20 = lean_ctor_get(x_18, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_16); lean_dec(x_20); +x_22 = lean_ctor_get(x_18, 1); +lean_inc(x_22); +lean_dec(x_18); +x_23 = lean_int_add(x_21, x_22); +lean_dec(x_22); +lean_dec(x_21); +x_24 = lean_ctor_get(x_19, 0); +lean_inc(x_24); +x_25 = lean_int_mul(x_24, x_16); +lean_dec(x_24); +x_26 = lean_ctor_get(x_19, 1); +lean_inc(x_26); +lean_dec(x_19); +x_27 = lean_int_add(x_25, x_26); lean_dec(x_26); -x_28 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_27); +lean_dec(x_25); +x_28 = lean_int_add(x_23, x_27); lean_dec(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_25); -x_30 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_29); -x_31 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_31, 0, x_5); -x_32 = lean_mk_thunk(x_31); -x_33 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_33, 0, x_30); -lean_ctor_set(x_33, 1, x_32); -return x_33; +lean_dec(x_23); +x_29 = l_Std_Time_Duration_ofNanoseconds(x_28); +lean_dec(x_28); +x_30 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_29); +lean_dec(x_29); +x_31 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_30); +x_32 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_32, 0, x_5); +x_33 = lean_mk_thunk(x_32); +x_34 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_34, 0, x_31); +lean_ctor_set(x_34, 1, x_33); +return x_34; } else { -lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; -x_34 = lean_ctor_get(x_5, 0); -x_35 = lean_ctor_get(x_5, 1); +lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; +x_35 = lean_ctor_get(x_5, 0); +x_36 = lean_ctor_get(x_5, 1); +lean_inc(x_36); lean_inc(x_35); -lean_inc(x_34); lean_dec(x_5); -x_36 = lean_int_neg(x_3); -x_37 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_34); -x_38 = l_Std_Time_DateTime_addWeeks___closed__1; -x_39 = lean_int_mul(x_36, x_38); -lean_dec(x_36); -x_40 = lean_int_add(x_37, x_39); -lean_dec(x_39); +x_37 = lean_int_neg(x_3); +x_38 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); +x_39 = l_Std_Time_DateTime_addWeeks___closed__1; +x_40 = lean_int_mul(x_37, x_39); lean_dec(x_37); -x_41 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_40); +x_41 = lean_int_add(x_38, x_40); lean_dec(x_40); -lean_inc(x_35); -lean_inc(x_41); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_41); -lean_ctor_set(x_42, 1, x_35); -x_43 = lean_ctor_get(x_1, 0); -x_44 = lean_int_neg(x_43); -x_45 = l_Std_Time_PlainTime_toSeconds(x_35); -x_46 = lean_int_add(x_45, x_44); +lean_dec(x_38); +x_42 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_41); +lean_dec(x_41); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_42); +lean_ctor_set(x_43, 1, x_36); +x_44 = lean_ctor_get(x_1, 0); +x_45 = lean_int_neg(x_44); +x_46 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_47 = lean_int_mul(x_45, x_46); lean_dec(x_45); -x_47 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_48 = lean_int_ediv(x_46, x_47); -lean_dec(x_46); -x_49 = l_Std_Time_PlainTime_toNanoseconds(x_35); -lean_dec(x_35); -x_50 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_51 = lean_int_mul(x_44, x_50); -lean_dec(x_44); -x_52 = lean_int_add(x_49, x_51); -lean_dec(x_51); -lean_dec(x_49); -x_53 = l_Std_Time_PlainTime_ofNanoseconds(x_52); -lean_dec(x_52); -x_54 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_41); -x_55 = lean_int_add(x_54, x_48); +lean_inc(x_43); +x_48 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_43); +x_49 = l_Std_Time_Duration_ofNanoseconds(x_47); +lean_dec(x_47); +x_50 = lean_ctor_get(x_48, 0); +lean_inc(x_50); +x_51 = lean_int_mul(x_50, x_46); +lean_dec(x_50); +x_52 = lean_ctor_get(x_48, 1); +lean_inc(x_52); lean_dec(x_48); +x_53 = lean_int_add(x_51, x_52); +lean_dec(x_52); +lean_dec(x_51); +x_54 = lean_ctor_get(x_49, 0); +lean_inc(x_54); +x_55 = lean_int_mul(x_54, x_46); lean_dec(x_54); -x_56 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_55); +x_56 = lean_ctor_get(x_49, 1); +lean_inc(x_56); +lean_dec(x_49); +x_57 = lean_int_add(x_55, x_56); +lean_dec(x_56); lean_dec(x_55); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_56); -lean_ctor_set(x_57, 1, x_53); -x_58 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_57); -x_59 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_59, 0, x_42); -x_60 = lean_mk_thunk(x_59); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_58); -lean_ctor_set(x_61, 1, x_60); -return x_61; +x_58 = lean_int_add(x_53, x_57); +lean_dec(x_57); +lean_dec(x_53); +x_59 = l_Std_Time_Duration_ofNanoseconds(x_58); +lean_dec(x_58); +x_60 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_59); +lean_dec(x_59); +x_61 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_60); +x_62 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_62, 0, x_43); +x_63 = lean_mk_thunk(x_62); +x_64 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_64, 0, x_61); +lean_ctor_set(x_64, 1, x_63); +return x_64; } } } @@ -2520,40 +2374,43 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -lean_inc(x_5); x_6 = l_Std_Time_PlainDateTime_addMonthsClip(x_5, x_3); x_7 = lean_ctor_get(x_1, 0); x_8 = lean_int_neg(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_dec(x_5); -x_10 = l_Std_Time_PlainTime_toSeconds(x_9); -x_11 = lean_int_add(x_10, x_8); -lean_dec(x_10); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_9); -lean_dec(x_9); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_8, x_15); +x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); -lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_6, 0); -lean_inc(x_19); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); +lean_inc(x_6); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_12 = l_Std_Time_Duration_ofNanoseconds(x_10); +lean_dec(x_10); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_dec(x_11); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_9); +lean_dec(x_17); +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_dec(x_12); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); lean_dec(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); x_25 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); lean_closure_set(x_25, 0, x_6); @@ -2584,102 +2441,115 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_int_neg(x_3); -x_10 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_9); -lean_dec(x_9); -lean_inc(x_8); -lean_inc(x_10); -lean_ctor_set(x_5, 0, x_10); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_8); -x_14 = lean_int_add(x_13, x_12); -lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = lean_int_neg(x_3); +x_9 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_8); lean_dec(x_8); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_10); -x_23 = lean_int_add(x_22, x_16); +lean_ctor_set(x_5, 0, x_9); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); -x_31 = lean_ctor_get(x_5, 1); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_31 = lean_ctor_get(x_5, 0); +x_32 = lean_ctor_get(x_5, 1); +lean_inc(x_32); lean_inc(x_31); -lean_inc(x_30); lean_dec(x_5); -x_32 = lean_int_neg(x_3); -x_33 = l_Std_Time_PlainDate_addMonthsClip(x_30, x_32); -lean_dec(x_32); -lean_inc(x_31); -lean_inc(x_33); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_31); -x_35 = lean_ctor_get(x_1, 0); -x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_31); -x_38 = lean_int_add(x_37, x_36); +x_33 = lean_int_neg(x_3); +x_34 = l_Std_Time_PlainDate_addMonthsClip(x_31, x_33); +lean_dec(x_33); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_ctor_get(x_1, 0); +x_37 = lean_int_neg(x_36); +x_38 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_39 = lean_int_mul(x_37, x_38); lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_31); -lean_dec(x_31); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); -lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); -lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_33); -x_47 = lean_int_add(x_46, x_40); +lean_inc(x_35); +x_40 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_35); +x_41 = l_Std_Time_Duration_ofNanoseconds(x_39); +lean_dec(x_39); +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = lean_int_mul(x_42, x_38); +lean_dec(x_42); +x_44 = lean_ctor_get(x_40, 1); +lean_inc(x_44); lean_dec(x_40); +x_45 = lean_int_add(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +x_46 = lean_ctor_get(x_41, 0); +lean_inc(x_46); +x_47 = lean_int_mul(x_46, x_38); lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_ctor_get(x_41, 1); +lean_inc(x_48); +lean_dec(x_41); +x_49 = lean_int_add(x_47, x_48); +lean_dec(x_48); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_34); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +x_50 = lean_int_add(x_45, x_49); +lean_dec(x_49); +lean_dec(x_45); +x_51 = l_Std_Time_Duration_ofNanoseconds(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_51); +lean_dec(x_51); +x_53 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_52); +x_54 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_54, 0, x_35); +x_55 = lean_mk_thunk(x_54); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_53); +lean_ctor_set(x_56, 1, x_55); +return x_56; } } } @@ -2700,40 +2570,43 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -lean_inc(x_5); x_6 = l_Std_Time_PlainDateTime_addMonthsRollOver(x_5, x_3); x_7 = lean_ctor_get(x_1, 0); x_8 = lean_int_neg(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_dec(x_5); -x_10 = l_Std_Time_PlainTime_toSeconds(x_9); -x_11 = lean_int_add(x_10, x_8); -lean_dec(x_10); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_9); -lean_dec(x_9); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_8, x_15); +x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); -lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_6, 0); -lean_inc(x_19); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); +lean_inc(x_6); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_12 = l_Std_Time_Duration_ofNanoseconds(x_10); +lean_dec(x_10); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_dec(x_11); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_9); +lean_dec(x_17); +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_dec(x_12); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); lean_dec(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); x_25 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); lean_closure_set(x_25, 0, x_6); @@ -2764,102 +2637,115 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_int_neg(x_3); -x_10 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_9); -lean_dec(x_9); -lean_inc(x_8); -lean_inc(x_10); -lean_ctor_set(x_5, 0, x_10); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_8); -x_14 = lean_int_add(x_13, x_12); -lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_8 = lean_int_neg(x_3); +x_9 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_8); lean_dec(x_8); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_10); -x_23 = lean_int_add(x_22, x_16); +lean_ctor_set(x_5, 0, x_9); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); +lean_dec(x_13); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); -x_31 = lean_ctor_get(x_5, 1); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; +x_31 = lean_ctor_get(x_5, 0); +x_32 = lean_ctor_get(x_5, 1); +lean_inc(x_32); lean_inc(x_31); -lean_inc(x_30); lean_dec(x_5); -x_32 = lean_int_neg(x_3); -x_33 = l_Std_Time_PlainDate_addMonthsRollOver(x_30, x_32); -lean_dec(x_32); -lean_inc(x_31); -lean_inc(x_33); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_31); -x_35 = lean_ctor_get(x_1, 0); -x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_31); -x_38 = lean_int_add(x_37, x_36); +x_33 = lean_int_neg(x_3); +x_34 = l_Std_Time_PlainDate_addMonthsRollOver(x_31, x_33); +lean_dec(x_33); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_34); +lean_ctor_set(x_35, 1, x_32); +x_36 = lean_ctor_get(x_1, 0); +x_37 = lean_int_neg(x_36); +x_38 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_39 = lean_int_mul(x_37, x_38); lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_31); -lean_dec(x_31); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); -lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); -lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_33); -x_47 = lean_int_add(x_46, x_40); +lean_inc(x_35); +x_40 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_35); +x_41 = l_Std_Time_Duration_ofNanoseconds(x_39); +lean_dec(x_39); +x_42 = lean_ctor_get(x_40, 0); +lean_inc(x_42); +x_43 = lean_int_mul(x_42, x_38); +lean_dec(x_42); +x_44 = lean_ctor_get(x_40, 1); +lean_inc(x_44); lean_dec(x_40); +x_45 = lean_int_add(x_43, x_44); +lean_dec(x_44); +lean_dec(x_43); +x_46 = lean_ctor_get(x_41, 0); +lean_inc(x_46); +x_47 = lean_int_mul(x_46, x_38); lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_ctor_get(x_41, 1); +lean_inc(x_48); +lean_dec(x_41); +x_49 = lean_int_add(x_47, x_48); +lean_dec(x_48); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_34); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +x_50 = lean_int_add(x_45, x_49); +lean_dec(x_49); +lean_dec(x_45); +x_51 = l_Std_Time_Duration_ofNanoseconds(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_51); +lean_dec(x_51); +x_53 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_52); +x_54 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_54, 0, x_35); +x_55 = lean_mk_thunk(x_54); +x_56 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_56, 0, x_53); +lean_ctor_set(x_56, 1, x_55); +return x_56; } } } @@ -2892,104 +2778,117 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_10 = lean_int_mul(x_3, x_9); -x_11 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_10); -lean_dec(x_10); -lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); +x_8 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_9 = lean_int_mul(x_3, x_8); +x_10 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_9); +lean_dec(x_9); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); +lean_inc(x_33); lean_inc(x_32); -lean_inc(x_31); lean_dec(x_5); -x_33 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_34 = lean_int_mul(x_3, x_33); -x_35 = l_Std_Time_PlainDate_addMonthsRollOver(x_31, x_34); -lean_dec(x_34); -lean_inc(x_32); -lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); +x_34 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_35 = lean_int_mul(x_3, x_34); +x_36 = l_Std_Time_PlainDate_addMonthsRollOver(x_32, x_35); +lean_dec(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); -lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -3013,104 +2912,117 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_10 = lean_int_mul(x_3, x_9); -x_11 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_10); -lean_dec(x_10); -lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); +x_8 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_9 = lean_int_mul(x_3, x_8); +x_10 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_9); +lean_dec(x_9); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); +lean_inc(x_33); lean_inc(x_32); -lean_inc(x_31); lean_dec(x_5); -x_33 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_34 = lean_int_mul(x_3, x_33); -x_35 = l_Std_Time_PlainDate_addMonthsClip(x_31, x_34); -lean_dec(x_34); -lean_inc(x_32); -lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); +x_34 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_35 = lean_int_mul(x_3, x_34); +x_36 = l_Std_Time_PlainDate_addMonthsClip(x_32, x_35); +lean_dec(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); -lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -3134,108 +3046,121 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_10 = lean_int_mul(x_3, x_9); -x_11 = lean_int_neg(x_10); +x_8 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_9 = lean_int_mul(x_3, x_8); +x_10 = lean_int_neg(x_9); +lean_dec(x_9); +x_11 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_10); lean_dec(x_10); -x_12 = l_Std_Time_PlainDate_addMonthsRollOver(x_7, x_11); -lean_dec(x_11); -lean_inc(x_8); -lean_inc(x_12); -lean_ctor_set(x_5, 0, x_12); -x_13 = lean_ctor_get(x_1, 0); -x_14 = lean_int_neg(x_13); -x_15 = l_Std_Time_PlainTime_toSeconds(x_8); -x_16 = lean_int_add(x_15, x_14); +lean_ctor_set(x_5, 0, x_11); +x_12 = lean_ctor_get(x_1, 0); +x_13 = lean_int_neg(x_12); +x_14 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_15 = lean_int_mul(x_13, x_14); +lean_dec(x_13); +lean_inc(x_5); +x_16 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_15); lean_dec(x_15); -x_17 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_18 = lean_int_ediv(x_16, x_17); -lean_dec(x_16); -x_19 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_20 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_21 = lean_int_mul(x_14, x_20); -lean_dec(x_14); -x_22 = lean_int_add(x_19, x_21); -lean_dec(x_21); -lean_dec(x_19); -x_23 = l_Std_Time_PlainTime_ofNanoseconds(x_22); -lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_25 = lean_int_add(x_24, x_18); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = lean_int_mul(x_18, x_14); lean_dec(x_18); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_dec(x_16); +x_21 = lean_int_add(x_19, x_20); +lean_dec(x_20); +lean_dec(x_19); +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_14); +lean_dec(x_22); +x_24 = lean_ctor_get(x_17, 1); +lean_inc(x_24); +lean_dec(x_17); +x_25 = lean_int_add(x_23, x_24); lean_dec(x_24); -x_26 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_25); +lean_dec(x_23); +x_26 = lean_int_add(x_21, x_25); lean_dec(x_25); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); -x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); -x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_29, 0, x_5); -x_30 = lean_mk_thunk(x_29); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_28); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_dec(x_21); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); +lean_dec(x_27); +x_29 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_28); +x_30 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_30, 0, x_5); +x_31 = lean_mk_thunk(x_30); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_29); +lean_ctor_set(x_32, 1, x_31); +return x_32; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_32 = lean_ctor_get(x_5, 0); -x_33 = lean_ctor_get(x_5, 1); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_33 = lean_ctor_get(x_5, 0); +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); lean_inc(x_33); -lean_inc(x_32); lean_dec(x_5); -x_34 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_35 = lean_int_mul(x_3, x_34); -x_36 = lean_int_neg(x_35); -lean_dec(x_35); -x_37 = l_Std_Time_PlainDate_addMonthsRollOver(x_32, x_36); +x_35 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_36 = lean_int_mul(x_3, x_35); +x_37 = lean_int_neg(x_36); lean_dec(x_36); -lean_inc(x_33); -lean_inc(x_37); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_33); -x_39 = lean_ctor_get(x_1, 0); -x_40 = lean_int_neg(x_39); -x_41 = l_Std_Time_PlainTime_toSeconds(x_33); -x_42 = lean_int_add(x_41, x_40); +x_38 = l_Std_Time_PlainDate_addMonthsRollOver(x_33, x_37); +lean_dec(x_37); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_34); +x_40 = lean_ctor_get(x_1, 0); +x_41 = lean_int_neg(x_40); +x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_43 = lean_int_mul(x_41, x_42); lean_dec(x_41); -x_43 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_44 = lean_int_ediv(x_42, x_43); -lean_dec(x_42); -x_45 = l_Std_Time_PlainTime_toNanoseconds(x_33); -lean_dec(x_33); -x_46 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_47 = lean_int_mul(x_40, x_46); -lean_dec(x_40); -x_48 = lean_int_add(x_45, x_47); -lean_dec(x_47); -lean_dec(x_45); -x_49 = l_Std_Time_PlainTime_ofNanoseconds(x_48); -lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_37); -x_51 = lean_int_add(x_50, x_44); +lean_inc(x_39); +x_44 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_39); +x_45 = l_Std_Time_Duration_ofNanoseconds(x_43); +lean_dec(x_43); +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_int_mul(x_46, x_42); +lean_dec(x_46); +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); lean_dec(x_44); +x_49 = lean_int_add(x_47, x_48); +lean_dec(x_48); +lean_dec(x_47); +x_50 = lean_ctor_get(x_45, 0); +lean_inc(x_50); +x_51 = lean_int_mul(x_50, x_42); lean_dec(x_50); -x_52 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_51); +x_52 = lean_ctor_get(x_45, 1); +lean_inc(x_52); +lean_dec(x_45); +x_53 = lean_int_add(x_51, x_52); +lean_dec(x_52); lean_dec(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_49); -x_54 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_53); -x_55 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_55, 0, x_38); -x_56 = lean_mk_thunk(x_55); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_54); -lean_ctor_set(x_57, 1, x_56); -return x_57; +x_54 = lean_int_add(x_49, x_53); +lean_dec(x_53); +lean_dec(x_49); +x_55 = l_Std_Time_Duration_ofNanoseconds(x_54); +lean_dec(x_54); +x_56 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_55); +lean_dec(x_55); +x_57 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_56); +x_58 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_58, 0, x_39); +x_59 = lean_mk_thunk(x_58); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_59); +return x_60; } } } @@ -3259,108 +3184,121 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_10 = lean_int_mul(x_3, x_9); -x_11 = lean_int_neg(x_10); +x_8 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_9 = lean_int_mul(x_3, x_8); +x_10 = lean_int_neg(x_9); +lean_dec(x_9); +x_11 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_10); lean_dec(x_10); -x_12 = l_Std_Time_PlainDate_addMonthsClip(x_7, x_11); -lean_dec(x_11); -lean_inc(x_8); -lean_inc(x_12); -lean_ctor_set(x_5, 0, x_12); -x_13 = lean_ctor_get(x_1, 0); -x_14 = lean_int_neg(x_13); -x_15 = l_Std_Time_PlainTime_toSeconds(x_8); -x_16 = lean_int_add(x_15, x_14); +lean_ctor_set(x_5, 0, x_11); +x_12 = lean_ctor_get(x_1, 0); +x_13 = lean_int_neg(x_12); +x_14 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_15 = lean_int_mul(x_13, x_14); +lean_dec(x_13); +lean_inc(x_5); +x_16 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_17 = l_Std_Time_Duration_ofNanoseconds(x_15); lean_dec(x_15); -x_17 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_18 = lean_int_ediv(x_16, x_17); -lean_dec(x_16); -x_19 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_20 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_21 = lean_int_mul(x_14, x_20); -lean_dec(x_14); -x_22 = lean_int_add(x_19, x_21); -lean_dec(x_21); -lean_dec(x_19); -x_23 = l_Std_Time_PlainTime_ofNanoseconds(x_22); -lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_25 = lean_int_add(x_24, x_18); +x_18 = lean_ctor_get(x_16, 0); +lean_inc(x_18); +x_19 = lean_int_mul(x_18, x_14); lean_dec(x_18); +x_20 = lean_ctor_get(x_16, 1); +lean_inc(x_20); +lean_dec(x_16); +x_21 = lean_int_add(x_19, x_20); +lean_dec(x_20); +lean_dec(x_19); +x_22 = lean_ctor_get(x_17, 0); +lean_inc(x_22); +x_23 = lean_int_mul(x_22, x_14); +lean_dec(x_22); +x_24 = lean_ctor_get(x_17, 1); +lean_inc(x_24); +lean_dec(x_17); +x_25 = lean_int_add(x_23, x_24); lean_dec(x_24); -x_26 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_25); +lean_dec(x_23); +x_26 = lean_int_add(x_21, x_25); lean_dec(x_25); -x_27 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_27, 0, x_26); -lean_ctor_set(x_27, 1, x_23); -x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); -x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_29, 0, x_5); -x_30 = lean_mk_thunk(x_29); -x_31 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_31, 0, x_28); -lean_ctor_set(x_31, 1, x_30); -return x_31; +lean_dec(x_21); +x_27 = l_Std_Time_Duration_ofNanoseconds(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_27); +lean_dec(x_27); +x_29 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_28); +x_30 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_30, 0, x_5); +x_31 = lean_mk_thunk(x_30); +x_32 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_32, 0, x_29); +lean_ctor_set(x_32, 1, x_31); +return x_32; } else { -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; -x_32 = lean_ctor_get(x_5, 0); -x_33 = lean_ctor_get(x_5, 1); +lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; +x_33 = lean_ctor_get(x_5, 0); +x_34 = lean_ctor_get(x_5, 1); +lean_inc(x_34); lean_inc(x_33); -lean_inc(x_32); lean_dec(x_5); -x_34 = l_Std_Time_DateTime_addYearsRollOver___closed__1; -x_35 = lean_int_mul(x_3, x_34); -x_36 = lean_int_neg(x_35); -lean_dec(x_35); -x_37 = l_Std_Time_PlainDate_addMonthsClip(x_32, x_36); +x_35 = l_Std_Time_DateTime_addYearsRollOver___closed__1; +x_36 = lean_int_mul(x_3, x_35); +x_37 = lean_int_neg(x_36); lean_dec(x_36); -lean_inc(x_33); -lean_inc(x_37); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_33); -x_39 = lean_ctor_get(x_1, 0); -x_40 = lean_int_neg(x_39); -x_41 = l_Std_Time_PlainTime_toSeconds(x_33); -x_42 = lean_int_add(x_41, x_40); +x_38 = l_Std_Time_PlainDate_addMonthsClip(x_33, x_37); +lean_dec(x_37); +x_39 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_39, 0, x_38); +lean_ctor_set(x_39, 1, x_34); +x_40 = lean_ctor_get(x_1, 0); +x_41 = lean_int_neg(x_40); +x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_43 = lean_int_mul(x_41, x_42); lean_dec(x_41); -x_43 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_44 = lean_int_ediv(x_42, x_43); -lean_dec(x_42); -x_45 = l_Std_Time_PlainTime_toNanoseconds(x_33); -lean_dec(x_33); -x_46 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_47 = lean_int_mul(x_40, x_46); -lean_dec(x_40); -x_48 = lean_int_add(x_45, x_47); -lean_dec(x_47); -lean_dec(x_45); -x_49 = l_Std_Time_PlainTime_ofNanoseconds(x_48); -lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_37); -x_51 = lean_int_add(x_50, x_44); +lean_inc(x_39); +x_44 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_39); +x_45 = l_Std_Time_Duration_ofNanoseconds(x_43); +lean_dec(x_43); +x_46 = lean_ctor_get(x_44, 0); +lean_inc(x_46); +x_47 = lean_int_mul(x_46, x_42); +lean_dec(x_46); +x_48 = lean_ctor_get(x_44, 1); +lean_inc(x_48); lean_dec(x_44); +x_49 = lean_int_add(x_47, x_48); +lean_dec(x_48); +lean_dec(x_47); +x_50 = lean_ctor_get(x_45, 0); +lean_inc(x_50); +x_51 = lean_int_mul(x_50, x_42); lean_dec(x_50); -x_52 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_51); +x_52 = lean_ctor_get(x_45, 1); +lean_inc(x_52); +lean_dec(x_45); +x_53 = lean_int_add(x_51, x_52); +lean_dec(x_52); lean_dec(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_52); -lean_ctor_set(x_53, 1, x_49); -x_54 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_53); -x_55 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_55, 0, x_38); -x_56 = lean_mk_thunk(x_55); -x_57 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_57, 0, x_54); -lean_ctor_set(x_57, 1, x_56); -return x_57; +x_54 = lean_int_add(x_49, x_53); +lean_dec(x_53); +lean_dec(x_49); +x_55 = l_Std_Time_Duration_ofNanoseconds(x_54); +lean_dec(x_54); +x_56 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_55); +lean_dec(x_55); +x_57 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_56); +x_58 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_58, 0, x_39); +x_59 = lean_mk_thunk(x_58); +x_60 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_60, 0, x_57); +lean_ctor_set(x_60, 1, x_59); +return x_60; } } } @@ -3405,431 +3343,643 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_withDaysClip(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; +lean_object* x_4; lean_object* x_5; uint8_t x_6; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_8 = x_5; -} else { - lean_dec_ref(x_5); - x_8 = lean_box(0); -} -x_9 = !lean_is_exclusive(x_6); -if (x_9 == 0) +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_10 = lean_ctor_get(x_6, 0); -x_11 = lean_ctor_get(x_6, 1); -x_12 = lean_ctor_get(x_6, 2); -lean_dec(x_12); -x_13 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_14 = lean_int_mod(x_10, x_13); -x_15 = l_Std_Time_instInhabitedDateTime___closed__2; -x_16 = lean_int_dec_eq(x_14, x_15); -lean_dec(x_14); -x_17 = lean_ctor_get(x_1, 0); -x_18 = lean_int_neg(x_17); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_18, x_19); -if (x_16 == 0) +lean_object* x_7; uint8_t x_8; +x_7 = lean_ctor_get(x_5, 0); +x_8 = !lean_is_exclusive(x_7); +if (x_8 == 0) { -uint8_t x_40; lean_object* x_41; uint8_t x_42; -x_40 = 0; -x_41 = l_Std_Time_Month_Ordinal_days(x_40, x_11); -x_42 = lean_int_dec_lt(x_41, x_3); -if (x_42 == 0) +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_7, 0); +x_10 = lean_ctor_get(x_7, 1); +x_11 = lean_ctor_get(x_7, 2); +lean_dec(x_11); +x_12 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_13 = lean_int_mod(x_9, x_12); +x_14 = l_Std_Time_instInhabitedDateTime___closed__2; +x_15 = lean_int_dec_eq(x_13, x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_1, 0); +x_17 = lean_int_neg(x_16); +x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_19 = lean_int_mul(x_17, x_18); +lean_dec(x_17); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_18); +lean_dec(x_21); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_int_add(x_22, x_23); +lean_dec(x_23); +lean_dec(x_22); +if (x_15 == 0) { -lean_object* x_43; -lean_dec(x_41); -lean_ctor_set(x_6, 2, x_3); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_6); -lean_ctor_set(x_43, 1, x_7); -x_21 = x_43; -goto block_39; +uint8_t x_39; lean_object* x_40; uint8_t x_41; +x_39 = 0; +x_40 = l_Std_Time_Month_Ordinal_days(x_39, x_10); +x_41 = lean_int_dec_lt(x_40, x_3); +if (x_41 == 0) +{ +lean_dec(x_40); +lean_ctor_set(x_7, 2, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_44; lean_dec(x_3); -lean_ctor_set(x_6, 2, x_41); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_6); -lean_ctor_set(x_44, 1, x_7); -x_21 = x_44; -goto block_39; +lean_ctor_set(x_7, 2, x_40); +x_25 = x_5; +goto block_38; } } else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; -x_45 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_46 = lean_int_mod(x_10, x_45); -x_47 = lean_int_dec_eq(x_46, x_15); -lean_dec(x_46); -x_48 = l_instDecidableNot___rarg(x_47); +lean_object* x_42; lean_object* x_43; uint8_t x_44; uint8_t x_45; +x_42 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_43 = lean_int_mod(x_9, x_42); +x_44 = lean_int_dec_eq(x_43, x_14); +lean_dec(x_43); +x_45 = l_instDecidableNot___rarg(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_47 = lean_int_mod(x_9, x_46); +x_48 = lean_int_dec_eq(x_47, x_14); +lean_dec(x_47); if (x_48 == 0) { -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_50 = lean_int_mod(x_10, x_49); -x_51 = lean_int_dec_eq(x_50, x_15); -lean_dec(x_50); +uint8_t x_49; lean_object* x_50; uint8_t x_51; +x_49 = 0; +x_50 = l_Std_Time_Month_Ordinal_days(x_49, x_10); +x_51 = lean_int_dec_lt(x_50, x_3); if (x_51 == 0) { +lean_dec(x_50); +lean_ctor_set(x_7, 2, x_3); +x_25 = x_5; +goto block_38; +} +else +{ +lean_dec(x_3); +lean_ctor_set(x_7, 2, x_50); +x_25 = x_5; +goto block_38; +} +} +else +{ uint8_t x_52; lean_object* x_53; uint8_t x_54; -x_52 = 0; -x_53 = l_Std_Time_Month_Ordinal_days(x_52, x_11); +x_52 = 1; +x_53 = l_Std_Time_Month_Ordinal_days(x_52, x_10); x_54 = lean_int_dec_lt(x_53, x_3); if (x_54 == 0) { -lean_object* x_55; lean_dec(x_53); -lean_ctor_set(x_6, 2, x_3); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_6); -lean_ctor_set(x_55, 1, x_7); -x_21 = x_55; -goto block_39; +lean_ctor_set(x_7, 2, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_56; lean_dec(x_3); -lean_ctor_set(x_6, 2, x_53); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_6); -lean_ctor_set(x_56, 1, x_7); -x_21 = x_56; -goto block_39; +lean_ctor_set(x_7, 2, x_53); +x_25 = x_5; +goto block_38; +} } } else { -uint8_t x_57; lean_object* x_58; uint8_t x_59; -x_57 = 1; -x_58 = l_Std_Time_Month_Ordinal_days(x_57, x_11); -x_59 = lean_int_dec_lt(x_58, x_3); -if (x_59 == 0) +uint8_t x_55; lean_object* x_56; uint8_t x_57; +x_55 = 1; +x_56 = l_Std_Time_Month_Ordinal_days(x_55, x_10); +x_57 = lean_int_dec_lt(x_56, x_3); +if (x_57 == 0) { -lean_object* x_60; -lean_dec(x_58); -lean_ctor_set(x_6, 2, x_3); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_6); -lean_ctor_set(x_60, 1, x_7); -x_21 = x_60; -goto block_39; +lean_dec(x_56); +lean_ctor_set(x_7, 2, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_61; lean_dec(x_3); -lean_ctor_set(x_6, 2, x_58); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_6); -lean_ctor_set(x_61, 1, x_7); -x_21 = x_61; -goto block_39; +lean_ctor_set(x_7, 2, x_56); +x_25 = x_5; +goto block_38; } } } -else +block_38: { -uint8_t x_62; lean_object* x_63; uint8_t x_64; -x_62 = 1; -x_63 = l_Std_Time_Month_Ordinal_days(x_62, x_11); -x_64 = lean_int_dec_lt(x_63, x_3); -if (x_64 == 0) -{ -lean_object* x_65; -lean_dec(x_63); -lean_ctor_set(x_6, 2, x_3); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_6); -lean_ctor_set(x_65, 1, x_7); -x_21 = x_65; -goto block_39; -} -else -{ -lean_object* x_66; -lean_dec(x_3); -lean_ctor_set(x_6, 2, x_63); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_6); -lean_ctor_set(x_66, 1, x_7); -x_21 = x_66; -goto block_39; -} -} -} -block_39: -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = l_Std_Time_PlainTime_toSeconds(x_22); -x_24 = lean_int_add(x_23, x_18); -lean_dec(x_18); -lean_dec(x_23); -x_25 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_26 = lean_int_ediv(x_24, x_25); -lean_dec(x_24); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_22); -lean_dec(x_22); -x_28 = lean_int_add(x_27, x_20); -lean_dec(x_20); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_25); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_18); lean_dec(x_27); -x_29 = l_Std_Time_PlainTime_ofNanoseconds(x_28); -lean_dec(x_28); -x_30 = lean_ctor_get(x_21, 0); -lean_inc(x_30); -x_31 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_32 = lean_int_add(x_31, x_26); +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); lean_dec(x_26); +x_30 = lean_int_add(x_28, x_29); +lean_dec(x_29); +lean_dec(x_28); +x_31 = lean_int_add(x_30, x_24); +lean_dec(x_24); +lean_dec(x_30); +x_32 = l_Std_Time_Duration_ofNanoseconds(x_31); lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_32); +x_33 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_32); lean_dec(x_32); -if (lean_is_scalar(x_8)) { - x_34 = lean_alloc_ctor(0, 2, 0); -} else { - x_34 = x_8; -} -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_29); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_34); -x_36 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_36, 0, x_21); -x_37 = lean_mk_thunk(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_35); -lean_ctor_set(x_38, 1, x_37); -return x_38; +x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_33); +x_35 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_35, 0, x_25); +x_36 = lean_mk_thunk(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_34); +lean_ctor_set(x_37, 1, x_36); +return x_37; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_67 = lean_ctor_get(x_6, 0); -x_68 = lean_ctor_get(x_6, 1); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_6); -x_69 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_70 = lean_int_mod(x_67, x_69); -x_71 = l_Std_Time_instInhabitedDateTime___closed__2; -x_72 = lean_int_dec_eq(x_70, x_71); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_58 = lean_ctor_get(x_7, 0); +x_59 = lean_ctor_get(x_7, 1); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_7); +x_60 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_61 = lean_int_mod(x_58, x_60); +x_62 = l_Std_Time_instInhabitedDateTime___closed__2; +x_63 = lean_int_dec_eq(x_61, x_62); +lean_dec(x_61); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); +x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_67 = lean_int_mul(x_65, x_66); +lean_dec(x_65); +x_68 = l_Std_Time_Duration_ofNanoseconds(x_67); +lean_dec(x_67); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_int_mul(x_69, x_66); +lean_dec(x_69); +x_71 = lean_ctor_get(x_68, 1); +lean_inc(x_71); +lean_dec(x_68); +x_72 = lean_int_add(x_70, x_71); +lean_dec(x_71); lean_dec(x_70); -x_73 = lean_ctor_get(x_1, 0); -x_74 = lean_int_neg(x_73); -x_75 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_76 = lean_int_mul(x_74, x_75); -if (x_72 == 0) +if (x_63 == 0) { -uint8_t x_96; lean_object* x_97; uint8_t x_98; -x_96 = 0; -x_97 = l_Std_Time_Month_Ordinal_days(x_96, x_68); -x_98 = lean_int_dec_lt(x_97, x_3); +uint8_t x_87; lean_object* x_88; uint8_t x_89; +x_87 = 0; +x_88 = l_Std_Time_Month_Ordinal_days(x_87, x_59); +x_89 = lean_int_dec_lt(x_88, x_3); +if (x_89 == 0) +{ +lean_object* x_90; +lean_dec(x_88); +x_90 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_90, 0, x_58); +lean_ctor_set(x_90, 1, x_59); +lean_ctor_set(x_90, 2, x_3); +lean_ctor_set(x_5, 0, x_90); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_91; +lean_dec(x_3); +x_91 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_91, 0, x_58); +lean_ctor_set(x_91, 1, x_59); +lean_ctor_set(x_91, 2, x_88); +lean_ctor_set(x_5, 0, x_91); +x_73 = x_5; +goto block_86; +} +} +else +{ +lean_object* x_92; lean_object* x_93; uint8_t x_94; uint8_t x_95; +x_92 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_93 = lean_int_mod(x_58, x_92); +x_94 = lean_int_dec_eq(x_93, x_62); +lean_dec(x_93); +x_95 = l_instDecidableNot___rarg(x_94); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_97 = lean_int_mod(x_58, x_96); +x_98 = lean_int_dec_eq(x_97, x_62); +lean_dec(x_97); if (x_98 == 0) { -lean_object* x_99; lean_object* x_100; -lean_dec(x_97); -x_99 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_99, 0, x_67); -lean_ctor_set(x_99, 1, x_68); -lean_ctor_set(x_99, 2, x_3); -x_100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_100, 0, x_99); -lean_ctor_set(x_100, 1, x_7); -x_77 = x_100; -goto block_95; +uint8_t x_99; lean_object* x_100; uint8_t x_101; +x_99 = 0; +x_100 = l_Std_Time_Month_Ordinal_days(x_99, x_59); +x_101 = lean_int_dec_lt(x_100, x_3); +if (x_101 == 0) +{ +lean_object* x_102; +lean_dec(x_100); +x_102 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_102, 0, x_58); +lean_ctor_set(x_102, 1, x_59); +lean_ctor_set(x_102, 2, x_3); +lean_ctor_set(x_5, 0, x_102); +x_73 = x_5; +goto block_86; } else { -lean_object* x_101; lean_object* x_102; +lean_object* x_103; lean_dec(x_3); -x_101 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_101, 0, x_67); -lean_ctor_set(x_101, 1, x_68); -lean_ctor_set(x_101, 2, x_97); -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_7); -x_77 = x_102; -goto block_95; +x_103 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_103, 0, x_58); +lean_ctor_set(x_103, 1, x_59); +lean_ctor_set(x_103, 2, x_100); +lean_ctor_set(x_5, 0, x_103); +x_73 = x_5; +goto block_86; } } else { -lean_object* x_103; lean_object* x_104; uint8_t x_105; uint8_t x_106; -x_103 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_104 = lean_int_mod(x_67, x_103); -x_105 = lean_int_dec_eq(x_104, x_71); -lean_dec(x_104); -x_106 = l_instDecidableNot___rarg(x_105); +uint8_t x_104; lean_object* x_105; uint8_t x_106; +x_104 = 1; +x_105 = l_Std_Time_Month_Ordinal_days(x_104, x_59); +x_106 = lean_int_dec_lt(x_105, x_3); if (x_106 == 0) { -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_108 = lean_int_mod(x_67, x_107); -x_109 = lean_int_dec_eq(x_108, x_71); -lean_dec(x_108); -if (x_109 == 0) +lean_object* x_107; +lean_dec(x_105); +x_107 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_107, 0, x_58); +lean_ctor_set(x_107, 1, x_59); +lean_ctor_set(x_107, 2, x_3); +lean_ctor_set(x_5, 0, x_107); +x_73 = x_5; +goto block_86; +} +else { -uint8_t x_110; lean_object* x_111; uint8_t x_112; -x_110 = 0; -x_111 = l_Std_Time_Month_Ordinal_days(x_110, x_68); -x_112 = lean_int_dec_lt(x_111, x_3); -if (x_112 == 0) +lean_object* x_108; +lean_dec(x_3); +x_108 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_108, 0, x_58); +lean_ctor_set(x_108, 1, x_59); +lean_ctor_set(x_108, 2, x_105); +lean_ctor_set(x_5, 0, x_108); +x_73 = x_5; +goto block_86; +} +} +} +else { -lean_object* x_113; lean_object* x_114; -lean_dec(x_111); +uint8_t x_109; lean_object* x_110; uint8_t x_111; +x_109 = 1; +x_110 = l_Std_Time_Month_Ordinal_days(x_109, x_59); +x_111 = lean_int_dec_lt(x_110, x_3); +if (x_111 == 0) +{ +lean_object* x_112; +lean_dec(x_110); +x_112 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_112, 0, x_58); +lean_ctor_set(x_112, 1, x_59); +lean_ctor_set(x_112, 2, x_3); +lean_ctor_set(x_5, 0, x_112); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_113; +lean_dec(x_3); x_113 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_113, 0, x_67); -lean_ctor_set(x_113, 1, x_68); -lean_ctor_set(x_113, 2, x_3); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_113); -lean_ctor_set(x_114, 1, x_7); -x_77 = x_114; -goto block_95; +lean_ctor_set(x_113, 0, x_58); +lean_ctor_set(x_113, 1, x_59); +lean_ctor_set(x_113, 2, x_110); +lean_ctor_set(x_5, 0, x_113); +x_73 = x_5; +goto block_86; } -else +} +} +block_86: { -lean_object* x_115; lean_object* x_116; -lean_dec(x_3); -x_115 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_115, 0, x_67); -lean_ctor_set(x_115, 1, x_68); -lean_ctor_set(x_115, 2, x_111); -x_116 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_116, 0, x_115); -lean_ctor_set(x_116, 1, x_7); -x_77 = x_116; -goto block_95; -} -} -else -{ -uint8_t x_117; lean_object* x_118; uint8_t x_119; -x_117 = 1; -x_118 = l_Std_Time_Month_Ordinal_days(x_117, x_68); -x_119 = lean_int_dec_lt(x_118, x_3); -if (x_119 == 0) -{ -lean_object* x_120; lean_object* x_121; -lean_dec(x_118); -x_120 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_120, 0, x_67); -lean_ctor_set(x_120, 1, x_68); -lean_ctor_set(x_120, 2, x_3); -x_121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_121, 0, x_120); -lean_ctor_set(x_121, 1, x_7); -x_77 = x_121; -goto block_95; -} -else -{ -lean_object* x_122; lean_object* x_123; -lean_dec(x_3); -x_122 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_122, 0, x_67); -lean_ctor_set(x_122, 1, x_68); -lean_ctor_set(x_122, 2, x_118); -x_123 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_123, 0, x_122); -lean_ctor_set(x_123, 1, x_7); -x_77 = x_123; -goto block_95; -} -} -} -else -{ -uint8_t x_124; lean_object* x_125; uint8_t x_126; -x_124 = 1; -x_125 = l_Std_Time_Month_Ordinal_days(x_124, x_68); -x_126 = lean_int_dec_lt(x_125, x_3); -if (x_126 == 0) -{ -lean_object* x_127; lean_object* x_128; -lean_dec(x_125); -x_127 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_127, 0, x_67); -lean_ctor_set(x_127, 1, x_68); -lean_ctor_set(x_127, 2, x_3); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_7); -x_77 = x_128; -goto block_95; -} -else -{ -lean_object* x_129; lean_object* x_130; -lean_dec(x_3); -x_129 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_129, 0, x_67); -lean_ctor_set(x_129, 1, x_68); -lean_ctor_set(x_129, 2, x_125); -x_130 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_130, 0, x_129); -lean_ctor_set(x_130, 1, x_7); -x_77 = x_130; -goto block_95; -} -} -} -block_95: -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -x_79 = l_Std_Time_PlainTime_toSeconds(x_78); -x_80 = lean_int_add(x_79, x_74); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_inc(x_73); +x_74 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_int_mul(x_75, x_66); +lean_dec(x_75); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); lean_dec(x_74); -lean_dec(x_79); -x_81 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_82 = lean_int_ediv(x_80, x_81); -lean_dec(x_80); -x_83 = l_Std_Time_PlainTime_toNanoseconds(x_78); -lean_dec(x_78); -x_84 = lean_int_add(x_83, x_76); +x_78 = lean_int_add(x_76, x_77); +lean_dec(x_77); lean_dec(x_76); -lean_dec(x_83); -x_85 = l_Std_Time_PlainTime_ofNanoseconds(x_84); -lean_dec(x_84); -x_86 = lean_ctor_get(x_77, 0); -lean_inc(x_86); -x_87 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_86); -x_88 = lean_int_add(x_87, x_82); -lean_dec(x_82); -lean_dec(x_87); -x_89 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_88); -lean_dec(x_88); -if (lean_is_scalar(x_8)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_8; +x_79 = lean_int_add(x_78, x_72); +lean_dec(x_72); +lean_dec(x_78); +x_80 = l_Std_Time_Duration_ofNanoseconds(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_80); +lean_dec(x_80); +x_82 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_81); +x_83 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_83, 0, x_73); +x_84 = lean_mk_thunk(x_83); +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_82); +lean_ctor_set(x_85, 1, x_84); +return x_85; } -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_85); -x_91 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_90); -x_92 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_92, 0, x_77); -x_93 = lean_mk_thunk(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_91); -lean_ctor_set(x_94, 1, x_93); -return x_94; +} +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; uint8_t x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_114 = lean_ctor_get(x_5, 0); +x_115 = lean_ctor_get(x_5, 1); +lean_inc(x_115); +lean_inc(x_114); +lean_dec(x_5); +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_114, 1); +lean_inc(x_117); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + lean_ctor_release(x_114, 2); + x_118 = x_114; +} else { + lean_dec_ref(x_114); + x_118 = lean_box(0); +} +x_119 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_120 = lean_int_mod(x_116, x_119); +x_121 = l_Std_Time_instInhabitedDateTime___closed__2; +x_122 = lean_int_dec_eq(x_120, x_121); +lean_dec(x_120); +x_123 = lean_ctor_get(x_1, 0); +x_124 = lean_int_neg(x_123); +x_125 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_126 = lean_int_mul(x_124, x_125); +lean_dec(x_124); +x_127 = l_Std_Time_Duration_ofNanoseconds(x_126); +lean_dec(x_126); +x_128 = lean_ctor_get(x_127, 0); +lean_inc(x_128); +x_129 = lean_int_mul(x_128, x_125); +lean_dec(x_128); +x_130 = lean_ctor_get(x_127, 1); +lean_inc(x_130); +lean_dec(x_127); +x_131 = lean_int_add(x_129, x_130); +lean_dec(x_130); +lean_dec(x_129); +if (x_122 == 0) +{ +uint8_t x_146; lean_object* x_147; uint8_t x_148; +x_146 = 0; +x_147 = l_Std_Time_Month_Ordinal_days(x_146, x_117); +x_148 = lean_int_dec_lt(x_147, x_3); +if (x_148 == 0) +{ +lean_object* x_149; lean_object* x_150; +lean_dec(x_147); +if (lean_is_scalar(x_118)) { + x_149 = lean_alloc_ctor(0, 3, 0); +} else { + x_149 = x_118; +} +lean_ctor_set(x_149, 0, x_116); +lean_ctor_set(x_149, 1, x_117); +lean_ctor_set(x_149, 2, x_3); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_115); +x_132 = x_150; +goto block_145; +} +else +{ +lean_object* x_151; lean_object* x_152; +lean_dec(x_3); +if (lean_is_scalar(x_118)) { + x_151 = lean_alloc_ctor(0, 3, 0); +} else { + x_151 = x_118; +} +lean_ctor_set(x_151, 0, x_116); +lean_ctor_set(x_151, 1, x_117); +lean_ctor_set(x_151, 2, x_147); +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_151); +lean_ctor_set(x_152, 1, x_115); +x_132 = x_152; +goto block_145; +} +} +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; uint8_t x_156; +x_153 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_154 = lean_int_mod(x_116, x_153); +x_155 = lean_int_dec_eq(x_154, x_121); +lean_dec(x_154); +x_156 = l_instDecidableNot___rarg(x_155); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; uint8_t x_159; +x_157 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_158 = lean_int_mod(x_116, x_157); +x_159 = lean_int_dec_eq(x_158, x_121); +lean_dec(x_158); +if (x_159 == 0) +{ +uint8_t x_160; lean_object* x_161; uint8_t x_162; +x_160 = 0; +x_161 = l_Std_Time_Month_Ordinal_days(x_160, x_117); +x_162 = lean_int_dec_lt(x_161, x_3); +if (x_162 == 0) +{ +lean_object* x_163; lean_object* x_164; +lean_dec(x_161); +if (lean_is_scalar(x_118)) { + x_163 = lean_alloc_ctor(0, 3, 0); +} else { + x_163 = x_118; +} +lean_ctor_set(x_163, 0, x_116); +lean_ctor_set(x_163, 1, x_117); +lean_ctor_set(x_163, 2, x_3); +x_164 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_115); +x_132 = x_164; +goto block_145; +} +else +{ +lean_object* x_165; lean_object* x_166; +lean_dec(x_3); +if (lean_is_scalar(x_118)) { + x_165 = lean_alloc_ctor(0, 3, 0); +} else { + x_165 = x_118; +} +lean_ctor_set(x_165, 0, x_116); +lean_ctor_set(x_165, 1, x_117); +lean_ctor_set(x_165, 2, x_161); +x_166 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_166, 0, x_165); +lean_ctor_set(x_166, 1, x_115); +x_132 = x_166; +goto block_145; +} +} +else +{ +uint8_t x_167; lean_object* x_168; uint8_t x_169; +x_167 = 1; +x_168 = l_Std_Time_Month_Ordinal_days(x_167, x_117); +x_169 = lean_int_dec_lt(x_168, x_3); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +lean_dec(x_168); +if (lean_is_scalar(x_118)) { + x_170 = lean_alloc_ctor(0, 3, 0); +} else { + x_170 = x_118; +} +lean_ctor_set(x_170, 0, x_116); +lean_ctor_set(x_170, 1, x_117); +lean_ctor_set(x_170, 2, x_3); +x_171 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_171, 0, x_170); +lean_ctor_set(x_171, 1, x_115); +x_132 = x_171; +goto block_145; +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_3); +if (lean_is_scalar(x_118)) { + x_172 = lean_alloc_ctor(0, 3, 0); +} else { + x_172 = x_118; +} +lean_ctor_set(x_172, 0, x_116); +lean_ctor_set(x_172, 1, x_117); +lean_ctor_set(x_172, 2, x_168); +x_173 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_173, 0, x_172); +lean_ctor_set(x_173, 1, x_115); +x_132 = x_173; +goto block_145; +} +} +} +else +{ +uint8_t x_174; lean_object* x_175; uint8_t x_176; +x_174 = 1; +x_175 = l_Std_Time_Month_Ordinal_days(x_174, x_117); +x_176 = lean_int_dec_lt(x_175, x_3); +if (x_176 == 0) +{ +lean_object* x_177; lean_object* x_178; +lean_dec(x_175); +if (lean_is_scalar(x_118)) { + x_177 = lean_alloc_ctor(0, 3, 0); +} else { + x_177 = x_118; +} +lean_ctor_set(x_177, 0, x_116); +lean_ctor_set(x_177, 1, x_117); +lean_ctor_set(x_177, 2, x_3); +x_178 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_178, 0, x_177); +lean_ctor_set(x_178, 1, x_115); +x_132 = x_178; +goto block_145; +} +else +{ +lean_object* x_179; lean_object* x_180; +lean_dec(x_3); +if (lean_is_scalar(x_118)) { + x_179 = lean_alloc_ctor(0, 3, 0); +} else { + x_179 = x_118; +} +lean_ctor_set(x_179, 0, x_116); +lean_ctor_set(x_179, 1, x_117); +lean_ctor_set(x_179, 2, x_175); +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_179); +lean_ctor_set(x_180, 1, x_115); +x_132 = x_180; +goto block_145; +} +} +} +block_145: +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_inc(x_132); +x_133 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_132); +x_134 = lean_ctor_get(x_133, 0); +lean_inc(x_134); +x_135 = lean_int_mul(x_134, x_125); +lean_dec(x_134); +x_136 = lean_ctor_get(x_133, 1); +lean_inc(x_136); +lean_dec(x_133); +x_137 = lean_int_add(x_135, x_136); +lean_dec(x_136); +lean_dec(x_135); +x_138 = lean_int_add(x_137, x_131); +lean_dec(x_131); +lean_dec(x_137); +x_139 = l_Std_Time_Duration_ofNanoseconds(x_138); +lean_dec(x_138); +x_140 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_139); +lean_dec(x_139); +x_141 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_140); +x_142 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_142, 0, x_132); +x_143 = lean_mk_thunk(x_142); +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_141); +lean_ctor_set(x_144, 1, x_143); +return x_144; } } } @@ -3853,108 +4003,121 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_ctor_get(x_7, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_7, 1); -lean_inc(x_10); -lean_dec(x_7); -x_11 = l_Std_Time_PlainDate_rollOver(x_9, x_10, x_3); +x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); +x_9 = lean_ctor_get(x_7, 1); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Std_Time_PlainDate_rollOver(x_8, x_9, x_3); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_5); -x_33 = lean_ctor_get(x_31, 0); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 1); -lean_inc(x_34); -lean_dec(x_31); -x_35 = l_Std_Time_PlainDate_rollOver(x_33, x_34, x_3); lean_inc(x_32); +lean_dec(x_5); +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_32, 1); lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); -lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +x_36 = l_Std_Time_PlainDate_rollOver(x_34, x_35, x_3); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); +lean_dec(x_39); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -3972,435 +4135,647 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMonthClip(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; +lean_object* x_4; lean_object* x_5; uint8_t x_6; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_8 = x_5; -} else { - lean_dec_ref(x_5); - x_8 = lean_box(0); -} -x_9 = !lean_is_exclusive(x_6); -if (x_9 == 0) +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_10 = lean_ctor_get(x_6, 0); -x_11 = lean_ctor_get(x_6, 2); -x_12 = lean_ctor_get(x_6, 1); -lean_dec(x_12); -x_13 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_14 = lean_int_mod(x_10, x_13); -x_15 = l_Std_Time_instInhabitedDateTime___closed__2; -x_16 = lean_int_dec_eq(x_14, x_15); -lean_dec(x_14); -x_17 = lean_ctor_get(x_1, 0); -x_18 = lean_int_neg(x_17); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_18, x_19); -if (x_16 == 0) +lean_object* x_7; uint8_t x_8; +x_7 = lean_ctor_get(x_5, 0); +x_8 = !lean_is_exclusive(x_7); +if (x_8 == 0) { -uint8_t x_40; lean_object* x_41; uint8_t x_42; -x_40 = 0; -x_41 = l_Std_Time_Month_Ordinal_days(x_40, x_3); -x_42 = lean_int_dec_lt(x_41, x_11); -if (x_42 == 0) -{ -lean_object* x_43; -lean_dec(x_41); -lean_ctor_set(x_6, 1, x_3); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_6); -lean_ctor_set(x_43, 1, x_7); -x_21 = x_43; -goto block_39; -} -else -{ -lean_object* x_44; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_7, 0); +x_10 = lean_ctor_get(x_7, 2); +x_11 = lean_ctor_get(x_7, 1); lean_dec(x_11); -lean_ctor_set(x_6, 2, x_41); -lean_ctor_set(x_6, 1, x_3); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_6); -lean_ctor_set(x_44, 1, x_7); -x_21 = x_44; -goto block_39; +x_12 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_13 = lean_int_mod(x_9, x_12); +x_14 = l_Std_Time_instInhabitedDateTime___closed__2; +x_15 = lean_int_dec_eq(x_13, x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_1, 0); +x_17 = lean_int_neg(x_16); +x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_19 = lean_int_mul(x_17, x_18); +lean_dec(x_17); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_18); +lean_dec(x_21); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_int_add(x_22, x_23); +lean_dec(x_23); +lean_dec(x_22); +if (x_15 == 0) +{ +uint8_t x_39; lean_object* x_40; uint8_t x_41; +x_39 = 0; +x_40 = l_Std_Time_Month_Ordinal_days(x_39, x_3); +x_41 = lean_int_dec_lt(x_40, x_10); +if (x_41 == 0) +{ +lean_dec(x_40); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; +} +else +{ +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_40); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; } } else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; -x_45 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_46 = lean_int_mod(x_10, x_45); -x_47 = lean_int_dec_eq(x_46, x_15); -lean_dec(x_46); -x_48 = l_instDecidableNot___rarg(x_47); +lean_object* x_42; lean_object* x_43; uint8_t x_44; uint8_t x_45; +x_42 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_43 = lean_int_mod(x_9, x_42); +x_44 = lean_int_dec_eq(x_43, x_14); +lean_dec(x_43); +x_45 = l_instDecidableNot___rarg(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_47 = lean_int_mod(x_9, x_46); +x_48 = lean_int_dec_eq(x_47, x_14); +lean_dec(x_47); if (x_48 == 0) { -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_50 = lean_int_mod(x_10, x_49); -x_51 = lean_int_dec_eq(x_50, x_15); -lean_dec(x_50); +uint8_t x_49; lean_object* x_50; uint8_t x_51; +x_49 = 0; +x_50 = l_Std_Time_Month_Ordinal_days(x_49, x_3); +x_51 = lean_int_dec_lt(x_50, x_10); if (x_51 == 0) { +lean_dec(x_50); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; +} +else +{ +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_50); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; +} +} +else +{ uint8_t x_52; lean_object* x_53; uint8_t x_54; -x_52 = 0; +x_52 = 1; x_53 = l_Std_Time_Month_Ordinal_days(x_52, x_3); -x_54 = lean_int_dec_lt(x_53, x_11); +x_54 = lean_int_dec_lt(x_53, x_10); if (x_54 == 0) { -lean_object* x_55; lean_dec(x_53); -lean_ctor_set(x_6, 1, x_3); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_6); -lean_ctor_set(x_55, 1, x_7); -x_21 = x_55; -goto block_39; +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_56; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_53); -lean_ctor_set(x_6, 1, x_3); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_6); -lean_ctor_set(x_56, 1, x_7); -x_21 = x_56; -goto block_39; -} -} -else -{ -uint8_t x_57; lean_object* x_58; uint8_t x_59; -x_57 = 1; -x_58 = l_Std_Time_Month_Ordinal_days(x_57, x_3); -x_59 = lean_int_dec_lt(x_58, x_11); -if (x_59 == 0) -{ -lean_object* x_60; -lean_dec(x_58); -lean_ctor_set(x_6, 1, x_3); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_6); -lean_ctor_set(x_60, 1, x_7); -x_21 = x_60; -goto block_39; -} -else -{ -lean_object* x_61; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_58); -lean_ctor_set(x_6, 1, x_3); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_6); -lean_ctor_set(x_61, 1, x_7); -x_21 = x_61; -goto block_39; +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_53); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; } } } else { -uint8_t x_62; lean_object* x_63; uint8_t x_64; -x_62 = 1; -x_63 = l_Std_Time_Month_Ordinal_days(x_62, x_3); -x_64 = lean_int_dec_lt(x_63, x_11); -if (x_64 == 0) +uint8_t x_55; lean_object* x_56; uint8_t x_57; +x_55 = 1; +x_56 = l_Std_Time_Month_Ordinal_days(x_55, x_3); +x_57 = lean_int_dec_lt(x_56, x_10); +if (x_57 == 0) { -lean_object* x_65; -lean_dec(x_63); -lean_ctor_set(x_6, 1, x_3); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_6); -lean_ctor_set(x_65, 1, x_7); -x_21 = x_65; -goto block_39; +lean_dec(x_56); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_66; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_63); -lean_ctor_set(x_6, 1, x_3); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_6); -lean_ctor_set(x_66, 1, x_7); -x_21 = x_66; -goto block_39; +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_56); +lean_ctor_set(x_7, 1, x_3); +x_25 = x_5; +goto block_38; } } } -block_39: +block_38: { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = l_Std_Time_PlainTime_toSeconds(x_22); -x_24 = lean_int_add(x_23, x_18); -lean_dec(x_18); -lean_dec(x_23); -x_25 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_26 = lean_int_ediv(x_24, x_25); -lean_dec(x_24); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_22); -lean_dec(x_22); -x_28 = lean_int_add(x_27, x_20); -lean_dec(x_20); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_25); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_18); lean_dec(x_27); -x_29 = l_Std_Time_PlainTime_ofNanoseconds(x_28); -lean_dec(x_28); -x_30 = lean_ctor_get(x_21, 0); -lean_inc(x_30); -x_31 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_32 = lean_int_add(x_31, x_26); +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); lean_dec(x_26); +x_30 = lean_int_add(x_28, x_29); +lean_dec(x_29); +lean_dec(x_28); +x_31 = lean_int_add(x_30, x_24); +lean_dec(x_24); +lean_dec(x_30); +x_32 = l_Std_Time_Duration_ofNanoseconds(x_31); lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_32); +x_33 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_32); lean_dec(x_32); -if (lean_is_scalar(x_8)) { - x_34 = lean_alloc_ctor(0, 2, 0); -} else { - x_34 = x_8; -} -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_29); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_34); -x_36 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_36, 0, x_21); -x_37 = lean_mk_thunk(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_35); -lean_ctor_set(x_38, 1, x_37); -return x_38; +x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_33); +x_35 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_35, 0, x_25); +x_36 = lean_mk_thunk(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_34); +lean_ctor_set(x_37, 1, x_36); +return x_37; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_67 = lean_ctor_get(x_6, 0); -x_68 = lean_ctor_get(x_6, 2); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_6); -x_69 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_70 = lean_int_mod(x_67, x_69); -x_71 = l_Std_Time_instInhabitedDateTime___closed__2; -x_72 = lean_int_dec_eq(x_70, x_71); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_58 = lean_ctor_get(x_7, 0); +x_59 = lean_ctor_get(x_7, 2); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_7); +x_60 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_61 = lean_int_mod(x_58, x_60); +x_62 = l_Std_Time_instInhabitedDateTime___closed__2; +x_63 = lean_int_dec_eq(x_61, x_62); +lean_dec(x_61); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); +x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_67 = lean_int_mul(x_65, x_66); +lean_dec(x_65); +x_68 = l_Std_Time_Duration_ofNanoseconds(x_67); +lean_dec(x_67); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_int_mul(x_69, x_66); +lean_dec(x_69); +x_71 = lean_ctor_get(x_68, 1); +lean_inc(x_71); +lean_dec(x_68); +x_72 = lean_int_add(x_70, x_71); +lean_dec(x_71); lean_dec(x_70); -x_73 = lean_ctor_get(x_1, 0); -x_74 = lean_int_neg(x_73); -x_75 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_76 = lean_int_mul(x_74, x_75); -if (x_72 == 0) +if (x_63 == 0) { -uint8_t x_96; lean_object* x_97; uint8_t x_98; -x_96 = 0; -x_97 = l_Std_Time_Month_Ordinal_days(x_96, x_3); -x_98 = lean_int_dec_lt(x_97, x_68); +uint8_t x_87; lean_object* x_88; uint8_t x_89; +x_87 = 0; +x_88 = l_Std_Time_Month_Ordinal_days(x_87, x_3); +x_89 = lean_int_dec_lt(x_88, x_59); +if (x_89 == 0) +{ +lean_object* x_90; +lean_dec(x_88); +x_90 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_90, 0, x_58); +lean_ctor_set(x_90, 1, x_3); +lean_ctor_set(x_90, 2, x_59); +lean_ctor_set(x_5, 0, x_90); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_91; +lean_dec(x_59); +x_91 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_91, 0, x_58); +lean_ctor_set(x_91, 1, x_3); +lean_ctor_set(x_91, 2, x_88); +lean_ctor_set(x_5, 0, x_91); +x_73 = x_5; +goto block_86; +} +} +else +{ +lean_object* x_92; lean_object* x_93; uint8_t x_94; uint8_t x_95; +x_92 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_93 = lean_int_mod(x_58, x_92); +x_94 = lean_int_dec_eq(x_93, x_62); +lean_dec(x_93); +x_95 = l_instDecidableNot___rarg(x_94); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_97 = lean_int_mod(x_58, x_96); +x_98 = lean_int_dec_eq(x_97, x_62); +lean_dec(x_97); if (x_98 == 0) { -lean_object* x_99; lean_object* x_100; -lean_dec(x_97); -x_99 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_99, 0, x_67); -lean_ctor_set(x_99, 1, x_3); -lean_ctor_set(x_99, 2, x_68); -x_100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_100, 0, x_99); -lean_ctor_set(x_100, 1, x_7); -x_77 = x_100; -goto block_95; +uint8_t x_99; lean_object* x_100; uint8_t x_101; +x_99 = 0; +x_100 = l_Std_Time_Month_Ordinal_days(x_99, x_3); +x_101 = lean_int_dec_lt(x_100, x_59); +if (x_101 == 0) +{ +lean_object* x_102; +lean_dec(x_100); +x_102 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_102, 0, x_58); +lean_ctor_set(x_102, 1, x_3); +lean_ctor_set(x_102, 2, x_59); +lean_ctor_set(x_5, 0, x_102); +x_73 = x_5; +goto block_86; } else { -lean_object* x_101; lean_object* x_102; -lean_dec(x_68); -x_101 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_101, 0, x_67); -lean_ctor_set(x_101, 1, x_3); -lean_ctor_set(x_101, 2, x_97); -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_7); -x_77 = x_102; -goto block_95; +lean_object* x_103; +lean_dec(x_59); +x_103 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_103, 0, x_58); +lean_ctor_set(x_103, 1, x_3); +lean_ctor_set(x_103, 2, x_100); +lean_ctor_set(x_5, 0, x_103); +x_73 = x_5; +goto block_86; } } else { -lean_object* x_103; lean_object* x_104; uint8_t x_105; uint8_t x_106; -x_103 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_104 = lean_int_mod(x_67, x_103); -x_105 = lean_int_dec_eq(x_104, x_71); -lean_dec(x_104); -x_106 = l_instDecidableNot___rarg(x_105); +uint8_t x_104; lean_object* x_105; uint8_t x_106; +x_104 = 1; +x_105 = l_Std_Time_Month_Ordinal_days(x_104, x_3); +x_106 = lean_int_dec_lt(x_105, x_59); if (x_106 == 0) { -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_108 = lean_int_mod(x_67, x_107); -x_109 = lean_int_dec_eq(x_108, x_71); -lean_dec(x_108); -if (x_109 == 0) +lean_object* x_107; +lean_dec(x_105); +x_107 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_107, 0, x_58); +lean_ctor_set(x_107, 1, x_3); +lean_ctor_set(x_107, 2, x_59); +lean_ctor_set(x_5, 0, x_107); +x_73 = x_5; +goto block_86; +} +else { -uint8_t x_110; lean_object* x_111; uint8_t x_112; -x_110 = 0; -x_111 = l_Std_Time_Month_Ordinal_days(x_110, x_3); -x_112 = lean_int_dec_lt(x_111, x_68); -if (x_112 == 0) +lean_object* x_108; +lean_dec(x_59); +x_108 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_108, 0, x_58); +lean_ctor_set(x_108, 1, x_3); +lean_ctor_set(x_108, 2, x_105); +lean_ctor_set(x_5, 0, x_108); +x_73 = x_5; +goto block_86; +} +} +} +else { -lean_object* x_113; lean_object* x_114; -lean_dec(x_111); +uint8_t x_109; lean_object* x_110; uint8_t x_111; +x_109 = 1; +x_110 = l_Std_Time_Month_Ordinal_days(x_109, x_3); +x_111 = lean_int_dec_lt(x_110, x_59); +if (x_111 == 0) +{ +lean_object* x_112; +lean_dec(x_110); +x_112 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_112, 0, x_58); +lean_ctor_set(x_112, 1, x_3); +lean_ctor_set(x_112, 2, x_59); +lean_ctor_set(x_5, 0, x_112); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_113; +lean_dec(x_59); x_113 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_113, 0, x_67); +lean_ctor_set(x_113, 0, x_58); lean_ctor_set(x_113, 1, x_3); -lean_ctor_set(x_113, 2, x_68); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_113); -lean_ctor_set(x_114, 1, x_7); -x_77 = x_114; -goto block_95; +lean_ctor_set(x_113, 2, x_110); +lean_ctor_set(x_5, 0, x_113); +x_73 = x_5; +goto block_86; } -else +} +} +block_86: { -lean_object* x_115; lean_object* x_116; -lean_dec(x_68); -x_115 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_115, 0, x_67); -lean_ctor_set(x_115, 1, x_3); -lean_ctor_set(x_115, 2, x_111); -x_116 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_116, 0, x_115); -lean_ctor_set(x_116, 1, x_7); -x_77 = x_116; -goto block_95; -} -} -else -{ -uint8_t x_117; lean_object* x_118; uint8_t x_119; -x_117 = 1; -x_118 = l_Std_Time_Month_Ordinal_days(x_117, x_3); -x_119 = lean_int_dec_lt(x_118, x_68); -if (x_119 == 0) -{ -lean_object* x_120; lean_object* x_121; -lean_dec(x_118); -x_120 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_120, 0, x_67); -lean_ctor_set(x_120, 1, x_3); -lean_ctor_set(x_120, 2, x_68); -x_121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_121, 0, x_120); -lean_ctor_set(x_121, 1, x_7); -x_77 = x_121; -goto block_95; -} -else -{ -lean_object* x_122; lean_object* x_123; -lean_dec(x_68); -x_122 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_122, 0, x_67); -lean_ctor_set(x_122, 1, x_3); -lean_ctor_set(x_122, 2, x_118); -x_123 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_123, 0, x_122); -lean_ctor_set(x_123, 1, x_7); -x_77 = x_123; -goto block_95; -} -} -} -else -{ -uint8_t x_124; lean_object* x_125; uint8_t x_126; -x_124 = 1; -x_125 = l_Std_Time_Month_Ordinal_days(x_124, x_3); -x_126 = lean_int_dec_lt(x_125, x_68); -if (x_126 == 0) -{ -lean_object* x_127; lean_object* x_128; -lean_dec(x_125); -x_127 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_127, 0, x_67); -lean_ctor_set(x_127, 1, x_3); -lean_ctor_set(x_127, 2, x_68); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_7); -x_77 = x_128; -goto block_95; -} -else -{ -lean_object* x_129; lean_object* x_130; -lean_dec(x_68); -x_129 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_129, 0, x_67); -lean_ctor_set(x_129, 1, x_3); -lean_ctor_set(x_129, 2, x_125); -x_130 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_130, 0, x_129); -lean_ctor_set(x_130, 1, x_7); -x_77 = x_130; -goto block_95; -} -} -} -block_95: -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -x_79 = l_Std_Time_PlainTime_toSeconds(x_78); -x_80 = lean_int_add(x_79, x_74); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_inc(x_73); +x_74 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_int_mul(x_75, x_66); +lean_dec(x_75); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); lean_dec(x_74); -lean_dec(x_79); -x_81 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_82 = lean_int_ediv(x_80, x_81); -lean_dec(x_80); -x_83 = l_Std_Time_PlainTime_toNanoseconds(x_78); -lean_dec(x_78); -x_84 = lean_int_add(x_83, x_76); +x_78 = lean_int_add(x_76, x_77); +lean_dec(x_77); lean_dec(x_76); -lean_dec(x_83); -x_85 = l_Std_Time_PlainTime_ofNanoseconds(x_84); -lean_dec(x_84); -x_86 = lean_ctor_get(x_77, 0); -lean_inc(x_86); -x_87 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_86); -x_88 = lean_int_add(x_87, x_82); -lean_dec(x_82); -lean_dec(x_87); -x_89 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_88); -lean_dec(x_88); -if (lean_is_scalar(x_8)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_8; +x_79 = lean_int_add(x_78, x_72); +lean_dec(x_72); +lean_dec(x_78); +x_80 = l_Std_Time_Duration_ofNanoseconds(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_80); +lean_dec(x_80); +x_82 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_81); +x_83 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_83, 0, x_73); +x_84 = lean_mk_thunk(x_83); +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_82); +lean_ctor_set(x_85, 1, x_84); +return x_85; } -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_85); -x_91 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_90); -x_92 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_92, 0, x_77); -x_93 = lean_mk_thunk(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_91); -lean_ctor_set(x_94, 1, x_93); -return x_94; +} +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; uint8_t x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_114 = lean_ctor_get(x_5, 0); +x_115 = lean_ctor_get(x_5, 1); +lean_inc(x_115); +lean_inc(x_114); +lean_dec(x_5); +x_116 = lean_ctor_get(x_114, 0); +lean_inc(x_116); +x_117 = lean_ctor_get(x_114, 2); +lean_inc(x_117); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + lean_ctor_release(x_114, 2); + x_118 = x_114; +} else { + lean_dec_ref(x_114); + x_118 = lean_box(0); +} +x_119 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_120 = lean_int_mod(x_116, x_119); +x_121 = l_Std_Time_instInhabitedDateTime___closed__2; +x_122 = lean_int_dec_eq(x_120, x_121); +lean_dec(x_120); +x_123 = lean_ctor_get(x_1, 0); +x_124 = lean_int_neg(x_123); +x_125 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_126 = lean_int_mul(x_124, x_125); +lean_dec(x_124); +x_127 = l_Std_Time_Duration_ofNanoseconds(x_126); +lean_dec(x_126); +x_128 = lean_ctor_get(x_127, 0); +lean_inc(x_128); +x_129 = lean_int_mul(x_128, x_125); +lean_dec(x_128); +x_130 = lean_ctor_get(x_127, 1); +lean_inc(x_130); +lean_dec(x_127); +x_131 = lean_int_add(x_129, x_130); +lean_dec(x_130); +lean_dec(x_129); +if (x_122 == 0) +{ +uint8_t x_146; lean_object* x_147; uint8_t x_148; +x_146 = 0; +x_147 = l_Std_Time_Month_Ordinal_days(x_146, x_3); +x_148 = lean_int_dec_lt(x_147, x_117); +if (x_148 == 0) +{ +lean_object* x_149; lean_object* x_150; +lean_dec(x_147); +if (lean_is_scalar(x_118)) { + x_149 = lean_alloc_ctor(0, 3, 0); +} else { + x_149 = x_118; +} +lean_ctor_set(x_149, 0, x_116); +lean_ctor_set(x_149, 1, x_3); +lean_ctor_set(x_149, 2, x_117); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_115); +x_132 = x_150; +goto block_145; +} +else +{ +lean_object* x_151; lean_object* x_152; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_151 = lean_alloc_ctor(0, 3, 0); +} else { + x_151 = x_118; +} +lean_ctor_set(x_151, 0, x_116); +lean_ctor_set(x_151, 1, x_3); +lean_ctor_set(x_151, 2, x_147); +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_151); +lean_ctor_set(x_152, 1, x_115); +x_132 = x_152; +goto block_145; +} +} +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; uint8_t x_156; +x_153 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_154 = lean_int_mod(x_116, x_153); +x_155 = lean_int_dec_eq(x_154, x_121); +lean_dec(x_154); +x_156 = l_instDecidableNot___rarg(x_155); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; uint8_t x_159; +x_157 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_158 = lean_int_mod(x_116, x_157); +x_159 = lean_int_dec_eq(x_158, x_121); +lean_dec(x_158); +if (x_159 == 0) +{ +uint8_t x_160; lean_object* x_161; uint8_t x_162; +x_160 = 0; +x_161 = l_Std_Time_Month_Ordinal_days(x_160, x_3); +x_162 = lean_int_dec_lt(x_161, x_117); +if (x_162 == 0) +{ +lean_object* x_163; lean_object* x_164; +lean_dec(x_161); +if (lean_is_scalar(x_118)) { + x_163 = lean_alloc_ctor(0, 3, 0); +} else { + x_163 = x_118; +} +lean_ctor_set(x_163, 0, x_116); +lean_ctor_set(x_163, 1, x_3); +lean_ctor_set(x_163, 2, x_117); +x_164 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_115); +x_132 = x_164; +goto block_145; +} +else +{ +lean_object* x_165; lean_object* x_166; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_165 = lean_alloc_ctor(0, 3, 0); +} else { + x_165 = x_118; +} +lean_ctor_set(x_165, 0, x_116); +lean_ctor_set(x_165, 1, x_3); +lean_ctor_set(x_165, 2, x_161); +x_166 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_166, 0, x_165); +lean_ctor_set(x_166, 1, x_115); +x_132 = x_166; +goto block_145; +} +} +else +{ +uint8_t x_167; lean_object* x_168; uint8_t x_169; +x_167 = 1; +x_168 = l_Std_Time_Month_Ordinal_days(x_167, x_3); +x_169 = lean_int_dec_lt(x_168, x_117); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +lean_dec(x_168); +if (lean_is_scalar(x_118)) { + x_170 = lean_alloc_ctor(0, 3, 0); +} else { + x_170 = x_118; +} +lean_ctor_set(x_170, 0, x_116); +lean_ctor_set(x_170, 1, x_3); +lean_ctor_set(x_170, 2, x_117); +x_171 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_171, 0, x_170); +lean_ctor_set(x_171, 1, x_115); +x_132 = x_171; +goto block_145; +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_172 = lean_alloc_ctor(0, 3, 0); +} else { + x_172 = x_118; +} +lean_ctor_set(x_172, 0, x_116); +lean_ctor_set(x_172, 1, x_3); +lean_ctor_set(x_172, 2, x_168); +x_173 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_173, 0, x_172); +lean_ctor_set(x_173, 1, x_115); +x_132 = x_173; +goto block_145; +} +} +} +else +{ +uint8_t x_174; lean_object* x_175; uint8_t x_176; +x_174 = 1; +x_175 = l_Std_Time_Month_Ordinal_days(x_174, x_3); +x_176 = lean_int_dec_lt(x_175, x_117); +if (x_176 == 0) +{ +lean_object* x_177; lean_object* x_178; +lean_dec(x_175); +if (lean_is_scalar(x_118)) { + x_177 = lean_alloc_ctor(0, 3, 0); +} else { + x_177 = x_118; +} +lean_ctor_set(x_177, 0, x_116); +lean_ctor_set(x_177, 1, x_3); +lean_ctor_set(x_177, 2, x_117); +x_178 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_178, 0, x_177); +lean_ctor_set(x_178, 1, x_115); +x_132 = x_178; +goto block_145; +} +else +{ +lean_object* x_179; lean_object* x_180; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_179 = lean_alloc_ctor(0, 3, 0); +} else { + x_179 = x_118; +} +lean_ctor_set(x_179, 0, x_116); +lean_ctor_set(x_179, 1, x_3); +lean_ctor_set(x_179, 2, x_175); +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_179); +lean_ctor_set(x_180, 1, x_115); +x_132 = x_180; +goto block_145; +} +} +} +block_145: +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_inc(x_132); +x_133 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_132); +x_134 = lean_ctor_get(x_133, 0); +lean_inc(x_134); +x_135 = lean_int_mul(x_134, x_125); +lean_dec(x_134); +x_136 = lean_ctor_get(x_133, 1); +lean_inc(x_136); +lean_dec(x_133); +x_137 = lean_int_add(x_135, x_136); +lean_dec(x_136); +lean_dec(x_135); +x_138 = lean_int_add(x_137, x_131); +lean_dec(x_131); +lean_dec(x_137); +x_139 = l_Std_Time_Duration_ofNanoseconds(x_138); +lean_dec(x_138); +x_140 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_139); +lean_dec(x_139); +x_141 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_140); +x_142 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_142, 0, x_132); +x_143 = lean_mk_thunk(x_142); +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_141); +lean_ctor_set(x_144, 1, x_143); +return x_144; } } } @@ -4424,110 +4799,123 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_ctor_get(x_7, 0); -lean_inc(x_9); -x_10 = lean_ctor_get(x_7, 2); -lean_inc(x_10); -lean_dec(x_7); -x_11 = l_Std_Time_PlainDate_rollOver(x_9, x_3, x_10); -lean_dec(x_10); +x_8 = lean_ctor_get(x_7, 0); lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); +x_9 = lean_ctor_get(x_7, 2); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Std_Time_PlainDate_rollOver(x_8, x_3, x_9); +lean_dec(x_9); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_5); -x_33 = lean_ctor_get(x_31, 0); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 2); -lean_inc(x_34); -lean_dec(x_31); -x_35 = l_Std_Time_PlainDate_rollOver(x_33, x_3, x_34); -lean_dec(x_34); lean_inc(x_32); +lean_dec(x_5); +x_34 = lean_ctor_get(x_32, 0); +lean_inc(x_34); +x_35 = lean_ctor_get(x_32, 2); lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); -lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +x_36 = l_Std_Time_PlainDate_rollOver(x_34, x_3, x_35); +lean_dec(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); +lean_dec(x_39); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -4544,435 +4932,647 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_withYearClip(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; uint8_t x_9; +lean_object* x_4; lean_object* x_5; uint8_t x_6; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -x_6 = lean_ctor_get(x_5, 0); -lean_inc(x_6); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -if (lean_is_exclusive(x_5)) { - lean_ctor_release(x_5, 0); - lean_ctor_release(x_5, 1); - x_8 = x_5; -} else { - lean_dec_ref(x_5); - x_8 = lean_box(0); -} -x_9 = !lean_is_exclusive(x_6); -if (x_9 == 0) +x_6 = !lean_is_exclusive(x_5); +if (x_6 == 0) { -lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; uint8_t x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; -x_10 = lean_ctor_get(x_6, 1); -x_11 = lean_ctor_get(x_6, 2); -x_12 = lean_ctor_get(x_6, 0); -lean_dec(x_12); -x_13 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_14 = lean_int_mod(x_3, x_13); -x_15 = l_Std_Time_instInhabitedDateTime___closed__2; -x_16 = lean_int_dec_eq(x_14, x_15); -lean_dec(x_14); -x_17 = lean_ctor_get(x_1, 0); -x_18 = lean_int_neg(x_17); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_18, x_19); -if (x_16 == 0) +lean_object* x_7; uint8_t x_8; +x_7 = lean_ctor_get(x_5, 0); +x_8 = !lean_is_exclusive(x_7); +if (x_8 == 0) { -uint8_t x_40; lean_object* x_41; uint8_t x_42; -x_40 = 0; -x_41 = l_Std_Time_Month_Ordinal_days(x_40, x_10); -x_42 = lean_int_dec_lt(x_41, x_11); -if (x_42 == 0) -{ -lean_object* x_43; -lean_dec(x_41); -lean_ctor_set(x_6, 0, x_3); -x_43 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_43, 0, x_6); -lean_ctor_set(x_43, 1, x_7); -x_21 = x_43; -goto block_39; -} -else -{ -lean_object* x_44; +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; uint8_t x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; +x_9 = lean_ctor_get(x_7, 1); +x_10 = lean_ctor_get(x_7, 2); +x_11 = lean_ctor_get(x_7, 0); lean_dec(x_11); -lean_ctor_set(x_6, 2, x_41); -lean_ctor_set(x_6, 0, x_3); -x_44 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_44, 0, x_6); -lean_ctor_set(x_44, 1, x_7); -x_21 = x_44; -goto block_39; +x_12 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_13 = lean_int_mod(x_3, x_12); +x_14 = l_Std_Time_instInhabitedDateTime___closed__2; +x_15 = lean_int_dec_eq(x_13, x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_1, 0); +x_17 = lean_int_neg(x_16); +x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_19 = lean_int_mul(x_17, x_18); +lean_dec(x_17); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = lean_ctor_get(x_20, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_18); +lean_dec(x_21); +x_23 = lean_ctor_get(x_20, 1); +lean_inc(x_23); +lean_dec(x_20); +x_24 = lean_int_add(x_22, x_23); +lean_dec(x_23); +lean_dec(x_22); +if (x_15 == 0) +{ +uint8_t x_39; lean_object* x_40; uint8_t x_41; +x_39 = 0; +x_40 = l_Std_Time_Month_Ordinal_days(x_39, x_9); +x_41 = lean_int_dec_lt(x_40, x_10); +if (x_41 == 0) +{ +lean_dec(x_40); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; +} +else +{ +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_40); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; } } else { -lean_object* x_45; lean_object* x_46; uint8_t x_47; uint8_t x_48; -x_45 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_46 = lean_int_mod(x_3, x_45); -x_47 = lean_int_dec_eq(x_46, x_15); -lean_dec(x_46); -x_48 = l_instDecidableNot___rarg(x_47); +lean_object* x_42; lean_object* x_43; uint8_t x_44; uint8_t x_45; +x_42 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_43 = lean_int_mod(x_3, x_42); +x_44 = lean_int_dec_eq(x_43, x_14); +lean_dec(x_43); +x_45 = l_instDecidableNot___rarg(x_44); +if (x_45 == 0) +{ +lean_object* x_46; lean_object* x_47; uint8_t x_48; +x_46 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_47 = lean_int_mod(x_3, x_46); +x_48 = lean_int_dec_eq(x_47, x_14); +lean_dec(x_47); if (x_48 == 0) { -lean_object* x_49; lean_object* x_50; uint8_t x_51; -x_49 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_50 = lean_int_mod(x_3, x_49); -x_51 = lean_int_dec_eq(x_50, x_15); -lean_dec(x_50); +uint8_t x_49; lean_object* x_50; uint8_t x_51; +x_49 = 0; +x_50 = l_Std_Time_Month_Ordinal_days(x_49, x_9); +x_51 = lean_int_dec_lt(x_50, x_10); if (x_51 == 0) { +lean_dec(x_50); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; +} +else +{ +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_50); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; +} +} +else +{ uint8_t x_52; lean_object* x_53; uint8_t x_54; -x_52 = 0; -x_53 = l_Std_Time_Month_Ordinal_days(x_52, x_10); -x_54 = lean_int_dec_lt(x_53, x_11); +x_52 = 1; +x_53 = l_Std_Time_Month_Ordinal_days(x_52, x_9); +x_54 = lean_int_dec_lt(x_53, x_10); if (x_54 == 0) { -lean_object* x_55; lean_dec(x_53); -lean_ctor_set(x_6, 0, x_3); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_6); -lean_ctor_set(x_55, 1, x_7); -x_21 = x_55; -goto block_39; +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_56; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_53); -lean_ctor_set(x_6, 0, x_3); -x_56 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_56, 0, x_6); -lean_ctor_set(x_56, 1, x_7); -x_21 = x_56; -goto block_39; -} -} -else -{ -uint8_t x_57; lean_object* x_58; uint8_t x_59; -x_57 = 1; -x_58 = l_Std_Time_Month_Ordinal_days(x_57, x_10); -x_59 = lean_int_dec_lt(x_58, x_11); -if (x_59 == 0) -{ -lean_object* x_60; -lean_dec(x_58); -lean_ctor_set(x_6, 0, x_3); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_6); -lean_ctor_set(x_60, 1, x_7); -x_21 = x_60; -goto block_39; -} -else -{ -lean_object* x_61; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_58); -lean_ctor_set(x_6, 0, x_3); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_6); -lean_ctor_set(x_61, 1, x_7); -x_21 = x_61; -goto block_39; +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_53); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; } } } else { -uint8_t x_62; lean_object* x_63; uint8_t x_64; -x_62 = 1; -x_63 = l_Std_Time_Month_Ordinal_days(x_62, x_10); -x_64 = lean_int_dec_lt(x_63, x_11); -if (x_64 == 0) +uint8_t x_55; lean_object* x_56; uint8_t x_57; +x_55 = 1; +x_56 = l_Std_Time_Month_Ordinal_days(x_55, x_9); +x_57 = lean_int_dec_lt(x_56, x_10); +if (x_57 == 0) { -lean_object* x_65; -lean_dec(x_63); -lean_ctor_set(x_6, 0, x_3); -x_65 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_65, 0, x_6); -lean_ctor_set(x_65, 1, x_7); -x_21 = x_65; -goto block_39; +lean_dec(x_56); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; } else { -lean_object* x_66; -lean_dec(x_11); -lean_ctor_set(x_6, 2, x_63); -lean_ctor_set(x_6, 0, x_3); -x_66 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_66, 0, x_6); -lean_ctor_set(x_66, 1, x_7); -x_21 = x_66; -goto block_39; +lean_dec(x_10); +lean_ctor_set(x_7, 2, x_56); +lean_ctor_set(x_7, 0, x_3); +x_25 = x_5; +goto block_38; } } } -block_39: +block_38: { -lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; -x_22 = lean_ctor_get(x_21, 1); -lean_inc(x_22); -x_23 = l_Std_Time_PlainTime_toSeconds(x_22); -x_24 = lean_int_add(x_23, x_18); -lean_dec(x_18); -lean_dec(x_23); -x_25 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_26 = lean_int_ediv(x_24, x_25); -lean_dec(x_24); -x_27 = l_Std_Time_PlainTime_toNanoseconds(x_22); -lean_dec(x_22); -x_28 = lean_int_add(x_27, x_20); -lean_dec(x_20); +lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; +lean_inc(x_25); +x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); +x_27 = lean_ctor_get(x_26, 0); +lean_inc(x_27); +x_28 = lean_int_mul(x_27, x_18); lean_dec(x_27); -x_29 = l_Std_Time_PlainTime_ofNanoseconds(x_28); -lean_dec(x_28); -x_30 = lean_ctor_get(x_21, 0); -lean_inc(x_30); -x_31 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_32 = lean_int_add(x_31, x_26); +x_29 = lean_ctor_get(x_26, 1); +lean_inc(x_29); lean_dec(x_26); +x_30 = lean_int_add(x_28, x_29); +lean_dec(x_29); +lean_dec(x_28); +x_31 = lean_int_add(x_30, x_24); +lean_dec(x_24); +lean_dec(x_30); +x_32 = l_Std_Time_Duration_ofNanoseconds(x_31); lean_dec(x_31); -x_33 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_32); +x_33 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_32); lean_dec(x_32); -if (lean_is_scalar(x_8)) { - x_34 = lean_alloc_ctor(0, 2, 0); -} else { - x_34 = x_8; -} -lean_ctor_set(x_34, 0, x_33); -lean_ctor_set(x_34, 1, x_29); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_34); -x_36 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_36, 0, x_21); -x_37 = lean_mk_thunk(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_35); -lean_ctor_set(x_38, 1, x_37); -return x_38; +x_34 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_33); +x_35 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_35, 0, x_25); +x_36 = lean_mk_thunk(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_34); +lean_ctor_set(x_37, 1, x_36); +return x_37; } } else { -lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; uint8_t x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; -x_67 = lean_ctor_get(x_6, 1); -x_68 = lean_ctor_get(x_6, 2); -lean_inc(x_68); -lean_inc(x_67); -lean_dec(x_6); -x_69 = l_Std_Time_DateTime_withDaysClip___closed__1; -x_70 = lean_int_mod(x_3, x_69); -x_71 = l_Std_Time_instInhabitedDateTime___closed__2; -x_72 = lean_int_dec_eq(x_70, x_71); +lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; uint8_t x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; +x_58 = lean_ctor_get(x_7, 1); +x_59 = lean_ctor_get(x_7, 2); +lean_inc(x_59); +lean_inc(x_58); +lean_dec(x_7); +x_60 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_61 = lean_int_mod(x_3, x_60); +x_62 = l_Std_Time_instInhabitedDateTime___closed__2; +x_63 = lean_int_dec_eq(x_61, x_62); +lean_dec(x_61); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); +x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_67 = lean_int_mul(x_65, x_66); +lean_dec(x_65); +x_68 = l_Std_Time_Duration_ofNanoseconds(x_67); +lean_dec(x_67); +x_69 = lean_ctor_get(x_68, 0); +lean_inc(x_69); +x_70 = lean_int_mul(x_69, x_66); +lean_dec(x_69); +x_71 = lean_ctor_get(x_68, 1); +lean_inc(x_71); +lean_dec(x_68); +x_72 = lean_int_add(x_70, x_71); +lean_dec(x_71); lean_dec(x_70); -x_73 = lean_ctor_get(x_1, 0); -x_74 = lean_int_neg(x_73); -x_75 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_76 = lean_int_mul(x_74, x_75); -if (x_72 == 0) +if (x_63 == 0) { -uint8_t x_96; lean_object* x_97; uint8_t x_98; -x_96 = 0; -x_97 = l_Std_Time_Month_Ordinal_days(x_96, x_67); -x_98 = lean_int_dec_lt(x_97, x_68); +uint8_t x_87; lean_object* x_88; uint8_t x_89; +x_87 = 0; +x_88 = l_Std_Time_Month_Ordinal_days(x_87, x_58); +x_89 = lean_int_dec_lt(x_88, x_59); +if (x_89 == 0) +{ +lean_object* x_90; +lean_dec(x_88); +x_90 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_90, 0, x_3); +lean_ctor_set(x_90, 1, x_58); +lean_ctor_set(x_90, 2, x_59); +lean_ctor_set(x_5, 0, x_90); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_91; +lean_dec(x_59); +x_91 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_91, 0, x_3); +lean_ctor_set(x_91, 1, x_58); +lean_ctor_set(x_91, 2, x_88); +lean_ctor_set(x_5, 0, x_91); +x_73 = x_5; +goto block_86; +} +} +else +{ +lean_object* x_92; lean_object* x_93; uint8_t x_94; uint8_t x_95; +x_92 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_93 = lean_int_mod(x_3, x_92); +x_94 = lean_int_dec_eq(x_93, x_62); +lean_dec(x_93); +x_95 = l_instDecidableNot___rarg(x_94); +if (x_95 == 0) +{ +lean_object* x_96; lean_object* x_97; uint8_t x_98; +x_96 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_97 = lean_int_mod(x_3, x_96); +x_98 = lean_int_dec_eq(x_97, x_62); +lean_dec(x_97); if (x_98 == 0) { -lean_object* x_99; lean_object* x_100; -lean_dec(x_97); -x_99 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_99, 0, x_3); -lean_ctor_set(x_99, 1, x_67); -lean_ctor_set(x_99, 2, x_68); -x_100 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_100, 0, x_99); -lean_ctor_set(x_100, 1, x_7); -x_77 = x_100; -goto block_95; +uint8_t x_99; lean_object* x_100; uint8_t x_101; +x_99 = 0; +x_100 = l_Std_Time_Month_Ordinal_days(x_99, x_58); +x_101 = lean_int_dec_lt(x_100, x_59); +if (x_101 == 0) +{ +lean_object* x_102; +lean_dec(x_100); +x_102 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_102, 0, x_3); +lean_ctor_set(x_102, 1, x_58); +lean_ctor_set(x_102, 2, x_59); +lean_ctor_set(x_5, 0, x_102); +x_73 = x_5; +goto block_86; } else { -lean_object* x_101; lean_object* x_102; -lean_dec(x_68); -x_101 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_101, 0, x_3); -lean_ctor_set(x_101, 1, x_67); -lean_ctor_set(x_101, 2, x_97); -x_102 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_102, 0, x_101); -lean_ctor_set(x_102, 1, x_7); -x_77 = x_102; -goto block_95; +lean_object* x_103; +lean_dec(x_59); +x_103 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_103, 0, x_3); +lean_ctor_set(x_103, 1, x_58); +lean_ctor_set(x_103, 2, x_100); +lean_ctor_set(x_5, 0, x_103); +x_73 = x_5; +goto block_86; } } else { -lean_object* x_103; lean_object* x_104; uint8_t x_105; uint8_t x_106; -x_103 = l_Std_Time_DateTime_withDaysClip___closed__2; -x_104 = lean_int_mod(x_3, x_103); -x_105 = lean_int_dec_eq(x_104, x_71); -lean_dec(x_104); -x_106 = l_instDecidableNot___rarg(x_105); +uint8_t x_104; lean_object* x_105; uint8_t x_106; +x_104 = 1; +x_105 = l_Std_Time_Month_Ordinal_days(x_104, x_58); +x_106 = lean_int_dec_lt(x_105, x_59); if (x_106 == 0) { -lean_object* x_107; lean_object* x_108; uint8_t x_109; -x_107 = l_Std_Time_DateTime_withDaysClip___closed__3; -x_108 = lean_int_mod(x_3, x_107); -x_109 = lean_int_dec_eq(x_108, x_71); -lean_dec(x_108); -if (x_109 == 0) +lean_object* x_107; +lean_dec(x_105); +x_107 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_107, 0, x_3); +lean_ctor_set(x_107, 1, x_58); +lean_ctor_set(x_107, 2, x_59); +lean_ctor_set(x_5, 0, x_107); +x_73 = x_5; +goto block_86; +} +else { -uint8_t x_110; lean_object* x_111; uint8_t x_112; -x_110 = 0; -x_111 = l_Std_Time_Month_Ordinal_days(x_110, x_67); -x_112 = lean_int_dec_lt(x_111, x_68); -if (x_112 == 0) +lean_object* x_108; +lean_dec(x_59); +x_108 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_108, 0, x_3); +lean_ctor_set(x_108, 1, x_58); +lean_ctor_set(x_108, 2, x_105); +lean_ctor_set(x_5, 0, x_108); +x_73 = x_5; +goto block_86; +} +} +} +else { -lean_object* x_113; lean_object* x_114; -lean_dec(x_111); +uint8_t x_109; lean_object* x_110; uint8_t x_111; +x_109 = 1; +x_110 = l_Std_Time_Month_Ordinal_days(x_109, x_58); +x_111 = lean_int_dec_lt(x_110, x_59); +if (x_111 == 0) +{ +lean_object* x_112; +lean_dec(x_110); +x_112 = lean_alloc_ctor(0, 3, 0); +lean_ctor_set(x_112, 0, x_3); +lean_ctor_set(x_112, 1, x_58); +lean_ctor_set(x_112, 2, x_59); +lean_ctor_set(x_5, 0, x_112); +x_73 = x_5; +goto block_86; +} +else +{ +lean_object* x_113; +lean_dec(x_59); x_113 = lean_alloc_ctor(0, 3, 0); lean_ctor_set(x_113, 0, x_3); -lean_ctor_set(x_113, 1, x_67); -lean_ctor_set(x_113, 2, x_68); -x_114 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_114, 0, x_113); -lean_ctor_set(x_114, 1, x_7); -x_77 = x_114; -goto block_95; +lean_ctor_set(x_113, 1, x_58); +lean_ctor_set(x_113, 2, x_110); +lean_ctor_set(x_5, 0, x_113); +x_73 = x_5; +goto block_86; } -else +} +} +block_86: { -lean_object* x_115; lean_object* x_116; -lean_dec(x_68); -x_115 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_115, 0, x_3); -lean_ctor_set(x_115, 1, x_67); -lean_ctor_set(x_115, 2, x_111); -x_116 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_116, 0, x_115); -lean_ctor_set(x_116, 1, x_7); -x_77 = x_116; -goto block_95; -} -} -else -{ -uint8_t x_117; lean_object* x_118; uint8_t x_119; -x_117 = 1; -x_118 = l_Std_Time_Month_Ordinal_days(x_117, x_67); -x_119 = lean_int_dec_lt(x_118, x_68); -if (x_119 == 0) -{ -lean_object* x_120; lean_object* x_121; -lean_dec(x_118); -x_120 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_120, 0, x_3); -lean_ctor_set(x_120, 1, x_67); -lean_ctor_set(x_120, 2, x_68); -x_121 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_121, 0, x_120); -lean_ctor_set(x_121, 1, x_7); -x_77 = x_121; -goto block_95; -} -else -{ -lean_object* x_122; lean_object* x_123; -lean_dec(x_68); -x_122 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_122, 0, x_3); -lean_ctor_set(x_122, 1, x_67); -lean_ctor_set(x_122, 2, x_118); -x_123 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_123, 0, x_122); -lean_ctor_set(x_123, 1, x_7); -x_77 = x_123; -goto block_95; -} -} -} -else -{ -uint8_t x_124; lean_object* x_125; uint8_t x_126; -x_124 = 1; -x_125 = l_Std_Time_Month_Ordinal_days(x_124, x_67); -x_126 = lean_int_dec_lt(x_125, x_68); -if (x_126 == 0) -{ -lean_object* x_127; lean_object* x_128; -lean_dec(x_125); -x_127 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_127, 0, x_3); -lean_ctor_set(x_127, 1, x_67); -lean_ctor_set(x_127, 2, x_68); -x_128 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_128, 0, x_127); -lean_ctor_set(x_128, 1, x_7); -x_77 = x_128; -goto block_95; -} -else -{ -lean_object* x_129; lean_object* x_130; -lean_dec(x_68); -x_129 = lean_alloc_ctor(0, 3, 0); -lean_ctor_set(x_129, 0, x_3); -lean_ctor_set(x_129, 1, x_67); -lean_ctor_set(x_129, 2, x_125); -x_130 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_130, 0, x_129); -lean_ctor_set(x_130, 1, x_7); -x_77 = x_130; -goto block_95; -} -} -} -block_95: -{ -lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; -x_78 = lean_ctor_get(x_77, 1); -lean_inc(x_78); -x_79 = l_Std_Time_PlainTime_toSeconds(x_78); -x_80 = lean_int_add(x_79, x_74); +lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; +lean_inc(x_73); +x_74 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_73); +x_75 = lean_ctor_get(x_74, 0); +lean_inc(x_75); +x_76 = lean_int_mul(x_75, x_66); +lean_dec(x_75); +x_77 = lean_ctor_get(x_74, 1); +lean_inc(x_77); lean_dec(x_74); -lean_dec(x_79); -x_81 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_82 = lean_int_ediv(x_80, x_81); -lean_dec(x_80); -x_83 = l_Std_Time_PlainTime_toNanoseconds(x_78); -lean_dec(x_78); -x_84 = lean_int_add(x_83, x_76); +x_78 = lean_int_add(x_76, x_77); +lean_dec(x_77); lean_dec(x_76); -lean_dec(x_83); -x_85 = l_Std_Time_PlainTime_ofNanoseconds(x_84); -lean_dec(x_84); -x_86 = lean_ctor_get(x_77, 0); -lean_inc(x_86); -x_87 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_86); -x_88 = lean_int_add(x_87, x_82); -lean_dec(x_82); -lean_dec(x_87); -x_89 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_88); -lean_dec(x_88); -if (lean_is_scalar(x_8)) { - x_90 = lean_alloc_ctor(0, 2, 0); -} else { - x_90 = x_8; +x_79 = lean_int_add(x_78, x_72); +lean_dec(x_72); +lean_dec(x_78); +x_80 = l_Std_Time_Duration_ofNanoseconds(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_80); +lean_dec(x_80); +x_82 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_81); +x_83 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_83, 0, x_73); +x_84 = lean_mk_thunk(x_83); +x_85 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_85, 0, x_82); +lean_ctor_set(x_85, 1, x_84); +return x_85; } -lean_ctor_set(x_90, 0, x_89); -lean_ctor_set(x_90, 1, x_85); -x_91 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_90); -x_92 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_92, 0, x_77); -x_93 = lean_mk_thunk(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_91); -lean_ctor_set(x_94, 1, x_93); -return x_94; +} +} +else +{ +lean_object* x_114; lean_object* x_115; lean_object* x_116; lean_object* x_117; lean_object* x_118; lean_object* x_119; lean_object* x_120; lean_object* x_121; uint8_t x_122; lean_object* x_123; lean_object* x_124; lean_object* x_125; lean_object* x_126; lean_object* x_127; lean_object* x_128; lean_object* x_129; lean_object* x_130; lean_object* x_131; lean_object* x_132; +x_114 = lean_ctor_get(x_5, 0); +x_115 = lean_ctor_get(x_5, 1); +lean_inc(x_115); +lean_inc(x_114); +lean_dec(x_5); +x_116 = lean_ctor_get(x_114, 1); +lean_inc(x_116); +x_117 = lean_ctor_get(x_114, 2); +lean_inc(x_117); +if (lean_is_exclusive(x_114)) { + lean_ctor_release(x_114, 0); + lean_ctor_release(x_114, 1); + lean_ctor_release(x_114, 2); + x_118 = x_114; +} else { + lean_dec_ref(x_114); + x_118 = lean_box(0); +} +x_119 = l_Std_Time_DateTime_withDaysClip___closed__1; +x_120 = lean_int_mod(x_3, x_119); +x_121 = l_Std_Time_instInhabitedDateTime___closed__2; +x_122 = lean_int_dec_eq(x_120, x_121); +lean_dec(x_120); +x_123 = lean_ctor_get(x_1, 0); +x_124 = lean_int_neg(x_123); +x_125 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_126 = lean_int_mul(x_124, x_125); +lean_dec(x_124); +x_127 = l_Std_Time_Duration_ofNanoseconds(x_126); +lean_dec(x_126); +x_128 = lean_ctor_get(x_127, 0); +lean_inc(x_128); +x_129 = lean_int_mul(x_128, x_125); +lean_dec(x_128); +x_130 = lean_ctor_get(x_127, 1); +lean_inc(x_130); +lean_dec(x_127); +x_131 = lean_int_add(x_129, x_130); +lean_dec(x_130); +lean_dec(x_129); +if (x_122 == 0) +{ +uint8_t x_146; lean_object* x_147; uint8_t x_148; +x_146 = 0; +x_147 = l_Std_Time_Month_Ordinal_days(x_146, x_116); +x_148 = lean_int_dec_lt(x_147, x_117); +if (x_148 == 0) +{ +lean_object* x_149; lean_object* x_150; +lean_dec(x_147); +if (lean_is_scalar(x_118)) { + x_149 = lean_alloc_ctor(0, 3, 0); +} else { + x_149 = x_118; +} +lean_ctor_set(x_149, 0, x_3); +lean_ctor_set(x_149, 1, x_116); +lean_ctor_set(x_149, 2, x_117); +x_150 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_150, 0, x_149); +lean_ctor_set(x_150, 1, x_115); +x_132 = x_150; +goto block_145; +} +else +{ +lean_object* x_151; lean_object* x_152; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_151 = lean_alloc_ctor(0, 3, 0); +} else { + x_151 = x_118; +} +lean_ctor_set(x_151, 0, x_3); +lean_ctor_set(x_151, 1, x_116); +lean_ctor_set(x_151, 2, x_147); +x_152 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_152, 0, x_151); +lean_ctor_set(x_152, 1, x_115); +x_132 = x_152; +goto block_145; +} +} +else +{ +lean_object* x_153; lean_object* x_154; uint8_t x_155; uint8_t x_156; +x_153 = l_Std_Time_DateTime_withDaysClip___closed__2; +x_154 = lean_int_mod(x_3, x_153); +x_155 = lean_int_dec_eq(x_154, x_121); +lean_dec(x_154); +x_156 = l_instDecidableNot___rarg(x_155); +if (x_156 == 0) +{ +lean_object* x_157; lean_object* x_158; uint8_t x_159; +x_157 = l_Std_Time_DateTime_withDaysClip___closed__3; +x_158 = lean_int_mod(x_3, x_157); +x_159 = lean_int_dec_eq(x_158, x_121); +lean_dec(x_158); +if (x_159 == 0) +{ +uint8_t x_160; lean_object* x_161; uint8_t x_162; +x_160 = 0; +x_161 = l_Std_Time_Month_Ordinal_days(x_160, x_116); +x_162 = lean_int_dec_lt(x_161, x_117); +if (x_162 == 0) +{ +lean_object* x_163; lean_object* x_164; +lean_dec(x_161); +if (lean_is_scalar(x_118)) { + x_163 = lean_alloc_ctor(0, 3, 0); +} else { + x_163 = x_118; +} +lean_ctor_set(x_163, 0, x_3); +lean_ctor_set(x_163, 1, x_116); +lean_ctor_set(x_163, 2, x_117); +x_164 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_164, 0, x_163); +lean_ctor_set(x_164, 1, x_115); +x_132 = x_164; +goto block_145; +} +else +{ +lean_object* x_165; lean_object* x_166; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_165 = lean_alloc_ctor(0, 3, 0); +} else { + x_165 = x_118; +} +lean_ctor_set(x_165, 0, x_3); +lean_ctor_set(x_165, 1, x_116); +lean_ctor_set(x_165, 2, x_161); +x_166 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_166, 0, x_165); +lean_ctor_set(x_166, 1, x_115); +x_132 = x_166; +goto block_145; +} +} +else +{ +uint8_t x_167; lean_object* x_168; uint8_t x_169; +x_167 = 1; +x_168 = l_Std_Time_Month_Ordinal_days(x_167, x_116); +x_169 = lean_int_dec_lt(x_168, x_117); +if (x_169 == 0) +{ +lean_object* x_170; lean_object* x_171; +lean_dec(x_168); +if (lean_is_scalar(x_118)) { + x_170 = lean_alloc_ctor(0, 3, 0); +} else { + x_170 = x_118; +} +lean_ctor_set(x_170, 0, x_3); +lean_ctor_set(x_170, 1, x_116); +lean_ctor_set(x_170, 2, x_117); +x_171 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_171, 0, x_170); +lean_ctor_set(x_171, 1, x_115); +x_132 = x_171; +goto block_145; +} +else +{ +lean_object* x_172; lean_object* x_173; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_172 = lean_alloc_ctor(0, 3, 0); +} else { + x_172 = x_118; +} +lean_ctor_set(x_172, 0, x_3); +lean_ctor_set(x_172, 1, x_116); +lean_ctor_set(x_172, 2, x_168); +x_173 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_173, 0, x_172); +lean_ctor_set(x_173, 1, x_115); +x_132 = x_173; +goto block_145; +} +} +} +else +{ +uint8_t x_174; lean_object* x_175; uint8_t x_176; +x_174 = 1; +x_175 = l_Std_Time_Month_Ordinal_days(x_174, x_116); +x_176 = lean_int_dec_lt(x_175, x_117); +if (x_176 == 0) +{ +lean_object* x_177; lean_object* x_178; +lean_dec(x_175); +if (lean_is_scalar(x_118)) { + x_177 = lean_alloc_ctor(0, 3, 0); +} else { + x_177 = x_118; +} +lean_ctor_set(x_177, 0, x_3); +lean_ctor_set(x_177, 1, x_116); +lean_ctor_set(x_177, 2, x_117); +x_178 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_178, 0, x_177); +lean_ctor_set(x_178, 1, x_115); +x_132 = x_178; +goto block_145; +} +else +{ +lean_object* x_179; lean_object* x_180; +lean_dec(x_117); +if (lean_is_scalar(x_118)) { + x_179 = lean_alloc_ctor(0, 3, 0); +} else { + x_179 = x_118; +} +lean_ctor_set(x_179, 0, x_3); +lean_ctor_set(x_179, 1, x_116); +lean_ctor_set(x_179, 2, x_175); +x_180 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_180, 0, x_179); +lean_ctor_set(x_180, 1, x_115); +x_132 = x_180; +goto block_145; +} +} +} +block_145: +{ +lean_object* x_133; lean_object* x_134; lean_object* x_135; lean_object* x_136; lean_object* x_137; lean_object* x_138; lean_object* x_139; lean_object* x_140; lean_object* x_141; lean_object* x_142; lean_object* x_143; lean_object* x_144; +lean_inc(x_132); +x_133 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_132); +x_134 = lean_ctor_get(x_133, 0); +lean_inc(x_134); +x_135 = lean_int_mul(x_134, x_125); +lean_dec(x_134); +x_136 = lean_ctor_get(x_133, 1); +lean_inc(x_136); +lean_dec(x_133); +x_137 = lean_int_add(x_135, x_136); +lean_dec(x_136); +lean_dec(x_135); +x_138 = lean_int_add(x_137, x_131); +lean_dec(x_131); +lean_dec(x_137); +x_139 = l_Std_Time_Duration_ofNanoseconds(x_138); +lean_dec(x_138); +x_140 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_139); +lean_dec(x_139); +x_141 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_140); +x_142 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_142, 0, x_132); +x_143 = lean_mk_thunk(x_142); +x_144 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_144, 0, x_141); +lean_ctor_set(x_144, 1, x_143); +return x_144; } } } @@ -4996,110 +5596,123 @@ x_5 = lean_thunk_get_own(x_4); x_6 = !lean_is_exclusive(x_5); if (x_6 == 0) { -lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; x_7 = lean_ctor_get(x_5, 0); -x_8 = lean_ctor_get(x_5, 1); -x_9 = lean_ctor_get(x_7, 1); -lean_inc(x_9); -x_10 = lean_ctor_get(x_7, 2); -lean_inc(x_10); -lean_dec(x_7); -x_11 = l_Std_Time_PlainDate_rollOver(x_3, x_9, x_10); -lean_dec(x_10); +x_8 = lean_ctor_get(x_7, 1); lean_inc(x_8); -lean_inc(x_11); -lean_ctor_set(x_5, 0, x_11); -x_12 = lean_ctor_get(x_1, 0); -x_13 = lean_int_neg(x_12); -x_14 = l_Std_Time_PlainTime_toSeconds(x_8); -x_15 = lean_int_add(x_14, x_13); +x_9 = lean_ctor_get(x_7, 2); +lean_inc(x_9); +lean_dec(x_7); +x_10 = l_Std_Time_PlainDate_rollOver(x_3, x_8, x_9); +lean_dec(x_9); +lean_ctor_set(x_5, 0, x_10); +x_11 = lean_ctor_get(x_1, 0); +x_12 = lean_int_neg(x_11); +x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +lean_inc(x_5); +x_15 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_16 = l_Std_Time_Duration_ofNanoseconds(x_14); lean_dec(x_14); -x_16 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_17 = lean_int_ediv(x_15, x_16); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_19 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_20 = lean_int_mul(x_13, x_19); -lean_dec(x_13); -x_21 = lean_int_add(x_18, x_20); -lean_dec(x_20); -lean_dec(x_18); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_11); -x_24 = lean_int_add(x_23, x_17); +x_17 = lean_ctor_get(x_15, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); +x_19 = lean_ctor_get(x_15, 1); +lean_inc(x_19); +lean_dec(x_15); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_ctor_get(x_16, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_13); +lean_dec(x_21); +x_23 = lean_ctor_get(x_16, 1); +lean_inc(x_23); +lean_dec(x_16); +x_24 = lean_int_add(x_22, x_23); lean_dec(x_23); -x_25 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_24); +lean_dec(x_22); +x_25 = lean_int_add(x_20, x_24); lean_dec(x_24); -x_26 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_26, 0, x_25); -lean_ctor_set(x_26, 1, x_22); -x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); -x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_28, 0, x_5); -x_29 = lean_mk_thunk(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_27); -lean_ctor_set(x_30, 1, x_29); -return x_30; +lean_dec(x_20); +x_26 = l_Std_Time_Duration_ofNanoseconds(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_26); +lean_dec(x_26); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_27); +x_29 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_29, 0, x_5); +x_30 = lean_mk_thunk(x_29); +x_31 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_31, 0, x_28); +lean_ctor_set(x_31, 1, x_30); +return x_31; } else { -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; -x_31 = lean_ctor_get(x_5, 0); -x_32 = lean_ctor_get(x_5, 1); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_5); -x_33 = lean_ctor_get(x_31, 1); +lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; +x_32 = lean_ctor_get(x_5, 0); +x_33 = lean_ctor_get(x_5, 1); lean_inc(x_33); -x_34 = lean_ctor_get(x_31, 2); -lean_inc(x_34); -lean_dec(x_31); -x_35 = l_Std_Time_PlainDate_rollOver(x_3, x_33, x_34); -lean_dec(x_34); lean_inc(x_32); +lean_dec(x_5); +x_34 = lean_ctor_get(x_32, 1); +lean_inc(x_34); +x_35 = lean_ctor_get(x_32, 2); lean_inc(x_35); -x_36 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_36, 0, x_35); -lean_ctor_set(x_36, 1, x_32); -x_37 = lean_ctor_get(x_1, 0); -x_38 = lean_int_neg(x_37); -x_39 = l_Std_Time_PlainTime_toSeconds(x_32); -x_40 = lean_int_add(x_39, x_38); -lean_dec(x_39); -x_41 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_42 = lean_int_ediv(x_40, x_41); -lean_dec(x_40); -x_43 = l_Std_Time_PlainTime_toNanoseconds(x_32); lean_dec(x_32); -x_44 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_45 = lean_int_mul(x_38, x_44); -lean_dec(x_38); -x_46 = lean_int_add(x_43, x_45); -lean_dec(x_45); -lean_dec(x_43); -x_47 = l_Std_Time_PlainTime_ofNanoseconds(x_46); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_49 = lean_int_add(x_48, x_42); +x_36 = l_Std_Time_PlainDate_rollOver(x_3, x_34, x_35); +lean_dec(x_35); +x_37 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_37, 0, x_36); +lean_ctor_set(x_37, 1, x_33); +x_38 = lean_ctor_get(x_1, 0); +x_39 = lean_int_neg(x_38); +x_40 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_41 = lean_int_mul(x_39, x_40); +lean_dec(x_39); +lean_inc(x_37); +x_42 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); +x_43 = l_Std_Time_Duration_ofNanoseconds(x_41); +lean_dec(x_41); +x_44 = lean_ctor_get(x_42, 0); +lean_inc(x_44); +x_45 = lean_int_mul(x_44, x_40); +lean_dec(x_44); +x_46 = lean_ctor_get(x_42, 1); +lean_inc(x_46); lean_dec(x_42); +x_47 = lean_int_add(x_45, x_46); +lean_dec(x_46); +lean_dec(x_45); +x_48 = lean_ctor_get(x_43, 0); +lean_inc(x_48); +x_49 = lean_int_mul(x_48, x_40); lean_dec(x_48); -x_50 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_49); +x_50 = lean_ctor_get(x_43, 1); +lean_inc(x_50); +lean_dec(x_43); +x_51 = lean_int_add(x_49, x_50); +lean_dec(x_50); lean_dec(x_49); -x_51 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_51, 0, x_50); -lean_ctor_set(x_51, 1, x_47); -x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); -x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_53, 0, x_36); -x_54 = lean_mk_thunk(x_53); -x_55 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_55, 0, x_52); -lean_ctor_set(x_55, 1, x_54); -return x_55; +x_52 = lean_int_add(x_47, x_51); +lean_dec(x_51); +lean_dec(x_47); +x_53 = l_Std_Time_Duration_ofNanoseconds(x_52); +lean_dec(x_52); +x_54 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_53); +lean_dec(x_53); +x_55 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_54); +x_56 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_56, 0, x_37); +x_57 = lean_mk_thunk(x_56); +x_58 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_58, 0, x_55); +lean_ctor_set(x_58, 1, x_57); +return x_58; } } } @@ -5127,53 +5740,58 @@ x_7 = lean_ctor_get(x_5, 1); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_7, 0); -lean_dec(x_10); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_9 = lean_ctor_get(x_7, 0); +lean_dec(x_9); lean_ctor_set(x_7, 0, x_3); -lean_inc(x_7); -lean_inc(x_9); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_7); -x_14 = lean_int_add(x_13, x_12); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_23 = lean_int_add(x_22, x_16); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_31 = lean_ctor_get(x_7, 1); x_32 = lean_ctor_get(x_7, 2); x_33 = lean_ctor_get(x_7, 3); @@ -5186,119 +5804,133 @@ lean_ctor_set(x_34, 0, x_3); lean_ctor_set(x_34, 1, x_31); lean_ctor_set(x_34, 2, x_32); lean_ctor_set(x_34, 3, x_33); -lean_inc(x_34); -lean_inc(x_30); lean_ctor_set(x_5, 1, x_34); x_35 = lean_ctor_get(x_1, 0); x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_34); -x_38 = lean_int_add(x_37, x_36); -lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_34); -lean_dec(x_34); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); +x_37 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_38 = lean_int_mul(x_36, x_37); lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); +lean_inc(x_5); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_40 = l_Std_Time_Duration_ofNanoseconds(x_38); +lean_dec(x_38); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +x_42 = lean_int_mul(x_41, x_37); lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_47 = lean_int_add(x_46, x_40); +x_43 = lean_ctor_get(x_39, 1); +lean_inc(x_43); +lean_dec(x_39); +x_44 = lean_int_add(x_42, x_43); +lean_dec(x_43); +lean_dec(x_42); +x_45 = lean_ctor_get(x_40, 0); +lean_inc(x_45); +x_46 = lean_int_mul(x_45, x_37); +lean_dec(x_45); +x_47 = lean_ctor_get(x_40, 1); +lean_inc(x_47); lean_dec(x_40); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_int_add(x_46, x_47); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_5); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +lean_dec(x_46); +x_49 = lean_int_add(x_44, x_48); +lean_dec(x_48); +lean_dec(x_44); +x_50 = l_Std_Time_Duration_ofNanoseconds(x_49); +lean_dec(x_49); +x_51 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); +x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_53, 0, x_5); +x_54 = lean_mk_thunk(x_53); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_54 = lean_ctor_get(x_5, 1); -x_55 = lean_ctor_get(x_5, 0); -lean_inc(x_54); -lean_inc(x_55); -lean_dec(x_5); -x_56 = lean_ctor_get(x_54, 1); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_56 = lean_ctor_get(x_5, 1); +x_57 = lean_ctor_get(x_5, 0); lean_inc(x_56); -x_57 = lean_ctor_get(x_54, 2); lean_inc(x_57); -x_58 = lean_ctor_get(x_54, 3); +lean_dec(x_5); +x_58 = lean_ctor_get(x_56, 1); lean_inc(x_58); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - lean_ctor_release(x_54, 2); - lean_ctor_release(x_54, 3); - x_59 = x_54; -} else { - lean_dec_ref(x_54); - x_59 = lean_box(0); -} -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(0, 4, 0); -} else { - x_60 = x_59; -} -lean_ctor_set(x_60, 0, x_3); -lean_ctor_set(x_60, 1, x_56); -lean_ctor_set(x_60, 2, x_57); -lean_ctor_set(x_60, 3, x_58); +x_59 = lean_ctor_get(x_56, 2); +lean_inc(x_59); +x_60 = lean_ctor_get(x_56, 3); lean_inc(x_60); -lean_inc(x_55); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_55); -lean_ctor_set(x_61, 1, x_60); -x_62 = lean_ctor_get(x_1, 0); -x_63 = lean_int_neg(x_62); -x_64 = l_Std_Time_PlainTime_toSeconds(x_60); -x_65 = lean_int_add(x_64, x_63); -lean_dec(x_64); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + lean_ctor_release(x_56, 2); + lean_ctor_release(x_56, 3); + x_61 = x_56; +} else { + lean_dec_ref(x_56); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(0, 4, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_3); +lean_ctor_set(x_62, 1, x_58); +lean_ctor_set(x_62, 2, x_59); +lean_ctor_set(x_62, 3, x_60); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_57); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_67 = lean_int_ediv(x_65, x_66); +x_67 = lean_int_mul(x_65, x_66); lean_dec(x_65); -x_68 = l_Std_Time_PlainTime_toNanoseconds(x_60); -lean_dec(x_60); -x_69 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_70 = lean_int_mul(x_63, x_69); -lean_dec(x_63); -x_71 = lean_int_add(x_68, x_70); -lean_dec(x_70); -lean_dec(x_68); -x_72 = l_Std_Time_PlainTime_ofNanoseconds(x_71); -lean_dec(x_71); -x_73 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_55); -x_74 = lean_int_add(x_73, x_67); +lean_inc(x_63); +x_68 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_63); +x_69 = l_Std_Time_Duration_ofNanoseconds(x_67); lean_dec(x_67); -lean_dec(x_73); -x_75 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_74); +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_int_mul(x_70, x_66); +lean_dec(x_70); +x_72 = lean_ctor_get(x_68, 1); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_int_add(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +x_74 = lean_ctor_get(x_69, 0); +lean_inc(x_74); +x_75 = lean_int_mul(x_74, x_66); lean_dec(x_74); -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_72); -x_77 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_76); -x_78 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_78, 0, x_61); -x_79 = lean_mk_thunk(x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_77); -lean_ctor_set(x_80, 1, x_79); -return x_80; +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +lean_dec(x_69); +x_77 = lean_int_add(x_75, x_76); +lean_dec(x_76); +lean_dec(x_75); +x_78 = lean_int_add(x_73, x_77); +lean_dec(x_77); +lean_dec(x_73); +x_79 = l_Std_Time_Duration_ofNanoseconds(x_78); +lean_dec(x_78); +x_80 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_80); +x_82 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_82, 0, x_63); +x_83 = lean_mk_thunk(x_82); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_81); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } @@ -5326,53 +5958,58 @@ x_7 = lean_ctor_get(x_5, 1); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_7, 1); -lean_dec(x_10); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_9 = lean_ctor_get(x_7, 1); +lean_dec(x_9); lean_ctor_set(x_7, 1, x_3); -lean_inc(x_7); -lean_inc(x_9); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_7); -x_14 = lean_int_add(x_13, x_12); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_23 = lean_int_add(x_22, x_16); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_31 = lean_ctor_get(x_7, 0); x_32 = lean_ctor_get(x_7, 2); x_33 = lean_ctor_get(x_7, 3); @@ -5385,119 +6022,133 @@ lean_ctor_set(x_34, 0, x_31); lean_ctor_set(x_34, 1, x_3); lean_ctor_set(x_34, 2, x_32); lean_ctor_set(x_34, 3, x_33); -lean_inc(x_34); -lean_inc(x_30); lean_ctor_set(x_5, 1, x_34); x_35 = lean_ctor_get(x_1, 0); x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_34); -x_38 = lean_int_add(x_37, x_36); -lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_34); -lean_dec(x_34); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); +x_37 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_38 = lean_int_mul(x_36, x_37); lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); +lean_inc(x_5); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_40 = l_Std_Time_Duration_ofNanoseconds(x_38); +lean_dec(x_38); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +x_42 = lean_int_mul(x_41, x_37); lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_47 = lean_int_add(x_46, x_40); +x_43 = lean_ctor_get(x_39, 1); +lean_inc(x_43); +lean_dec(x_39); +x_44 = lean_int_add(x_42, x_43); +lean_dec(x_43); +lean_dec(x_42); +x_45 = lean_ctor_get(x_40, 0); +lean_inc(x_45); +x_46 = lean_int_mul(x_45, x_37); +lean_dec(x_45); +x_47 = lean_ctor_get(x_40, 1); +lean_inc(x_47); lean_dec(x_40); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_int_add(x_46, x_47); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_5); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +lean_dec(x_46); +x_49 = lean_int_add(x_44, x_48); +lean_dec(x_48); +lean_dec(x_44); +x_50 = l_Std_Time_Duration_ofNanoseconds(x_49); +lean_dec(x_49); +x_51 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); +x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_53, 0, x_5); +x_54 = lean_mk_thunk(x_53); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_54 = lean_ctor_get(x_5, 1); -x_55 = lean_ctor_get(x_5, 0); -lean_inc(x_54); -lean_inc(x_55); -lean_dec(x_5); -x_56 = lean_ctor_get(x_54, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_56 = lean_ctor_get(x_5, 1); +x_57 = lean_ctor_get(x_5, 0); lean_inc(x_56); -x_57 = lean_ctor_get(x_54, 2); lean_inc(x_57); -x_58 = lean_ctor_get(x_54, 3); +lean_dec(x_5); +x_58 = lean_ctor_get(x_56, 0); lean_inc(x_58); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - lean_ctor_release(x_54, 2); - lean_ctor_release(x_54, 3); - x_59 = x_54; -} else { - lean_dec_ref(x_54); - x_59 = lean_box(0); -} -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(0, 4, 0); -} else { - x_60 = x_59; -} -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_3); -lean_ctor_set(x_60, 2, x_57); -lean_ctor_set(x_60, 3, x_58); +x_59 = lean_ctor_get(x_56, 2); +lean_inc(x_59); +x_60 = lean_ctor_get(x_56, 3); lean_inc(x_60); -lean_inc(x_55); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_55); -lean_ctor_set(x_61, 1, x_60); -x_62 = lean_ctor_get(x_1, 0); -x_63 = lean_int_neg(x_62); -x_64 = l_Std_Time_PlainTime_toSeconds(x_60); -x_65 = lean_int_add(x_64, x_63); -lean_dec(x_64); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + lean_ctor_release(x_56, 2); + lean_ctor_release(x_56, 3); + x_61 = x_56; +} else { + lean_dec_ref(x_56); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(0, 4, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_58); +lean_ctor_set(x_62, 1, x_3); +lean_ctor_set(x_62, 2, x_59); +lean_ctor_set(x_62, 3, x_60); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_57); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_67 = lean_int_ediv(x_65, x_66); +x_67 = lean_int_mul(x_65, x_66); lean_dec(x_65); -x_68 = l_Std_Time_PlainTime_toNanoseconds(x_60); -lean_dec(x_60); -x_69 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_70 = lean_int_mul(x_63, x_69); -lean_dec(x_63); -x_71 = lean_int_add(x_68, x_70); -lean_dec(x_70); -lean_dec(x_68); -x_72 = l_Std_Time_PlainTime_ofNanoseconds(x_71); -lean_dec(x_71); -x_73 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_55); -x_74 = lean_int_add(x_73, x_67); +lean_inc(x_63); +x_68 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_63); +x_69 = l_Std_Time_Duration_ofNanoseconds(x_67); lean_dec(x_67); -lean_dec(x_73); -x_75 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_74); +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_int_mul(x_70, x_66); +lean_dec(x_70); +x_72 = lean_ctor_get(x_68, 1); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_int_add(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +x_74 = lean_ctor_get(x_69, 0); +lean_inc(x_74); +x_75 = lean_int_mul(x_74, x_66); lean_dec(x_74); -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_72); -x_77 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_76); -x_78 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_78, 0, x_61); -x_79 = lean_mk_thunk(x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_77); -lean_ctor_set(x_80, 1, x_79); -return x_80; +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +lean_dec(x_69); +x_77 = lean_int_add(x_75, x_76); +lean_dec(x_76); +lean_dec(x_75); +x_78 = lean_int_add(x_73, x_77); +lean_dec(x_77); +lean_dec(x_73); +x_79 = l_Std_Time_Duration_ofNanoseconds(x_78); +lean_dec(x_78); +x_80 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_80); +x_82 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_82, 0, x_63); +x_83 = lean_mk_thunk(x_82); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_81); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } @@ -5525,53 +6176,58 @@ x_7 = lean_ctor_get(x_5, 1); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_7, 2); -lean_dec(x_10); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_9 = lean_ctor_get(x_7, 2); +lean_dec(x_9); lean_ctor_set(x_7, 2, x_3); -lean_inc(x_7); -lean_inc(x_9); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_7); -x_14 = lean_int_add(x_13, x_12); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_23 = lean_int_add(x_22, x_16); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_31 = lean_ctor_get(x_7, 0); x_32 = lean_ctor_get(x_7, 1); x_33 = lean_ctor_get(x_7, 3); @@ -5584,119 +6240,133 @@ lean_ctor_set(x_34, 0, x_31); lean_ctor_set(x_34, 1, x_32); lean_ctor_set(x_34, 2, x_3); lean_ctor_set(x_34, 3, x_33); -lean_inc(x_34); -lean_inc(x_30); lean_ctor_set(x_5, 1, x_34); x_35 = lean_ctor_get(x_1, 0); x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_34); -x_38 = lean_int_add(x_37, x_36); -lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_34); -lean_dec(x_34); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); +x_37 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_38 = lean_int_mul(x_36, x_37); lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); +lean_inc(x_5); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_40 = l_Std_Time_Duration_ofNanoseconds(x_38); +lean_dec(x_38); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +x_42 = lean_int_mul(x_41, x_37); lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_47 = lean_int_add(x_46, x_40); +x_43 = lean_ctor_get(x_39, 1); +lean_inc(x_43); +lean_dec(x_39); +x_44 = lean_int_add(x_42, x_43); +lean_dec(x_43); +lean_dec(x_42); +x_45 = lean_ctor_get(x_40, 0); +lean_inc(x_45); +x_46 = lean_int_mul(x_45, x_37); +lean_dec(x_45); +x_47 = lean_ctor_get(x_40, 1); +lean_inc(x_47); lean_dec(x_40); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_int_add(x_46, x_47); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_5); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +lean_dec(x_46); +x_49 = lean_int_add(x_44, x_48); +lean_dec(x_48); +lean_dec(x_44); +x_50 = l_Std_Time_Duration_ofNanoseconds(x_49); +lean_dec(x_49); +x_51 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); +x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_53, 0, x_5); +x_54 = lean_mk_thunk(x_53); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_54 = lean_ctor_get(x_5, 1); -x_55 = lean_ctor_get(x_5, 0); -lean_inc(x_54); -lean_inc(x_55); -lean_dec(x_5); -x_56 = lean_ctor_get(x_54, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_56 = lean_ctor_get(x_5, 1); +x_57 = lean_ctor_get(x_5, 0); lean_inc(x_56); -x_57 = lean_ctor_get(x_54, 1); lean_inc(x_57); -x_58 = lean_ctor_get(x_54, 3); +lean_dec(x_5); +x_58 = lean_ctor_get(x_56, 0); lean_inc(x_58); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - lean_ctor_release(x_54, 2); - lean_ctor_release(x_54, 3); - x_59 = x_54; -} else { - lean_dec_ref(x_54); - x_59 = lean_box(0); -} -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(0, 4, 0); -} else { - x_60 = x_59; -} -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_57); -lean_ctor_set(x_60, 2, x_3); -lean_ctor_set(x_60, 3, x_58); +x_59 = lean_ctor_get(x_56, 1); +lean_inc(x_59); +x_60 = lean_ctor_get(x_56, 3); lean_inc(x_60); -lean_inc(x_55); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_55); -lean_ctor_set(x_61, 1, x_60); -x_62 = lean_ctor_get(x_1, 0); -x_63 = lean_int_neg(x_62); -x_64 = l_Std_Time_PlainTime_toSeconds(x_60); -x_65 = lean_int_add(x_64, x_63); -lean_dec(x_64); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + lean_ctor_release(x_56, 2); + lean_ctor_release(x_56, 3); + x_61 = x_56; +} else { + lean_dec_ref(x_56); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(0, 4, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_58); +lean_ctor_set(x_62, 1, x_59); +lean_ctor_set(x_62, 2, x_3); +lean_ctor_set(x_62, 3, x_60); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_57); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_67 = lean_int_ediv(x_65, x_66); +x_67 = lean_int_mul(x_65, x_66); lean_dec(x_65); -x_68 = l_Std_Time_PlainTime_toNanoseconds(x_60); -lean_dec(x_60); -x_69 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_70 = lean_int_mul(x_63, x_69); -lean_dec(x_63); -x_71 = lean_int_add(x_68, x_70); -lean_dec(x_70); -lean_dec(x_68); -x_72 = l_Std_Time_PlainTime_ofNanoseconds(x_71); -lean_dec(x_71); -x_73 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_55); -x_74 = lean_int_add(x_73, x_67); +lean_inc(x_63); +x_68 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_63); +x_69 = l_Std_Time_Duration_ofNanoseconds(x_67); lean_dec(x_67); -lean_dec(x_73); -x_75 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_74); +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_int_mul(x_70, x_66); +lean_dec(x_70); +x_72 = lean_ctor_get(x_68, 1); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_int_add(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +x_74 = lean_ctor_get(x_69, 0); +lean_inc(x_74); +x_75 = lean_int_mul(x_74, x_66); lean_dec(x_74); -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_72); -x_77 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_76); -x_78 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_78, 0, x_61); -x_79 = lean_mk_thunk(x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_77); -lean_ctor_set(x_80, 1, x_79); -return x_80; +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +lean_dec(x_69); +x_77 = lean_int_add(x_75, x_76); +lean_dec(x_76); +lean_dec(x_75); +x_78 = lean_int_add(x_73, x_77); +lean_dec(x_77); +lean_dec(x_73); +x_79 = l_Std_Time_Duration_ofNanoseconds(x_78); +lean_dec(x_78); +x_80 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_80); +x_82 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_82, 0, x_63); +x_83 = lean_mk_thunk(x_82); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_81); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } @@ -5724,53 +6394,58 @@ x_7 = lean_ctor_get(x_5, 1); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_7, 3); -lean_dec(x_10); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; +x_9 = lean_ctor_get(x_7, 3); +lean_dec(x_9); lean_ctor_set(x_7, 3, x_3); -lean_inc(x_7); -lean_inc(x_9); -x_11 = lean_ctor_get(x_1, 0); -x_12 = lean_int_neg(x_11); -x_13 = l_Std_Time_PlainTime_toSeconds(x_7); -x_14 = lean_int_add(x_13, x_12); +x_10 = lean_ctor_get(x_1, 0); +x_11 = lean_int_neg(x_10); +x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +lean_inc(x_5); +x_14 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_15 = l_Std_Time_Duration_ofNanoseconds(x_13); lean_dec(x_13); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_16 = lean_int_ediv(x_14, x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_18 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_19 = lean_int_mul(x_12, x_18); -lean_dec(x_12); -x_20 = lean_int_add(x_17, x_19); -lean_dec(x_19); -lean_dec(x_17); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); -lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_23 = lean_int_add(x_22, x_16); +x_16 = lean_ctor_get(x_14, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); lean_dec(x_16); +x_18 = lean_ctor_get(x_14, 1); +lean_inc(x_18); +lean_dec(x_14); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_ctor_get(x_15, 0); +lean_inc(x_20); +x_21 = lean_int_mul(x_20, x_12); +lean_dec(x_20); +x_22 = lean_ctor_get(x_15, 1); +lean_inc(x_22); +lean_dec(x_15); +x_23 = lean_int_add(x_21, x_22); lean_dec(x_22); -x_24 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_23); +lean_dec(x_21); +x_24 = lean_int_add(x_19, x_23); lean_dec(x_23); -x_25 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_25, 0, x_24); -lean_ctor_set(x_25, 1, x_21); -x_26 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_27, 0, x_5); -x_28 = lean_mk_thunk(x_27); -x_29 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_29, 0, x_26); -lean_ctor_set(x_29, 1, x_28); -return x_29; +lean_dec(x_19); +x_25 = l_Std_Time_Duration_ofNanoseconds(x_24); +lean_dec(x_24); +x_26 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_25); +lean_dec(x_25); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_26); +x_28 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_28, 0, x_5); +x_29 = lean_mk_thunk(x_28); +x_30 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_30, 0, x_27); +lean_ctor_set(x_30, 1, x_29); +return x_30; } else { -lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; -x_30 = lean_ctor_get(x_5, 0); +lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; x_31 = lean_ctor_get(x_7, 0); x_32 = lean_ctor_get(x_7, 1); x_33 = lean_ctor_get(x_7, 2); @@ -5783,119 +6458,133 @@ lean_ctor_set(x_34, 0, x_31); lean_ctor_set(x_34, 1, x_32); lean_ctor_set(x_34, 2, x_33); lean_ctor_set(x_34, 3, x_3); -lean_inc(x_34); -lean_inc(x_30); lean_ctor_set(x_5, 1, x_34); x_35 = lean_ctor_get(x_1, 0); x_36 = lean_int_neg(x_35); -x_37 = l_Std_Time_PlainTime_toSeconds(x_34); -x_38 = lean_int_add(x_37, x_36); -lean_dec(x_37); -x_39 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_40 = lean_int_ediv(x_38, x_39); -lean_dec(x_38); -x_41 = l_Std_Time_PlainTime_toNanoseconds(x_34); -lean_dec(x_34); -x_42 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_43 = lean_int_mul(x_36, x_42); +x_37 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_38 = lean_int_mul(x_36, x_37); lean_dec(x_36); -x_44 = lean_int_add(x_41, x_43); -lean_dec(x_43); +lean_inc(x_5); +x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_40 = l_Std_Time_Duration_ofNanoseconds(x_38); +lean_dec(x_38); +x_41 = lean_ctor_get(x_39, 0); +lean_inc(x_41); +x_42 = lean_int_mul(x_41, x_37); lean_dec(x_41); -x_45 = l_Std_Time_PlainTime_ofNanoseconds(x_44); -lean_dec(x_44); -x_46 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_30); -x_47 = lean_int_add(x_46, x_40); +x_43 = lean_ctor_get(x_39, 1); +lean_inc(x_43); +lean_dec(x_39); +x_44 = lean_int_add(x_42, x_43); +lean_dec(x_43); +lean_dec(x_42); +x_45 = lean_ctor_get(x_40, 0); +lean_inc(x_45); +x_46 = lean_int_mul(x_45, x_37); +lean_dec(x_45); +x_47 = lean_ctor_get(x_40, 1); +lean_inc(x_47); lean_dec(x_40); -lean_dec(x_46); -x_48 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_47); +x_48 = lean_int_add(x_46, x_47); lean_dec(x_47); -x_49 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_49, 0, x_48); -lean_ctor_set(x_49, 1, x_45); -x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_49); -x_51 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_51, 0, x_5); -x_52 = lean_mk_thunk(x_51); -x_53 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_53, 0, x_50); -lean_ctor_set(x_53, 1, x_52); -return x_53; +lean_dec(x_46); +x_49 = lean_int_add(x_44, x_48); +lean_dec(x_48); +lean_dec(x_44); +x_50 = l_Std_Time_Duration_ofNanoseconds(x_49); +lean_dec(x_49); +x_51 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_50); +lean_dec(x_50); +x_52 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_51); +x_53 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_53, 0, x_5); +x_54 = lean_mk_thunk(x_53); +x_55 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_55, 0, x_52); +lean_ctor_set(x_55, 1, x_54); +return x_55; } } else { -lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; -x_54 = lean_ctor_get(x_5, 1); -x_55 = lean_ctor_get(x_5, 0); -lean_inc(x_54); -lean_inc(x_55); -lean_dec(x_5); -x_56 = lean_ctor_get(x_54, 0); +lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; +x_56 = lean_ctor_get(x_5, 1); +x_57 = lean_ctor_get(x_5, 0); lean_inc(x_56); -x_57 = lean_ctor_get(x_54, 1); lean_inc(x_57); -x_58 = lean_ctor_get(x_54, 2); +lean_dec(x_5); +x_58 = lean_ctor_get(x_56, 0); lean_inc(x_58); -if (lean_is_exclusive(x_54)) { - lean_ctor_release(x_54, 0); - lean_ctor_release(x_54, 1); - lean_ctor_release(x_54, 2); - lean_ctor_release(x_54, 3); - x_59 = x_54; -} else { - lean_dec_ref(x_54); - x_59 = lean_box(0); -} -if (lean_is_scalar(x_59)) { - x_60 = lean_alloc_ctor(0, 4, 0); -} else { - x_60 = x_59; -} -lean_ctor_set(x_60, 0, x_56); -lean_ctor_set(x_60, 1, x_57); -lean_ctor_set(x_60, 2, x_58); -lean_ctor_set(x_60, 3, x_3); +x_59 = lean_ctor_get(x_56, 1); +lean_inc(x_59); +x_60 = lean_ctor_get(x_56, 2); lean_inc(x_60); -lean_inc(x_55); -x_61 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_61, 0, x_55); -lean_ctor_set(x_61, 1, x_60); -x_62 = lean_ctor_get(x_1, 0); -x_63 = lean_int_neg(x_62); -x_64 = l_Std_Time_PlainTime_toSeconds(x_60); -x_65 = lean_int_add(x_64, x_63); -lean_dec(x_64); +if (lean_is_exclusive(x_56)) { + lean_ctor_release(x_56, 0); + lean_ctor_release(x_56, 1); + lean_ctor_release(x_56, 2); + lean_ctor_release(x_56, 3); + x_61 = x_56; +} else { + lean_dec_ref(x_56); + x_61 = lean_box(0); +} +if (lean_is_scalar(x_61)) { + x_62 = lean_alloc_ctor(0, 4, 0); +} else { + x_62 = x_61; +} +lean_ctor_set(x_62, 0, x_58); +lean_ctor_set(x_62, 1, x_59); +lean_ctor_set(x_62, 2, x_60); +lean_ctor_set(x_62, 3, x_3); +x_63 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_63, 0, x_57); +lean_ctor_set(x_63, 1, x_62); +x_64 = lean_ctor_get(x_1, 0); +x_65 = lean_int_neg(x_64); x_66 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_67 = lean_int_ediv(x_65, x_66); +x_67 = lean_int_mul(x_65, x_66); lean_dec(x_65); -x_68 = l_Std_Time_PlainTime_toNanoseconds(x_60); -lean_dec(x_60); -x_69 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_70 = lean_int_mul(x_63, x_69); -lean_dec(x_63); -x_71 = lean_int_add(x_68, x_70); -lean_dec(x_70); -lean_dec(x_68); -x_72 = l_Std_Time_PlainTime_ofNanoseconds(x_71); -lean_dec(x_71); -x_73 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_55); -x_74 = lean_int_add(x_73, x_67); +lean_inc(x_63); +x_68 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_63); +x_69 = l_Std_Time_Duration_ofNanoseconds(x_67); lean_dec(x_67); -lean_dec(x_73); -x_75 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_74); +x_70 = lean_ctor_get(x_68, 0); +lean_inc(x_70); +x_71 = lean_int_mul(x_70, x_66); +lean_dec(x_70); +x_72 = lean_ctor_get(x_68, 1); +lean_inc(x_72); +lean_dec(x_68); +x_73 = lean_int_add(x_71, x_72); +lean_dec(x_72); +lean_dec(x_71); +x_74 = lean_ctor_get(x_69, 0); +lean_inc(x_74); +x_75 = lean_int_mul(x_74, x_66); lean_dec(x_74); -x_76 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_76, 0, x_75); -lean_ctor_set(x_76, 1, x_72); -x_77 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_76); -x_78 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_78, 0, x_61); -x_79 = lean_mk_thunk(x_78); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_77); -lean_ctor_set(x_80, 1, x_79); -return x_80; +x_76 = lean_ctor_get(x_69, 1); +lean_inc(x_76); +lean_dec(x_69); +x_77 = lean_int_add(x_75, x_76); +lean_dec(x_76); +lean_dec(x_75); +x_78 = lean_int_add(x_73, x_77); +lean_dec(x_77); +lean_dec(x_73); +x_79 = l_Std_Time_Duration_ofNanoseconds(x_78); +lean_dec(x_78); +x_80 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_79); +lean_dec(x_79); +x_81 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_80); +x_82 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_82, 0, x_63); +x_83 = lean_mk_thunk(x_82); +x_84 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_84, 0, x_81); +lean_ctor_set(x_84, 1, x_83); +return x_84; } } } @@ -5918,15 +6607,6 @@ x_2 = lean_nat_to_int(x_1); return x_2; } } -static lean_object* _init_l_Std_Time_DateTime_withMilliseconds___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(1000000u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Std_Time_DateTime_withMilliseconds(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { @@ -5941,60 +6621,65 @@ x_7 = lean_ctor_get(x_5, 1); x_8 = !lean_is_exclusive(x_7); if (x_8 == 0) { -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; -x_9 = lean_ctor_get(x_5, 0); -x_10 = lean_ctor_get(x_7, 3); -x_11 = l_Std_Time_DateTime_withMilliseconds___closed__1; -x_12 = lean_int_emod(x_10, x_11); -lean_dec(x_10); -x_13 = l_Std_Time_DateTime_withMilliseconds___closed__2; -x_14 = lean_int_mul(x_3, x_13); -x_15 = lean_int_add(x_14, x_12); -lean_dec(x_12); -lean_dec(x_14); -lean_ctor_set(x_7, 3, x_15); -lean_inc(x_7); -lean_inc(x_9); -x_16 = lean_ctor_get(x_1, 0); -x_17 = lean_int_neg(x_16); -x_18 = l_Std_Time_PlainTime_toSeconds(x_7); -x_19 = lean_int_add(x_18, x_17); +lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; +x_9 = lean_ctor_get(x_7, 3); +x_10 = l_Std_Time_DateTime_withMilliseconds___closed__1; +x_11 = lean_int_emod(x_9, x_10); +lean_dec(x_9); +x_12 = l_Std_Time_DateTime_addMilliseconds___closed__1; +x_13 = lean_int_mul(x_3, x_12); +x_14 = lean_int_add(x_13, x_11); +lean_dec(x_11); +lean_dec(x_13); +lean_ctor_set(x_7, 3, x_14); +x_15 = lean_ctor_get(x_1, 0); +x_16 = lean_int_neg(x_15); +x_17 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_18 = lean_int_mul(x_16, x_17); +lean_dec(x_16); +lean_inc(x_5); +x_19 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_21 = lean_int_ediv(x_19, x_20); -lean_dec(x_19); -x_22 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_23 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_24 = lean_int_mul(x_17, x_23); -lean_dec(x_17); -x_25 = lean_int_add(x_22, x_24); -lean_dec(x_24); -lean_dec(x_22); -x_26 = l_Std_Time_PlainTime_ofNanoseconds(x_25); -lean_dec(x_25); -x_27 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_9); -x_28 = lean_int_add(x_27, x_21); +x_21 = lean_ctor_get(x_19, 0); +lean_inc(x_21); +x_22 = lean_int_mul(x_21, x_17); lean_dec(x_21); +x_23 = lean_ctor_get(x_19, 1); +lean_inc(x_23); +lean_dec(x_19); +x_24 = lean_int_add(x_22, x_23); +lean_dec(x_23); +lean_dec(x_22); +x_25 = lean_ctor_get(x_20, 0); +lean_inc(x_25); +x_26 = lean_int_mul(x_25, x_17); +lean_dec(x_25); +x_27 = lean_ctor_get(x_20, 1); +lean_inc(x_27); +lean_dec(x_20); +x_28 = lean_int_add(x_26, x_27); lean_dec(x_27); -x_29 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_28); +lean_dec(x_26); +x_29 = lean_int_add(x_24, x_28); lean_dec(x_28); -x_30 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_30, 0, x_29); -lean_ctor_set(x_30, 1, x_26); -x_31 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_30); -x_32 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_32, 0, x_5); -x_33 = lean_mk_thunk(x_32); -x_34 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_34, 0, x_31); -lean_ctor_set(x_34, 1, x_33); -return x_34; +lean_dec(x_24); +x_30 = l_Std_Time_Duration_ofNanoseconds(x_29); +lean_dec(x_29); +x_31 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_30); +lean_dec(x_30); +x_32 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_31); +x_33 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_33, 0, x_5); +x_34 = lean_mk_thunk(x_33); +x_35 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_35, 0, x_32); +lean_ctor_set(x_35, 1, x_34); +return x_35; } else { -lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_35 = lean_ctor_get(x_5, 0); +lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_66; x_36 = lean_ctor_get(x_7, 0); x_37 = lean_ctor_get(x_7, 1); x_38 = lean_ctor_get(x_7, 2); @@ -6007,7 +6692,7 @@ lean_dec(x_7); x_40 = l_Std_Time_DateTime_withMilliseconds___closed__1; x_41 = lean_int_emod(x_39, x_40); lean_dec(x_39); -x_42 = l_Std_Time_DateTime_withMilliseconds___closed__2; +x_42 = l_Std_Time_DateTime_addMilliseconds___closed__1; x_43 = lean_int_mul(x_3, x_42); x_44 = lean_int_add(x_43, x_41); lean_dec(x_41); @@ -6017,129 +6702,143 @@ lean_ctor_set(x_45, 0, x_36); lean_ctor_set(x_45, 1, x_37); lean_ctor_set(x_45, 2, x_38); lean_ctor_set(x_45, 3, x_44); -lean_inc(x_45); -lean_inc(x_35); lean_ctor_set(x_5, 1, x_45); x_46 = lean_ctor_get(x_1, 0); x_47 = lean_int_neg(x_46); -x_48 = l_Std_Time_PlainTime_toSeconds(x_45); -x_49 = lean_int_add(x_48, x_47); -lean_dec(x_48); -x_50 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_51 = lean_int_ediv(x_49, x_50); -lean_dec(x_49); -x_52 = l_Std_Time_PlainTime_toNanoseconds(x_45); -lean_dec(x_45); -x_53 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_54 = lean_int_mul(x_47, x_53); +x_48 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_49 = lean_int_mul(x_47, x_48); lean_dec(x_47); -x_55 = lean_int_add(x_52, x_54); -lean_dec(x_54); +lean_inc(x_5); +x_50 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_51 = l_Std_Time_Duration_ofNanoseconds(x_49); +lean_dec(x_49); +x_52 = lean_ctor_get(x_50, 0); +lean_inc(x_52); +x_53 = lean_int_mul(x_52, x_48); lean_dec(x_52); -x_56 = l_Std_Time_PlainTime_ofNanoseconds(x_55); -lean_dec(x_55); -x_57 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_35); -x_58 = lean_int_add(x_57, x_51); +x_54 = lean_ctor_get(x_50, 1); +lean_inc(x_54); +lean_dec(x_50); +x_55 = lean_int_add(x_53, x_54); +lean_dec(x_54); +lean_dec(x_53); +x_56 = lean_ctor_get(x_51, 0); +lean_inc(x_56); +x_57 = lean_int_mul(x_56, x_48); +lean_dec(x_56); +x_58 = lean_ctor_get(x_51, 1); +lean_inc(x_58); lean_dec(x_51); -lean_dec(x_57); -x_59 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_58); +x_59 = lean_int_add(x_57, x_58); lean_dec(x_58); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_56); -x_61 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_60); -x_62 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_62, 0, x_5); -x_63 = lean_mk_thunk(x_62); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_61); -lean_ctor_set(x_64, 1, x_63); -return x_64; +lean_dec(x_57); +x_60 = lean_int_add(x_55, x_59); +lean_dec(x_59); +lean_dec(x_55); +x_61 = l_Std_Time_Duration_ofNanoseconds(x_60); +lean_dec(x_60); +x_62 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_61); +lean_dec(x_61); +x_63 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_62); +x_64 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_64, 0, x_5); +x_65 = lean_mk_thunk(x_64); +x_66 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_66, 0, x_63); +lean_ctor_set(x_66, 1, x_65); +return x_66; } } else { -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_65 = lean_ctor_get(x_5, 1); -x_66 = lean_ctor_get(x_5, 0); -lean_inc(x_65); -lean_inc(x_66); -lean_dec(x_5); -x_67 = lean_ctor_get(x_65, 0); +lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; lean_object* x_99; lean_object* x_100; lean_object* x_101; +x_67 = lean_ctor_get(x_5, 1); +x_68 = lean_ctor_get(x_5, 0); lean_inc(x_67); -x_68 = lean_ctor_get(x_65, 1); lean_inc(x_68); -x_69 = lean_ctor_get(x_65, 2); +lean_dec(x_5); +x_69 = lean_ctor_get(x_67, 0); lean_inc(x_69); -x_70 = lean_ctor_get(x_65, 3); +x_70 = lean_ctor_get(x_67, 1); lean_inc(x_70); -if (lean_is_exclusive(x_65)) { - lean_ctor_release(x_65, 0); - lean_ctor_release(x_65, 1); - lean_ctor_release(x_65, 2); - lean_ctor_release(x_65, 3); - x_71 = x_65; +x_71 = lean_ctor_get(x_67, 2); +lean_inc(x_71); +x_72 = lean_ctor_get(x_67, 3); +lean_inc(x_72); +if (lean_is_exclusive(x_67)) { + lean_ctor_release(x_67, 0); + lean_ctor_release(x_67, 1); + lean_ctor_release(x_67, 2); + lean_ctor_release(x_67, 3); + x_73 = x_67; } else { - lean_dec_ref(x_65); - x_71 = lean_box(0); + lean_dec_ref(x_67); + x_73 = lean_box(0); } -x_72 = l_Std_Time_DateTime_withMilliseconds___closed__1; -x_73 = lean_int_emod(x_70, x_72); -lean_dec(x_70); -x_74 = l_Std_Time_DateTime_withMilliseconds___closed__2; -x_75 = lean_int_mul(x_3, x_74); -x_76 = lean_int_add(x_75, x_73); -lean_dec(x_73); +x_74 = l_Std_Time_DateTime_withMilliseconds___closed__1; +x_75 = lean_int_emod(x_72, x_74); +lean_dec(x_72); +x_76 = l_Std_Time_DateTime_addMilliseconds___closed__1; +x_77 = lean_int_mul(x_3, x_76); +x_78 = lean_int_add(x_77, x_75); lean_dec(x_75); -if (lean_is_scalar(x_71)) { - x_77 = lean_alloc_ctor(0, 4, 0); -} else { - x_77 = x_71; -} -lean_ctor_set(x_77, 0, x_67); -lean_ctor_set(x_77, 1, x_68); -lean_ctor_set(x_77, 2, x_69); -lean_ctor_set(x_77, 3, x_76); -lean_inc(x_77); -lean_inc(x_66); -x_78 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_78, 0, x_66); -lean_ctor_set(x_78, 1, x_77); -x_79 = lean_ctor_get(x_1, 0); -x_80 = lean_int_neg(x_79); -x_81 = l_Std_Time_PlainTime_toSeconds(x_77); -x_82 = lean_int_add(x_81, x_80); -lean_dec(x_81); -x_83 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_84 = lean_int_ediv(x_82, x_83); -lean_dec(x_82); -x_85 = l_Std_Time_PlainTime_toNanoseconds(x_77); lean_dec(x_77); -x_86 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_87 = lean_int_mul(x_80, x_86); -lean_dec(x_80); -x_88 = lean_int_add(x_85, x_87); -lean_dec(x_87); -lean_dec(x_85); -x_89 = l_Std_Time_PlainTime_ofNanoseconds(x_88); -lean_dec(x_88); -x_90 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_66); -x_91 = lean_int_add(x_90, x_84); +if (lean_is_scalar(x_73)) { + x_79 = lean_alloc_ctor(0, 4, 0); +} else { + x_79 = x_73; +} +lean_ctor_set(x_79, 0, x_69); +lean_ctor_set(x_79, 1, x_70); +lean_ctor_set(x_79, 2, x_71); +lean_ctor_set(x_79, 3, x_78); +x_80 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_80, 0, x_68); +lean_ctor_set(x_80, 1, x_79); +x_81 = lean_ctor_get(x_1, 0); +x_82 = lean_int_neg(x_81); +x_83 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_84 = lean_int_mul(x_82, x_83); +lean_dec(x_82); +lean_inc(x_80); +x_85 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_80); +x_86 = l_Std_Time_Duration_ofNanoseconds(x_84); lean_dec(x_84); -lean_dec(x_90); -x_92 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_91); +x_87 = lean_ctor_get(x_85, 0); +lean_inc(x_87); +x_88 = lean_int_mul(x_87, x_83); +lean_dec(x_87); +x_89 = lean_ctor_get(x_85, 1); +lean_inc(x_89); +lean_dec(x_85); +x_90 = lean_int_add(x_88, x_89); +lean_dec(x_89); +lean_dec(x_88); +x_91 = lean_ctor_get(x_86, 0); +lean_inc(x_91); +x_92 = lean_int_mul(x_91, x_83); lean_dec(x_91); -x_93 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_89); -x_94 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_93); -x_95 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_95, 0, x_78); -x_96 = lean_mk_thunk(x_95); -x_97 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_97, 0, x_94); -lean_ctor_set(x_97, 1, x_96); -return x_97; +x_93 = lean_ctor_get(x_86, 1); +lean_inc(x_93); +lean_dec(x_86); +x_94 = lean_int_add(x_92, x_93); +lean_dec(x_93); +lean_dec(x_92); +x_95 = lean_int_add(x_90, x_94); +lean_dec(x_94); +lean_dec(x_90); +x_96 = l_Std_Time_Duration_ofNanoseconds(x_95); +lean_dec(x_95); +x_97 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_96); +lean_dec(x_96); +x_98 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_97); +x_99 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_99, 0, x_80); +x_100 = lean_mk_thunk(x_99); +x_101 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_101, 0, x_98); +lean_ctor_set(x_101, 1, x_100); +return x_101; } } } @@ -6610,40 +7309,43 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; x_4 = lean_ctor_get(x_2, 1); x_5 = lean_thunk_get_own(x_4); -lean_inc(x_5); x_6 = l_Std_Time_PlainDateTime_withWeekday(x_5, x_3); x_7 = lean_ctor_get(x_1, 0); x_8 = lean_int_neg(x_7); -x_9 = lean_ctor_get(x_5, 1); -lean_inc(x_9); -lean_dec(x_5); -x_10 = l_Std_Time_PlainTime_toSeconds(x_9); -x_11 = lean_int_add(x_10, x_8); -lean_dec(x_10); -x_12 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_9); -lean_dec(x_9); -x_15 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_8, x_15); +x_9 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_10 = lean_int_mul(x_8, x_9); lean_dec(x_8); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); -lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); -lean_dec(x_17); -x_19 = lean_ctor_get(x_6, 0); -lean_inc(x_19); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); +lean_inc(x_6); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_12 = l_Std_Time_Duration_ofNanoseconds(x_10); +lean_dec(x_10); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_9); lean_dec(x_13); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_dec(x_11); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_9); +lean_dec(x_17); +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_dec(x_12); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); lean_dec(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); x_25 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); lean_closure_set(x_25, 0, x_6); @@ -7045,48 +7747,55 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofDaysSinceUNIXEpoch(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; x_4 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_1); -lean_inc(x_2); -lean_inc(x_4); x_5 = lean_alloc_ctor(0, 2, 0); lean_ctor_set(x_5, 0, x_4); lean_ctor_set(x_5, 1, x_2); x_6 = lean_ctor_get(x_3, 0); x_7 = lean_int_neg(x_6); -x_8 = l_Std_Time_PlainTime_toSeconds(x_2); -x_9 = lean_int_add(x_8, x_7); -lean_dec(x_8); -x_10 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_2); -lean_dec(x_2); -x_13 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; -x_14 = lean_int_mul(x_7, x_13); +x_8 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_15 = lean_int_add(x_12, x_14); -lean_dec(x_14); +lean_inc(x_5); +x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_11 = l_Std_Time_Duration_ofNanoseconds(x_9); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_8); lean_dec(x_12); -x_16 = l_Std_Time_PlainTime_ofNanoseconds(x_15); -lean_dec(x_15); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_4); -x_18 = lean_int_add(x_17, x_11); +x_14 = lean_ctor_get(x_10, 1); +lean_inc(x_14); +lean_dec(x_10); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_11, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_8); +lean_dec(x_16); +x_18 = lean_ctor_get(x_11, 1); +lean_inc(x_18); lean_dec(x_11); -lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +x_19 = lean_int_add(x_17, x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_16); -x_21 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_20); -x_22 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_22, 0, x_5); -x_23 = lean_mk_thunk(x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_21); -lean_ctor_set(x_24, 1, x_23); -return x_24; +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_24 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_24, 0, x_5); +x_25 = lean_mk_thunk(x_24); +x_26 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_26, 0, x_23); +lean_ctor_set(x_26, 1, x_25); +return x_26; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_ofDaysSinceUNIXEpoch___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -7236,7 +7945,7 @@ x_6 = lean_int_neg(x_5); x_7 = lean_ctor_get(x_4, 1); x_8 = lean_int_neg(x_7); x_9 = lean_ctor_get(x_3, 0); -x_10 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; +x_10 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; x_11 = lean_int_mul(x_9, x_10); x_12 = lean_ctor_get(x_3, 1); x_13 = lean_int_add(x_11, x_12); @@ -7285,227 +7994,88 @@ return x_3; LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHAddDuration(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; uint8_t x_11; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; x_4 = lean_ctor_get(x_3, 0); -x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; +x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; x_6 = lean_int_mul(x_4, x_5); x_7 = lean_ctor_get(x_3, 1); x_8 = lean_int_add(x_6, x_7); lean_dec(x_6); x_9 = lean_ctor_get(x_2, 1); x_10 = lean_thunk_get_own(x_9); -x_11 = !lean_is_exclusive(x_10); -if (x_11 == 0) -{ -lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; uint8_t x_22; -x_12 = lean_ctor_get(x_10, 0); -x_13 = lean_ctor_get(x_10, 1); -x_14 = lean_ctor_get(x_13, 3); -lean_inc(x_14); -x_15 = lean_int_add(x_14, x_8); +x_11 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_10); +x_12 = l_Std_Time_Duration_ofNanoseconds(x_8); lean_dec(x_8); -lean_dec(x_14); -x_16 = lean_int_ediv(x_15, x_5); -x_17 = lean_int_emod(x_15, x_5); -lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_toNanoseconds(x_13); +x_13 = lean_ctor_get(x_11, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_5); lean_dec(x_13); -x_19 = lean_int_mul(x_16, x_5); -lean_dec(x_16); +x_15 = lean_ctor_get(x_11, 1); +lean_inc(x_15); +lean_dec(x_11); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_ctor_get(x_12, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_5); +lean_dec(x_17); +x_19 = lean_ctor_get(x_12, 1); +lean_inc(x_19); +lean_dec(x_12); x_20 = lean_int_add(x_18, x_19); lean_dec(x_19); lean_dec(x_18); -x_21 = l_Std_Time_PlainTime_ofNanoseconds(x_20); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = !lean_is_exclusive(x_21); -if (x_22 == 0) -{ -lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; -x_23 = lean_ctor_get(x_21, 3); -lean_dec(x_23); -lean_ctor_set(x_21, 3, x_17); -lean_inc(x_21); -lean_inc(x_12); -lean_ctor_set(x_10, 1, x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = lean_ctor_get(x_1, 0); x_25 = lean_int_neg(x_24); -x_26 = l_Std_Time_PlainTime_toSeconds(x_21); -x_27 = lean_int_add(x_26, x_25); -lean_dec(x_26); -x_28 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_29 = lean_int_ediv(x_27, x_28); -lean_dec(x_27); -x_30 = l_Std_Time_PlainTime_toNanoseconds(x_21); -lean_dec(x_21); -x_31 = lean_int_mul(x_25, x_5); +x_26 = lean_int_mul(x_25, x_5); lean_dec(x_25); +lean_inc(x_23); +x_27 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); +x_28 = l_Std_Time_Duration_ofNanoseconds(x_26); +lean_dec(x_26); +x_29 = lean_ctor_get(x_27, 0); +lean_inc(x_29); +x_30 = lean_int_mul(x_29, x_5); +lean_dec(x_29); +x_31 = lean_ctor_get(x_27, 1); +lean_inc(x_31); +lean_dec(x_27); x_32 = lean_int_add(x_30, x_31); lean_dec(x_31); lean_dec(x_30); -x_33 = l_Std_Time_PlainTime_ofNanoseconds(x_32); -lean_dec(x_32); -x_34 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_35 = lean_int_add(x_34, x_29); -lean_dec(x_29); -lean_dec(x_34); -x_36 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_35); +x_33 = lean_ctor_get(x_28, 0); +lean_inc(x_33); +x_34 = lean_int_mul(x_33, x_5); +lean_dec(x_33); +x_35 = lean_ctor_get(x_28, 1); +lean_inc(x_35); +lean_dec(x_28); +x_36 = lean_int_add(x_34, x_35); lean_dec(x_35); -x_37 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_37, 0, x_36); -lean_ctor_set(x_37, 1, x_33); -x_38 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_37); -x_39 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_39, 0, x_10); -x_40 = lean_mk_thunk(x_39); -x_41 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_41, 0, x_38); -lean_ctor_set(x_41, 1, x_40); -return x_41; -} -else -{ -lean_object* x_42; lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; -x_42 = lean_ctor_get(x_21, 0); -x_43 = lean_ctor_get(x_21, 1); -x_44 = lean_ctor_get(x_21, 2); -lean_inc(x_44); -lean_inc(x_43); -lean_inc(x_42); -lean_dec(x_21); -x_45 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_45, 0, x_42); -lean_ctor_set(x_45, 1, x_43); -lean_ctor_set(x_45, 2, x_44); -lean_ctor_set(x_45, 3, x_17); -lean_inc(x_45); -lean_inc(x_12); -lean_ctor_set(x_10, 1, x_45); -x_46 = lean_ctor_get(x_1, 0); -x_47 = lean_int_neg(x_46); -x_48 = l_Std_Time_PlainTime_toSeconds(x_45); -x_49 = lean_int_add(x_48, x_47); -lean_dec(x_48); -x_50 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_51 = lean_int_ediv(x_49, x_50); -lean_dec(x_49); -x_52 = l_Std_Time_PlainTime_toNanoseconds(x_45); -lean_dec(x_45); -x_53 = lean_int_mul(x_47, x_5); -lean_dec(x_47); -x_54 = lean_int_add(x_52, x_53); -lean_dec(x_53); -lean_dec(x_52); -x_55 = l_Std_Time_PlainTime_ofNanoseconds(x_54); -lean_dec(x_54); -x_56 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_12); -x_57 = lean_int_add(x_56, x_51); -lean_dec(x_51); -lean_dec(x_56); -x_58 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_57); -lean_dec(x_57); -x_59 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_59, 0, x_58); -lean_ctor_set(x_59, 1, x_55); -x_60 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_59); -x_61 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_61, 0, x_10); -x_62 = lean_mk_thunk(x_61); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_60); -lean_ctor_set(x_63, 1, x_62); -return x_63; -} -} -else -{ -lean_object* x_64; lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; -x_64 = lean_ctor_get(x_10, 0); -x_65 = lean_ctor_get(x_10, 1); -lean_inc(x_65); -lean_inc(x_64); -lean_dec(x_10); -x_66 = lean_ctor_get(x_65, 3); -lean_inc(x_66); -x_67 = lean_int_add(x_66, x_8); -lean_dec(x_8); -lean_dec(x_66); -x_68 = lean_int_ediv(x_67, x_5); -x_69 = lean_int_emod(x_67, x_5); -lean_dec(x_67); -x_70 = l_Std_Time_PlainTime_toNanoseconds(x_65); -lean_dec(x_65); -x_71 = lean_int_mul(x_68, x_5); -lean_dec(x_68); -x_72 = lean_int_add(x_70, x_71); -lean_dec(x_71); -lean_dec(x_70); -x_73 = l_Std_Time_PlainTime_ofNanoseconds(x_72); -lean_dec(x_72); -x_74 = lean_ctor_get(x_73, 0); -lean_inc(x_74); -x_75 = lean_ctor_get(x_73, 1); -lean_inc(x_75); -x_76 = lean_ctor_get(x_73, 2); -lean_inc(x_76); -if (lean_is_exclusive(x_73)) { - lean_ctor_release(x_73, 0); - lean_ctor_release(x_73, 1); - lean_ctor_release(x_73, 2); - lean_ctor_release(x_73, 3); - x_77 = x_73; -} else { - lean_dec_ref(x_73); - x_77 = lean_box(0); -} -if (lean_is_scalar(x_77)) { - x_78 = lean_alloc_ctor(0, 4, 0); -} else { - x_78 = x_77; -} -lean_ctor_set(x_78, 0, x_74); -lean_ctor_set(x_78, 1, x_75); -lean_ctor_set(x_78, 2, x_76); -lean_ctor_set(x_78, 3, x_69); -lean_inc(x_78); -lean_inc(x_64); -x_79 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_79, 0, x_64); -lean_ctor_set(x_79, 1, x_78); -x_80 = lean_ctor_get(x_1, 0); -x_81 = lean_int_neg(x_80); -x_82 = l_Std_Time_PlainTime_toSeconds(x_78); -x_83 = lean_int_add(x_82, x_81); -lean_dec(x_82); -x_84 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_85 = lean_int_ediv(x_83, x_84); -lean_dec(x_83); -x_86 = l_Std_Time_PlainTime_toNanoseconds(x_78); -lean_dec(x_78); -x_87 = lean_int_mul(x_81, x_5); -lean_dec(x_81); -x_88 = lean_int_add(x_86, x_87); -lean_dec(x_87); -lean_dec(x_86); -x_89 = l_Std_Time_PlainTime_ofNanoseconds(x_88); -lean_dec(x_88); -x_90 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_64); -x_91 = lean_int_add(x_90, x_85); -lean_dec(x_85); -lean_dec(x_90); -x_92 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_91); -lean_dec(x_91); -x_93 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_93, 0, x_92); -lean_ctor_set(x_93, 1, x_89); -x_94 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_93); -x_95 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_95, 0, x_79); -x_96 = lean_mk_thunk(x_95); -x_97 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_97, 0, x_94); -lean_ctor_set(x_97, 1, x_96); -return x_97; -} +lean_dec(x_34); +x_37 = lean_int_add(x_32, x_36); +lean_dec(x_36); +lean_dec(x_32); +x_38 = l_Std_Time_Duration_ofNanoseconds(x_37); +lean_dec(x_37); +x_39 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_38); +lean_dec(x_38); +x_40 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_39); +x_41 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_41, 0, x_23); +x_42 = lean_mk_thunk(x_41); +x_43 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_43, 0, x_40); +lean_ctor_set(x_43, 1, x_42); +return x_43; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHAddDuration___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -7522,9 +8092,9 @@ return x_4; LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHSubDuration__1(lean_object* x_1, lean_object* x_2, lean_object* x_3) { _start: { -lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; uint8_t x_12; +lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; lean_object* x_43; lean_object* x_44; x_4 = lean_ctor_get(x_3, 0); -x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2; +x_5 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; x_6 = lean_int_mul(x_4, x_5); x_7 = lean_ctor_get(x_3, 1); x_8 = lean_int_add(x_6, x_7); @@ -7533,218 +8103,79 @@ x_9 = lean_ctor_get(x_2, 1); x_10 = lean_thunk_get_own(x_9); x_11 = lean_int_neg(x_8); lean_dec(x_8); -x_12 = !lean_is_exclusive(x_10); -if (x_12 == 0) -{ -lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; uint8_t x_23; -x_13 = lean_ctor_get(x_10, 0); -x_14 = lean_ctor_get(x_10, 1); -x_15 = lean_ctor_get(x_14, 3); -lean_inc(x_15); -x_16 = lean_int_add(x_15, x_11); +x_12 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_10); +x_13 = l_Std_Time_Duration_ofNanoseconds(x_11); lean_dec(x_11); -lean_dec(x_15); -x_17 = lean_int_ediv(x_16, x_5); -x_18 = lean_int_emod(x_16, x_5); -lean_dec(x_16); -x_19 = l_Std_Time_PlainTime_toNanoseconds(x_14); +x_14 = lean_ctor_get(x_12, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_5); lean_dec(x_14); -x_20 = lean_int_mul(x_17, x_5); -lean_dec(x_17); +x_16 = lean_ctor_get(x_12, 1); +lean_inc(x_16); +lean_dec(x_12); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_ctor_get(x_13, 0); +lean_inc(x_18); +x_19 = lean_int_mul(x_18, x_5); +lean_dec(x_18); +x_20 = lean_ctor_get(x_13, 1); +lean_inc(x_20); +lean_dec(x_13); x_21 = lean_int_add(x_19, x_20); lean_dec(x_20); lean_dec(x_19); -x_22 = l_Std_Time_PlainTime_ofNanoseconds(x_21); +x_22 = lean_int_add(x_17, x_21); lean_dec(x_21); -x_23 = !lean_is_exclusive(x_22); -if (x_23 == 0) -{ -lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_object* x_29; lean_object* x_30; lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_38; lean_object* x_39; lean_object* x_40; lean_object* x_41; lean_object* x_42; -x_24 = lean_ctor_get(x_22, 3); -lean_dec(x_24); -lean_ctor_set(x_22, 3, x_18); -lean_inc(x_22); -lean_inc(x_13); -lean_ctor_set(x_10, 1, x_22); +lean_dec(x_17); +x_23 = l_Std_Time_Duration_ofNanoseconds(x_22); +lean_dec(x_22); +x_24 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_23); +lean_dec(x_23); x_25 = lean_ctor_get(x_1, 0); x_26 = lean_int_neg(x_25); -x_27 = l_Std_Time_PlainTime_toSeconds(x_22); -x_28 = lean_int_add(x_27, x_26); -lean_dec(x_27); -x_29 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_30 = lean_int_ediv(x_28, x_29); -lean_dec(x_28); -x_31 = l_Std_Time_PlainTime_toNanoseconds(x_22); -lean_dec(x_22); -x_32 = lean_int_mul(x_26, x_5); +x_27 = lean_int_mul(x_26, x_5); lean_dec(x_26); +lean_inc(x_24); +x_28 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_24); +x_29 = l_Std_Time_Duration_ofNanoseconds(x_27); +lean_dec(x_27); +x_30 = lean_ctor_get(x_28, 0); +lean_inc(x_30); +x_31 = lean_int_mul(x_30, x_5); +lean_dec(x_30); +x_32 = lean_ctor_get(x_28, 1); +lean_inc(x_32); +lean_dec(x_28); x_33 = lean_int_add(x_31, x_32); lean_dec(x_32); lean_dec(x_31); -x_34 = l_Std_Time_PlainTime_ofNanoseconds(x_33); -lean_dec(x_33); -x_35 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_36 = lean_int_add(x_35, x_30); -lean_dec(x_30); -lean_dec(x_35); -x_37 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_36); +x_34 = lean_ctor_get(x_29, 0); +lean_inc(x_34); +x_35 = lean_int_mul(x_34, x_5); +lean_dec(x_34); +x_36 = lean_ctor_get(x_29, 1); +lean_inc(x_36); +lean_dec(x_29); +x_37 = lean_int_add(x_35, x_36); lean_dec(x_36); -x_38 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_38, 0, x_37); -lean_ctor_set(x_38, 1, x_34); -x_39 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_38); -x_40 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_40, 0, x_10); -x_41 = lean_mk_thunk(x_40); -x_42 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_42, 0, x_39); -lean_ctor_set(x_42, 1, x_41); -return x_42; -} -else -{ -lean_object* x_43; lean_object* x_44; lean_object* x_45; lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; -x_43 = lean_ctor_get(x_22, 0); -x_44 = lean_ctor_get(x_22, 1); -x_45 = lean_ctor_get(x_22, 2); -lean_inc(x_45); -lean_inc(x_44); -lean_inc(x_43); -lean_dec(x_22); -x_46 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_46, 0, x_43); -lean_ctor_set(x_46, 1, x_44); -lean_ctor_set(x_46, 2, x_45); -lean_ctor_set(x_46, 3, x_18); -lean_inc(x_46); -lean_inc(x_13); -lean_ctor_set(x_10, 1, x_46); -x_47 = lean_ctor_get(x_1, 0); -x_48 = lean_int_neg(x_47); -x_49 = l_Std_Time_PlainTime_toSeconds(x_46); -x_50 = lean_int_add(x_49, x_48); -lean_dec(x_49); -x_51 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_52 = lean_int_ediv(x_50, x_51); -lean_dec(x_50); -x_53 = l_Std_Time_PlainTime_toNanoseconds(x_46); -lean_dec(x_46); -x_54 = lean_int_mul(x_48, x_5); -lean_dec(x_48); -x_55 = lean_int_add(x_53, x_54); -lean_dec(x_54); -lean_dec(x_53); -x_56 = l_Std_Time_PlainTime_ofNanoseconds(x_55); -lean_dec(x_55); -x_57 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_58 = lean_int_add(x_57, x_52); -lean_dec(x_52); -lean_dec(x_57); -x_59 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_58); -lean_dec(x_58); -x_60 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_60, 0, x_59); -lean_ctor_set(x_60, 1, x_56); -x_61 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_60); -x_62 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_62, 0, x_10); -x_63 = lean_mk_thunk(x_62); -x_64 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_64, 0, x_61); -lean_ctor_set(x_64, 1, x_63); -return x_64; -} -} -else -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; lean_object* x_68; lean_object* x_69; lean_object* x_70; lean_object* x_71; lean_object* x_72; lean_object* x_73; lean_object* x_74; lean_object* x_75; lean_object* x_76; lean_object* x_77; lean_object* x_78; lean_object* x_79; lean_object* x_80; lean_object* x_81; lean_object* x_82; lean_object* x_83; lean_object* x_84; lean_object* x_85; lean_object* x_86; lean_object* x_87; lean_object* x_88; lean_object* x_89; lean_object* x_90; lean_object* x_91; lean_object* x_92; lean_object* x_93; lean_object* x_94; lean_object* x_95; lean_object* x_96; lean_object* x_97; lean_object* x_98; -x_65 = lean_ctor_get(x_10, 0); -x_66 = lean_ctor_get(x_10, 1); -lean_inc(x_66); -lean_inc(x_65); -lean_dec(x_10); -x_67 = lean_ctor_get(x_66, 3); -lean_inc(x_67); -x_68 = lean_int_add(x_67, x_11); -lean_dec(x_11); -lean_dec(x_67); -x_69 = lean_int_ediv(x_68, x_5); -x_70 = lean_int_emod(x_68, x_5); -lean_dec(x_68); -x_71 = l_Std_Time_PlainTime_toNanoseconds(x_66); -lean_dec(x_66); -x_72 = lean_int_mul(x_69, x_5); -lean_dec(x_69); -x_73 = lean_int_add(x_71, x_72); -lean_dec(x_72); -lean_dec(x_71); -x_74 = l_Std_Time_PlainTime_ofNanoseconds(x_73); -lean_dec(x_73); -x_75 = lean_ctor_get(x_74, 0); -lean_inc(x_75); -x_76 = lean_ctor_get(x_74, 1); -lean_inc(x_76); -x_77 = lean_ctor_get(x_74, 2); -lean_inc(x_77); -if (lean_is_exclusive(x_74)) { - lean_ctor_release(x_74, 0); - lean_ctor_release(x_74, 1); - lean_ctor_release(x_74, 2); - lean_ctor_release(x_74, 3); - x_78 = x_74; -} else { - lean_dec_ref(x_74); - x_78 = lean_box(0); -} -if (lean_is_scalar(x_78)) { - x_79 = lean_alloc_ctor(0, 4, 0); -} else { - x_79 = x_78; -} -lean_ctor_set(x_79, 0, x_75); -lean_ctor_set(x_79, 1, x_76); -lean_ctor_set(x_79, 2, x_77); -lean_ctor_set(x_79, 3, x_70); -lean_inc(x_79); -lean_inc(x_65); -x_80 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_80, 0, x_65); -lean_ctor_set(x_80, 1, x_79); -x_81 = lean_ctor_get(x_1, 0); -x_82 = lean_int_neg(x_81); -x_83 = l_Std_Time_PlainTime_toSeconds(x_79); -x_84 = lean_int_add(x_83, x_82); -lean_dec(x_83); -x_85 = l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1; -x_86 = lean_int_ediv(x_84, x_85); -lean_dec(x_84); -x_87 = l_Std_Time_PlainTime_toNanoseconds(x_79); -lean_dec(x_79); -x_88 = lean_int_mul(x_82, x_5); -lean_dec(x_82); -x_89 = lean_int_add(x_87, x_88); -lean_dec(x_88); -lean_dec(x_87); -x_90 = l_Std_Time_PlainTime_ofNanoseconds(x_89); -lean_dec(x_89); -x_91 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_65); -x_92 = lean_int_add(x_91, x_86); -lean_dec(x_86); -lean_dec(x_91); -x_93 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_92); -lean_dec(x_92); -x_94 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_94, 0, x_93); -lean_ctor_set(x_94, 1, x_90); -x_95 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_94); -x_96 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); -lean_closure_set(x_96, 0, x_80); -x_97 = lean_mk_thunk(x_96); -x_98 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_98, 0, x_95); -lean_ctor_set(x_98, 1, x_97); -return x_98; -} +lean_dec(x_35); +x_38 = lean_int_add(x_33, x_37); +lean_dec(x_37); +lean_dec(x_33); +x_39 = l_Std_Time_Duration_ofNanoseconds(x_38); +lean_dec(x_38); +x_40 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_39); +lean_dec(x_39); +x_41 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_40); +x_42 = lean_alloc_closure((void*)(l_Std_Time_DateTime_ofPlainDateTime___lambda__1___boxed), 2, 1); +lean_closure_set(x_42, 0, x_24); +x_43 = lean_mk_thunk(x_42); +x_44 = lean_alloc_ctor(0, 2, 0); +lean_ctor_set(x_44, 0, x_41); +lean_ctor_set(x_44, 1, x_43); +return x_44; } } LEAN_EXPORT lean_object* l_Std_Time_DateTime_instHSubDuration__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3) { @@ -7787,8 +8218,6 @@ l_Std_Time_instInhabitedDateTime___closed__3 = _init_l_Std_Time_instInhabitedDat lean_mark_persistent(l_Std_Time_instInhabitedDateTime___closed__3); l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1 = _init_l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1(); lean_mark_persistent(l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__1); -l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2 = _init_l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2(); -lean_mark_persistent(l_Std_Time_DateTime_ofTimestamp___lambda__1___closed__2); l_Std_Time_DateTime_addHours___closed__1 = _init_l_Std_Time_DateTime_addHours___closed__1(); lean_mark_persistent(l_Std_Time_DateTime_addHours___closed__1); l_Std_Time_DateTime_addMinutes___closed__1 = _init_l_Std_Time_DateTime_addMinutes___closed__1(); @@ -7807,8 +8236,6 @@ l_Std_Time_DateTime_withDaysClip___closed__3 = _init_l_Std_Time_DateTime_withDay lean_mark_persistent(l_Std_Time_DateTime_withDaysClip___closed__3); l_Std_Time_DateTime_withMilliseconds___closed__1 = _init_l_Std_Time_DateTime_withMilliseconds___closed__1(); lean_mark_persistent(l_Std_Time_DateTime_withMilliseconds___closed__1); -l_Std_Time_DateTime_withMilliseconds___closed__2 = _init_l_Std_Time_DateTime_withMilliseconds___closed__2(); -lean_mark_persistent(l_Std_Time_DateTime_withMilliseconds___closed__2); return lean_io_result_mk_ok(lean_box(0)); } #ifdef __cplusplus diff --git a/stage0/stdlib/Std/Time/Zoned/ZonedDateTime.c b/stage0/stdlib/Std/Time/Zoned/ZonedDateTime.c index 4c9f61dba1..d333c9dcb4 100644 --- a/stage0/stdlib/Std/Time/Zoned/ZonedDateTime.c +++ b/stage0/stdlib/Std/Time/Zoned/ZonedDateTime.c @@ -28,7 +28,6 @@ static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDateTime___lambda__1___boxed(lean_object*, lean_object*); lean_object* l_Std_Time_TimeZone_LocalTimeType_getTimeZone(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubDuration(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toNanoseconds(lean_object*); lean_object* l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__11; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds(lean_object*, lean_object*); @@ -70,7 +69,7 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_withMilliseconds___boxed(lean_ static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__14; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofDaysSinceUNIXEpoch(lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHAddOffset__4; -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_alignedWeekOfMonth(lean_object*); static lean_object* l_Std_Time_ZonedDateTime_dayOfYear___closed__3; static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__18; @@ -111,7 +110,6 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addSeconds(lean_object*, lean_ static lean_object* l_Std_Time_ZonedDateTime_instHAddOffset__2___closed__1; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHAddOffset__6; lean_object* l_Std_Time_ValidDate_dayOfYear(uint8_t, lean_object*); -lean_object* l_Std_Time_PlainTime_ofNanoseconds(lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___closed__4; static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__7; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_year(lean_object*); @@ -147,14 +145,12 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_era___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_toPlainDateTime___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_instInhabitedZonedDateTime; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_hour___boxed(lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHAddOffset__2; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubDuration__1(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subHours___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_ZonedDateTime_instHSubOffset___closed__1; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subYearsClip___boxed(lean_object*, lean_object*); -lean_object* l_Std_Time_PlainTime_toMilliseconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMonthsRollOver___boxed(lean_object*, lean_object*); LEAN_EXPORT uint8_t l_Std_Time_ZonedDateTime_weekday(lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__5; @@ -180,7 +176,6 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addYearsRollOver___boxed(lean_ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubDuration___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subYearsRollOver(lean_object*, lean_object*); lean_object* l_Std_Time_TimeZone_Transition_timezoneAt(lean_object*, lean_object*); -static lean_object* l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMonthsClip(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_convertZoneRules(lean_object*, lean_object*); lean_object* lean_nat_abs(lean_object*); @@ -198,14 +193,12 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_day___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_dayOfYear___boxed(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHAddDuration___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_ZonedDateTime_instHSubOffset__5___closed__1; -lean_object* l_Std_Time_PlainTime_addMilliseconds(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubDuration__1___boxed(lean_object*, lean_object*); uint8_t l_Std_Time_Year_Offset_era(lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__39; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addYearsRollOver(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_ofPlainDateTimeWithZone___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addDays___boxed(lean_object*, lean_object*); -static lean_object* l_Std_Time_ZonedDateTime_addMilliseconds___closed__1; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_weekOfYear___boxed(lean_object*); static lean_object* l_Std_Time_ZonedDateTime_ofPlainDateTime___closed__1; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___boxed(lean_object*, lean_object*); @@ -219,7 +212,7 @@ lean_object* lean_nat_sub(lean_object*, lean_object*); lean_object* l_Std_Time_PlainDate_addMonthsClip(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addYearsClip___boxed(lean_object*, lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMinutes(lean_object*, lean_object*); -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*, lean_object*); +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1(lean_object*, lean_object*, lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__2; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMilliseconds(lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___closed__9; @@ -233,10 +226,8 @@ LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMonthsRollOver(lean_object* LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subDays___boxed(lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__38; LEAN_EXPORT lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___boxed(lean_object*); -lean_object* l_Std_Time_PlainTime_toSeconds(lean_object*); LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubOffset__5; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_instHSubOffset__1; -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed(lean_object*, lean_object*, lean_object*, lean_object*); lean_object* lean_int_add(lean_object*, lean_object*); static lean_object* l_Std_Time_instInhabitedZonedDateTime___lambda__1___closed__26; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_day(lean_object*); @@ -811,15 +802,6 @@ static lean_object* _init_l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___clo _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} -static lean_object* _init_l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2() { -_start: -{ -lean_object* x_1; lean_object* x_2; x_1 = lean_unsigned_to_nat(1000000000u); x_2 = lean_nat_to_int(x_1); return x_2; @@ -831,35 +813,38 @@ _start: lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; x_4 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); x_5 = lean_ctor_get(x_2, 0); -x_6 = lean_ctor_get(x_4, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_5); +x_6 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_7 = lean_int_mul(x_5, x_6); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_4); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -x_9 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); -lean_dec(x_6); -x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_13 = lean_int_mul(x_5, x_12); -x_14 = lean_int_add(x_11, x_13); -lean_dec(x_13); -lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_4, 0); -lean_inc(x_16); -lean_dec(x_4); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_10); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_6); lean_dec(x_10); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); +lean_dec(x_8); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_6); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -935,34 +920,37 @@ _start: { lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_6 = lean_ctor_get(x_5, 1); -lean_inc(x_6); -x_7 = l_Std_Time_PlainTime_toSeconds(x_6); -x_8 = lean_int_add(x_7, x_2); -lean_dec(x_7); -x_9 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_10 = lean_int_ediv(x_8, x_9); -lean_dec(x_8); -x_11 = l_Std_Time_PlainTime_toNanoseconds(x_6); +x_6 = lean_int_mul(x_2, x_3); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_6); lean_dec(x_6); -x_12 = lean_int_mul(x_2, x_3); -x_13 = lean_int_add(x_11, x_12); -lean_dec(x_12); +x_9 = lean_ctor_get(x_7, 0); +lean_inc(x_9); +x_10 = lean_int_mul(x_9, x_3); +lean_dec(x_9); +x_11 = lean_ctor_get(x_7, 1); +lean_inc(x_11); +lean_dec(x_7); +x_12 = lean_int_add(x_10, x_11); lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_ofNanoseconds(x_13); -lean_dec(x_13); -x_15 = lean_ctor_get(x_5, 0); -lean_inc(x_15); -lean_dec(x_5); -x_16 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_15); -x_17 = lean_int_add(x_16, x_10); lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 0); +lean_inc(x_13); +x_14 = lean_int_mul(x_13, x_3); +lean_dec(x_13); +x_15 = lean_ctor_get(x_8, 1); +lean_inc(x_15); +lean_dec(x_8); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); +lean_dec(x_14); +x_17 = lean_int_add(x_12, x_16); lean_dec(x_16); -x_18 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_17); +lean_dec(x_12); +x_18 = l_Std_Time_Duration_ofNanoseconds(x_17); lean_dec(x_17); -x_19 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_19, 0, x_18); -lean_ctor_set(x_19, 1, x_14); +x_19 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_18); +lean_dec(x_18); return x_19; } } @@ -989,7 +977,7 @@ x_6 = lean_ctor_get(x_2, 1); lean_inc(x_6); x_7 = lean_unsigned_to_nat(0u); x_8 = l_Array_findFinIdx_x3f_loop___rarg(x_5, x_6, x_7); -x_9 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_9 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_10 = lean_int_mul(x_4, x_9); x_11 = lean_ctor_get(x_3, 1); lean_inc(x_11); @@ -1250,7 +1238,7 @@ x_14 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_14, 0, x_13); x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_findFinIdx_x3f_loop___rarg(x_14, x_10, x_15); -x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_18 = lean_int_mul(x_13, x_17); x_19 = lean_ctor_get(x_12, 1); lean_inc(x_19); @@ -3710,39 +3698,43 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { _start: { -lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_7 = lean_ctor_get(x_2, 0); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -x_9 = l_Std_Time_PlainTime_toSeconds(x_8); -x_10 = lean_int_add(x_9, x_7); -lean_dec(x_9); -x_11 = lean_int_ediv(x_10, x_3); +lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; +x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); +x_6 = lean_ctor_get(x_2, 0); +x_7 = lean_int_mul(x_6, x_3); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_5); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); +lean_dec(x_7); +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = lean_int_mul(x_10, x_3); lean_dec(x_10); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_8); +x_12 = lean_ctor_get(x_8, 1); +lean_inc(x_12); lean_dec(x_8); -x_13 = lean_int_mul(x_7, x_4); -x_14 = lean_int_add(x_12, x_13); -lean_dec(x_13); +x_13 = lean_int_add(x_11, x_12); lean_dec(x_12); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_6, 0); -lean_inc(x_16); -lean_dec(x_6); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_11); lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_3); +lean_dec(x_14); +x_16 = lean_ctor_get(x_9, 1); +lean_inc(x_16); +lean_dec(x_9); +x_17 = lean_int_add(x_15, x_16); +lean_dec(x_16); +lean_dec(x_15); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); return x_20; } } @@ -3750,7 +3742,7 @@ static lean_object* _init_l_Std_Time_ZonedDateTime_addHours___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(3600u); +x_1 = lean_cstr_to_nat("3600000000000"); x_2 = lean_nat_to_int(x_1); return x_2; } @@ -3758,6 +3750,129 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours(lean_object* x_1, lean_object* x_2) { _start: { +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_29; lean_object* x_30; +x_3 = lean_ctor_get(x_1, 1); +lean_inc(x_3); +x_4 = lean_ctor_get(x_1, 2); +lean_inc(x_4); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + lean_ctor_release(x_1, 1); + lean_ctor_release(x_1, 2); + lean_ctor_release(x_1, 3); + x_5 = x_1; +} else { + lean_dec_ref(x_1); + x_5 = lean_box(0); +} +x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); +lean_dec(x_3); +x_7 = l_Std_Time_ZonedDateTime_addHours___closed__1; +x_8 = lean_int_mul(x_2, x_7); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); +lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); +lean_inc(x_18); +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_29 = lean_ctor_get(x_4, 1); +lean_inc(x_29); +lean_inc(x_23); +x_30 = l_Std_Time_TimeZone_Transition_timezoneAt(x_29, x_23); +lean_dec(x_29); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_30); +x_31 = lean_ctor_get(x_4, 0); +lean_inc(x_31); +x_32 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_31); +lean_dec(x_31); +x_24 = x_32; +goto block_28; +} +else +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_30, 0); +lean_inc(x_33); +lean_dec(x_30); +x_24 = x_33; +goto block_28; +} +block_28: +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_24); +lean_inc(x_23); +x_25 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); +lean_closure_set(x_25, 0, x_23); +lean_closure_set(x_25, 1, x_24); +lean_closure_set(x_25, 2, x_12); +x_26 = lean_mk_thunk(x_25); +if (lean_is_scalar(x_5)) { + x_27 = lean_alloc_ctor(0, 4, 0); +} else { + x_27 = x_5; +} +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_23); +lean_ctor_set(x_27, 2, x_4); +lean_ctor_set(x_27, 3, x_24); +return x_27; +} +} +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { +_start: +{ +lean_object* x_5; +x_5 = l_Std_Time_ZonedDateTime_addHours___lambda__1(x_1, x_2, x_3, x_4); +lean_dec(x_4); +lean_dec(x_3); +lean_dec(x_2); +lean_dec(x_1); +return x_5; +} +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_Time_ZonedDateTime_addHours(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subHours(lean_object* x_1, lean_object* x_2) { +_start: +{ lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_30; lean_object* x_31; x_3 = lean_ctor_get(x_1, 1); lean_inc(x_3); @@ -3775,38 +3890,41 @@ if (lean_is_exclusive(x_1)) { } x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = l_Std_Time_ZonedDateTime_addHours___closed__1; -x_10 = lean_int_mul(x_2, x_9); -x_11 = lean_int_add(x_8, x_10); -lean_dec(x_8); -x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_7); +x_7 = lean_int_neg(x_2); +x_8 = l_Std_Time_ZonedDateTime_addHours___closed__1; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_15 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_10, x_15); +x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_11 = l_Std_Time_Duration_ofNanoseconds(x_9); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); lean_dec(x_10); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); +x_17 = lean_ctor_get(x_11, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); -x_19 = lean_ctor_get(x_6, 0); +x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); -lean_dec(x_6); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); -lean_dec(x_13); +lean_dec(x_11); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); lean_dec(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); x_30 = lean_ctor_get(x_4, 1); lean_inc(x_30); @@ -3838,11 +3956,10 @@ block_29: lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_inc(x_25); lean_inc(x_24); -x_26 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); +x_26 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); lean_closure_set(x_26, 0, x_24); lean_closure_set(x_26, 1, x_25); -lean_closure_set(x_26, 2, x_12); -lean_closure_set(x_26, 3, x_15); +lean_closure_set(x_26, 2, x_13); x_27 = lean_mk_thunk(x_26); if (lean_is_scalar(x_5)) { x_28 = lean_alloc_ctor(0, 4, 0); @@ -3857,132 +3974,6 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4, lean_object* x_5) { -_start: -{ -lean_object* x_6; -x_6 = l_Std_Time_ZonedDateTime_addHours___lambda__1(x_1, x_2, x_3, x_4, x_5); -lean_dec(x_5); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_6; -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addHours___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Std_Time_ZonedDateTime_addHours(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subHours(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_31; lean_object* x_32; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = lean_ctor_get(x_1, 2); -lean_inc(x_4); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - lean_ctor_release(x_1, 2); - lean_ctor_release(x_1, 3); - x_5 = x_1; -} else { - lean_dec_ref(x_1); - x_5 = lean_box(0); -} -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); -lean_dec(x_3); -x_7 = lean_int_neg(x_2); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -x_9 = l_Std_Time_PlainTime_toSeconds(x_8); -x_10 = l_Std_Time_ZonedDateTime_addHours___closed__1; -x_11 = lean_int_mul(x_7, x_10); -lean_dec(x_7); -x_12 = lean_int_add(x_9, x_11); -lean_dec(x_9); -x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_14 = lean_int_ediv(x_12, x_13); -lean_dec(x_12); -x_15 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_16 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_17 = lean_int_mul(x_11, x_16); -lean_dec(x_11); -x_18 = lean_int_add(x_15, x_17); -lean_dec(x_17); -lean_dec(x_15); -x_19 = l_Std_Time_PlainTime_ofNanoseconds(x_18); -lean_dec(x_18); -x_20 = lean_ctor_get(x_6, 0); -lean_inc(x_20); -lean_dec(x_6); -x_21 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_20); -x_22 = lean_int_add(x_21, x_14); -lean_dec(x_14); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_22); -lean_dec(x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_19); -x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_24); -x_31 = lean_ctor_get(x_4, 1); -lean_inc(x_31); -lean_inc(x_25); -x_32 = l_Std_Time_TimeZone_Transition_timezoneAt(x_31, x_25); -lean_dec(x_31); -if (lean_obj_tag(x_32) == 0) -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_32); -x_33 = lean_ctor_get(x_4, 0); -lean_inc(x_33); -x_34 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_33); -lean_dec(x_33); -x_26 = x_34; -goto block_30; -} -else -{ -lean_object* x_35; -x_35 = lean_ctor_get(x_32, 0); -lean_inc(x_35); -lean_dec(x_32); -x_26 = x_35; -goto block_30; -} -block_30: -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_26); -lean_inc(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); -lean_closure_set(x_27, 0, x_25); -lean_closure_set(x_27, 1, x_26); -lean_closure_set(x_27, 2, x_13); -lean_closure_set(x_27, 3, x_16); -x_28 = lean_mk_thunk(x_27); -if (lean_is_scalar(x_5)) { - x_29 = lean_alloc_ctor(0, 4, 0); -} else { - x_29 = x_5; -} -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_25); -lean_ctor_set(x_29, 2, x_4); -lean_ctor_set(x_29, 3, x_26); -return x_29; -} -} -} LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subHours___boxed(lean_object* x_1, lean_object* x_2) { _start: { @@ -3996,7 +3987,7 @@ static lean_object* _init_l_Std_Time_ZonedDateTime_addMinutes___closed__1() { _start: { lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(60u); +x_1 = lean_cstr_to_nat("60000000000"); x_2 = lean_nat_to_int(x_1); return x_2; } @@ -4004,6 +3995,117 @@ return x_2; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMinutes(lean_object* x_1, lean_object* x_2) { _start: { +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_29; lean_object* x_30; +x_3 = lean_ctor_get(x_1, 1); +lean_inc(x_3); +x_4 = lean_ctor_get(x_1, 2); +lean_inc(x_4); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + lean_ctor_release(x_1, 1); + lean_ctor_release(x_1, 2); + lean_ctor_release(x_1, 3); + x_5 = x_1; +} else { + lean_dec_ref(x_1); + x_5 = lean_box(0); +} +x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); +lean_dec(x_3); +x_7 = l_Std_Time_ZonedDateTime_addMinutes___closed__1; +x_8 = lean_int_mul(x_2, x_7); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); +lean_dec(x_8); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); +lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); +lean_inc(x_18); +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_29 = lean_ctor_get(x_4, 1); +lean_inc(x_29); +lean_inc(x_23); +x_30 = l_Std_Time_TimeZone_Transition_timezoneAt(x_29, x_23); +lean_dec(x_29); +if (lean_obj_tag(x_30) == 0) +{ +lean_object* x_31; lean_object* x_32; +lean_dec(x_30); +x_31 = lean_ctor_get(x_4, 0); +lean_inc(x_31); +x_32 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_31); +lean_dec(x_31); +x_24 = x_32; +goto block_28; +} +else +{ +lean_object* x_33; +x_33 = lean_ctor_get(x_30, 0); +lean_inc(x_33); +lean_dec(x_30); +x_24 = x_33; +goto block_28; +} +block_28: +{ +lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_24); +lean_inc(x_23); +x_25 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); +lean_closure_set(x_25, 0, x_23); +lean_closure_set(x_25, 1, x_24); +lean_closure_set(x_25, 2, x_12); +x_26 = lean_mk_thunk(x_25); +if (lean_is_scalar(x_5)) { + x_27 = lean_alloc_ctor(0, 4, 0); +} else { + x_27 = x_5; +} +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_23); +lean_ctor_set(x_27, 2, x_4); +lean_ctor_set(x_27, 3, x_24); +return x_27; +} +} +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMinutes___boxed(lean_object* x_1, lean_object* x_2) { +_start: +{ +lean_object* x_3; +x_3 = l_Std_Time_ZonedDateTime_addMinutes(x_1, x_2); +lean_dec(x_2); +return x_3; +} +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMinutes(lean_object* x_1, lean_object* x_2) { +_start: +{ lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_30; lean_object* x_31; x_3 = lean_ctor_get(x_1, 1); lean_inc(x_3); @@ -4021,38 +4123,41 @@ if (lean_is_exclusive(x_1)) { } x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = l_Std_Time_ZonedDateTime_addMinutes___closed__1; -x_10 = lean_int_mul(x_2, x_9); -x_11 = lean_int_add(x_8, x_10); -lean_dec(x_8); -x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_13 = lean_int_ediv(x_11, x_12); -lean_dec(x_11); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_7); +x_7 = lean_int_neg(x_2); +x_8 = l_Std_Time_ZonedDateTime_addMinutes___closed__1; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_15 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_16 = lean_int_mul(x_10, x_15); +x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_11 = l_Std_Time_Duration_ofNanoseconds(x_9); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); lean_dec(x_10); -x_17 = lean_int_add(x_14, x_16); -lean_dec(x_16); +x_16 = lean_int_add(x_14, x_15); +lean_dec(x_15); lean_dec(x_14); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); +x_17 = lean_ctor_get(x_11, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); lean_dec(x_17); -x_19 = lean_ctor_get(x_6, 0); +x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); -lean_dec(x_6); -x_20 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_19); -x_21 = lean_int_add(x_20, x_13); -lean_dec(x_13); +lean_dec(x_11); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); lean_dec(x_20); -x_22 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_21); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); lean_dec(x_21); -x_23 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_18); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); x_30 = lean_ctor_get(x_4, 1); lean_inc(x_30); @@ -4084,11 +4189,10 @@ block_29: lean_object* x_26; lean_object* x_27; lean_object* x_28; lean_inc(x_25); lean_inc(x_24); -x_26 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); +x_26 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); lean_closure_set(x_26, 0, x_24); lean_closure_set(x_26, 1, x_25); -lean_closure_set(x_26, 2, x_12); -lean_closure_set(x_26, 3, x_15); +lean_closure_set(x_26, 2, x_13); x_27 = lean_mk_thunk(x_26); if (lean_is_scalar(x_5)) { x_28 = lean_alloc_ctor(0, 4, 0); @@ -4103,119 +4207,6 @@ return x_28; } } } -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMinutes___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Std_Time_ZonedDateTime_addMinutes(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMinutes(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_object* x_31; lean_object* x_32; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = lean_ctor_get(x_1, 2); -lean_inc(x_4); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - lean_ctor_release(x_1, 2); - lean_ctor_release(x_1, 3); - x_5 = x_1; -} else { - lean_dec_ref(x_1); - x_5 = lean_box(0); -} -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); -lean_dec(x_3); -x_7 = lean_int_neg(x_2); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -x_9 = l_Std_Time_PlainTime_toSeconds(x_8); -x_10 = l_Std_Time_ZonedDateTime_addMinutes___closed__1; -x_11 = lean_int_mul(x_7, x_10); -lean_dec(x_7); -x_12 = lean_int_add(x_9, x_11); -lean_dec(x_9); -x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_14 = lean_int_ediv(x_12, x_13); -lean_dec(x_12); -x_15 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_16 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_17 = lean_int_mul(x_11, x_16); -lean_dec(x_11); -x_18 = lean_int_add(x_15, x_17); -lean_dec(x_17); -lean_dec(x_15); -x_19 = l_Std_Time_PlainTime_ofNanoseconds(x_18); -lean_dec(x_18); -x_20 = lean_ctor_get(x_6, 0); -lean_inc(x_20); -lean_dec(x_6); -x_21 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_20); -x_22 = lean_int_add(x_21, x_14); -lean_dec(x_14); -lean_dec(x_21); -x_23 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_22); -lean_dec(x_22); -x_24 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_19); -x_25 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_24); -x_31 = lean_ctor_get(x_4, 1); -lean_inc(x_31); -lean_inc(x_25); -x_32 = l_Std_Time_TimeZone_Transition_timezoneAt(x_31, x_25); -lean_dec(x_31); -if (lean_obj_tag(x_32) == 0) -{ -lean_object* x_33; lean_object* x_34; -lean_dec(x_32); -x_33 = lean_ctor_get(x_4, 0); -lean_inc(x_33); -x_34 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_33); -lean_dec(x_33); -x_26 = x_34; -goto block_30; -} -else -{ -lean_object* x_35; -x_35 = lean_ctor_get(x_32, 0); -lean_inc(x_35); -lean_dec(x_32); -x_26 = x_35; -goto block_30; -} -block_30: -{ -lean_object* x_27; lean_object* x_28; lean_object* x_29; -lean_inc(x_26); -lean_inc(x_25); -x_27 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); -lean_closure_set(x_27, 0, x_25); -lean_closure_set(x_27, 1, x_26); -lean_closure_set(x_27, 2, x_13); -lean_closure_set(x_27, 3, x_16); -x_28 = lean_mk_thunk(x_27); -if (lean_is_scalar(x_5)) { - x_29 = lean_alloc_ctor(0, 4, 0); -} else { - x_29 = x_5; -} -lean_ctor_set(x_29, 0, x_28); -lean_ctor_set(x_29, 1, x_25); -lean_ctor_set(x_29, 2, x_4); -lean_ctor_set(x_29, 3, x_26); -return x_29; -} -} -} LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMinutes___boxed(lean_object* x_1, lean_object* x_2) { _start: { @@ -4225,19 +4216,10 @@ lean_dec(x_2); return x_3; } } -static lean_object* _init_l_Std_Time_ZonedDateTime_addMilliseconds___closed__1() { -_start: -{ -lean_object* x_1; lean_object* x_2; -x_1 = lean_unsigned_to_nat(86400000u); -x_2 = lean_nat_to_int(x_1); -return x_2; -} -} LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addMilliseconds(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_24; lean_object* x_25; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_29; lean_object* x_30; x_3 = lean_ctor_get(x_1, 1); lean_inc(x_3); x_4 = lean_ctor_get(x_1, 2); @@ -4254,73 +4236,85 @@ if (lean_is_exclusive(x_1)) { } x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toMilliseconds(x_7); -x_9 = lean_int_add(x_8, x_2); +x_7 = l_Std_Time_ZonedDateTime_millisecond___closed__1; +x_8 = lean_int_mul(x_2, x_7); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); lean_dec(x_8); -x_10 = l_Std_Time_ZonedDateTime_addMilliseconds___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_addMilliseconds(x_7, x_2); -lean_dec(x_7); -x_13 = lean_ctor_get(x_6, 0); -lean_inc(x_13); -lean_dec(x_6); -x_14 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_13); -x_15 = lean_int_add(x_14, x_11); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_13 = lean_int_mul(x_11, x_12); lean_dec(x_11); +x_14 = lean_ctor_get(x_9, 1); +lean_inc(x_14); +lean_dec(x_9); +x_15 = lean_int_add(x_13, x_14); lean_dec(x_14); -x_16 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_15); -lean_dec(x_15); -x_17 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_17, 0, x_16); -lean_ctor_set(x_17, 1, x_12); -x_18 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_17); -x_24 = lean_ctor_get(x_4, 1); -lean_inc(x_24); +lean_dec(x_13); +x_16 = lean_ctor_get(x_10, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_12); +lean_dec(x_16); +x_18 = lean_ctor_get(x_10, 1); lean_inc(x_18); -x_25 = l_Std_Time_TimeZone_Transition_timezoneAt(x_24, x_18); -lean_dec(x_24); -if (lean_obj_tag(x_25) == 0) +lean_dec(x_10); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); +lean_dec(x_19); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); +x_29 = lean_ctor_get(x_4, 1); +lean_inc(x_29); +lean_inc(x_23); +x_30 = l_Std_Time_TimeZone_Transition_timezoneAt(x_29, x_23); +lean_dec(x_29); +if (lean_obj_tag(x_30) == 0) { -lean_object* x_26; lean_object* x_27; -lean_dec(x_25); -x_26 = lean_ctor_get(x_4, 0); -lean_inc(x_26); -x_27 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_26); -lean_dec(x_26); -x_19 = x_27; -goto block_23; +lean_object* x_31; lean_object* x_32; +lean_dec(x_30); +x_31 = lean_ctor_get(x_4, 0); +lean_inc(x_31); +x_32 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_31); +lean_dec(x_31); +x_24 = x_32; +goto block_28; } else { -lean_object* x_28; -x_28 = lean_ctor_get(x_25, 0); -lean_inc(x_28); -lean_dec(x_25); -x_19 = x_28; -goto block_23; +lean_object* x_33; +x_33 = lean_ctor_get(x_30, 0); +lean_inc(x_33); +lean_dec(x_30); +x_24 = x_33; +goto block_28; } -block_23: +block_28: { -lean_object* x_20; lean_object* x_21; lean_object* x_22; -lean_inc(x_19); -lean_inc(x_18); -x_20 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___boxed), 3, 2); -lean_closure_set(x_20, 0, x_18); -lean_closure_set(x_20, 1, x_19); -x_21 = lean_mk_thunk(x_20); +lean_object* x_25; lean_object* x_26; lean_object* x_27; +lean_inc(x_24); +lean_inc(x_23); +x_25 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); +lean_closure_set(x_25, 0, x_23); +lean_closure_set(x_25, 1, x_24); +lean_closure_set(x_25, 2, x_12); +x_26 = lean_mk_thunk(x_25); if (lean_is_scalar(x_5)) { - x_22 = lean_alloc_ctor(0, 4, 0); + x_27 = lean_alloc_ctor(0, 4, 0); } else { - x_22 = x_5; + x_27 = x_5; } -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_18); -lean_ctor_set(x_22, 2, x_4); -lean_ctor_set(x_22, 3, x_19); -return x_22; +lean_ctor_set(x_27, 0, x_26); +lean_ctor_set(x_27, 1, x_23); +lean_ctor_set(x_27, 2, x_4); +lean_ctor_set(x_27, 3, x_24); +return x_27; } } } @@ -4336,7 +4330,7 @@ return x_3; LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subMilliseconds(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_25; lean_object* x_26; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_object* x_30; lean_object* x_31; x_3 = lean_ctor_get(x_1, 1); lean_inc(x_3); x_4 = lean_ctor_get(x_1, 2); @@ -4354,74 +4348,86 @@ if (lean_is_exclusive(x_1)) { x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); x_7 = lean_int_neg(x_2); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -x_9 = l_Std_Time_PlainTime_toMilliseconds(x_8); -x_10 = lean_int_add(x_9, x_7); -lean_dec(x_9); -x_11 = l_Std_Time_ZonedDateTime_addMilliseconds___closed__1; -x_12 = lean_int_ediv(x_10, x_11); -lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_addMilliseconds(x_8, x_7); +x_8 = l_Std_Time_ZonedDateTime_millisecond___closed__1; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -lean_dec(x_8); -x_14 = lean_ctor_get(x_6, 0); -lean_inc(x_14); -lean_dec(x_6); -x_15 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_14); -x_16 = lean_int_add(x_15, x_12); +x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_11 = l_Std_Time_Duration_ofNanoseconds(x_9); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_14 = lean_int_mul(x_12, x_13); lean_dec(x_12); +x_15 = lean_ctor_get(x_10, 1); +lean_inc(x_15); +lean_dec(x_10); +x_16 = lean_int_add(x_14, x_15); lean_dec(x_15); -x_17 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_16); -lean_dec(x_16); -x_18 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_18, 0, x_17); -lean_ctor_set(x_18, 1, x_13); -x_19 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_18); -x_25 = lean_ctor_get(x_4, 1); -lean_inc(x_25); +lean_dec(x_14); +x_17 = lean_ctor_get(x_11, 0); +lean_inc(x_17); +x_18 = lean_int_mul(x_17, x_13); +lean_dec(x_17); +x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); -x_26 = l_Std_Time_TimeZone_Transition_timezoneAt(x_25, x_19); -lean_dec(x_25); -if (lean_obj_tag(x_26) == 0) +lean_dec(x_11); +x_20 = lean_int_add(x_18, x_19); +lean_dec(x_19); +lean_dec(x_18); +x_21 = lean_int_add(x_16, x_20); +lean_dec(x_20); +lean_dec(x_16); +x_22 = l_Std_Time_Duration_ofNanoseconds(x_21); +lean_dec(x_21); +x_23 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_22); +lean_dec(x_22); +x_24 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_23); +x_30 = lean_ctor_get(x_4, 1); +lean_inc(x_30); +lean_inc(x_24); +x_31 = l_Std_Time_TimeZone_Transition_timezoneAt(x_30, x_24); +lean_dec(x_30); +if (lean_obj_tag(x_31) == 0) { -lean_object* x_27; lean_object* x_28; -lean_dec(x_26); -x_27 = lean_ctor_get(x_4, 0); -lean_inc(x_27); -x_28 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_27); -lean_dec(x_27); -x_20 = x_28; -goto block_24; +lean_object* x_32; lean_object* x_33; +lean_dec(x_31); +x_32 = lean_ctor_get(x_4, 0); +lean_inc(x_32); +x_33 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_32); +lean_dec(x_32); +x_25 = x_33; +goto block_29; } else { -lean_object* x_29; -x_29 = lean_ctor_get(x_26, 0); -lean_inc(x_29); -lean_dec(x_26); -x_20 = x_29; -goto block_24; +lean_object* x_34; +x_34 = lean_ctor_get(x_31, 0); +lean_inc(x_34); +lean_dec(x_31); +x_25 = x_34; +goto block_29; } -block_24: +block_29: { -lean_object* x_21; lean_object* x_22; lean_object* x_23; -lean_inc(x_20); -lean_inc(x_19); -x_21 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___boxed), 3, 2); -lean_closure_set(x_21, 0, x_19); -lean_closure_set(x_21, 1, x_20); -x_22 = lean_mk_thunk(x_21); +lean_object* x_26; lean_object* x_27; lean_object* x_28; +lean_inc(x_25); +lean_inc(x_24); +x_26 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); +lean_closure_set(x_26, 0, x_24); +lean_closure_set(x_26, 1, x_25); +lean_closure_set(x_26, 2, x_13); +x_27 = lean_mk_thunk(x_26); if (lean_is_scalar(x_5)) { - x_23 = lean_alloc_ctor(0, 4, 0); + x_28 = lean_alloc_ctor(0, 4, 0); } else { - x_23 = x_5; + x_28 = x_5; } -lean_ctor_set(x_23, 0, x_22); -lean_ctor_set(x_23, 1, x_19); -lean_ctor_set(x_23, 2, x_4); -lean_ctor_set(x_23, 3, x_20); -return x_23; +lean_ctor_set(x_28, 0, x_27); +lean_ctor_set(x_28, 1, x_24); +lean_ctor_set(x_28, 2, x_4); +lean_ctor_set(x_28, 3, x_25); +return x_28; } } } @@ -4454,35 +4460,38 @@ if (lean_is_exclusive(x_1)) { } x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_7 = lean_ctor_get(x_6, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = lean_int_add(x_8, x_2); +x_7 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_8 = lean_int_mul(x_2, x_7); +x_9 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_10 = l_Std_Time_Duration_ofNanoseconds(x_8); lean_dec(x_8); -x_10 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_13 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_14 = lean_int_mul(x_2, x_13); -x_15 = lean_int_add(x_12, x_14); -lean_dec(x_14); -lean_dec(x_12); -x_16 = l_Std_Time_PlainTime_ofNanoseconds(x_15); -lean_dec(x_15); -x_17 = lean_ctor_get(x_6, 0); -lean_inc(x_17); -lean_dec(x_6); -x_18 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_17); -x_19 = lean_int_add(x_18, x_11); +x_11 = lean_ctor_get(x_9, 0); +lean_inc(x_11); +x_12 = lean_int_mul(x_11, x_7); lean_dec(x_11); +x_13 = lean_ctor_get(x_9, 1); +lean_inc(x_13); +lean_dec(x_9); +x_14 = lean_int_add(x_12, x_13); +lean_dec(x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_10, 0); +lean_inc(x_15); +x_16 = lean_int_mul(x_15, x_7); +lean_dec(x_15); +x_17 = lean_ctor_get(x_10, 1); +lean_inc(x_17); +lean_dec(x_10); +x_18 = lean_int_add(x_16, x_17); +lean_dec(x_17); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); lean_dec(x_18); -x_20 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_19); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); lean_dec(x_19); -x_21 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_21, 0, x_20); -lean_ctor_set(x_21, 1, x_16); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); x_22 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); x_28 = lean_ctor_get(x_4, 1); lean_inc(x_28); @@ -4514,11 +4523,10 @@ block_27: lean_object* x_24; lean_object* x_25; lean_object* x_26; lean_inc(x_23); lean_inc(x_22); -x_24 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); +x_24 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); lean_closure_set(x_24, 0, x_22); lean_closure_set(x_24, 1, x_23); -lean_closure_set(x_24, 2, x_10); -lean_closure_set(x_24, 3, x_13); +lean_closure_set(x_24, 2, x_7); x_25 = lean_mk_thunk(x_24); if (lean_is_scalar(x_5)) { x_26 = lean_alloc_ctor(0, 4, 0); @@ -4563,36 +4571,39 @@ if (lean_is_exclusive(x_1)) { x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); x_7 = lean_int_neg(x_2); -x_8 = lean_ctor_get(x_6, 1); -lean_inc(x_8); -x_9 = l_Std_Time_PlainTime_toSeconds(x_8); -x_10 = lean_int_add(x_9, x_7); -lean_dec(x_9); -x_11 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_12 = lean_int_ediv(x_10, x_11); -lean_dec(x_10); -x_13 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_14 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_15 = lean_int_mul(x_7, x_14); +x_8 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_9 = lean_int_mul(x_7, x_8); lean_dec(x_7); -x_16 = lean_int_add(x_13, x_15); -lean_dec(x_15); -lean_dec(x_13); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); -lean_dec(x_16); -x_18 = lean_ctor_get(x_6, 0); -lean_inc(x_18); -lean_dec(x_6); -x_19 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_18); -x_20 = lean_int_add(x_19, x_12); +x_10 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_11 = l_Std_Time_Duration_ofNanoseconds(x_9); +lean_dec(x_9); +x_12 = lean_ctor_get(x_10, 0); +lean_inc(x_12); +x_13 = lean_int_mul(x_12, x_8); lean_dec(x_12); +x_14 = lean_ctor_get(x_10, 1); +lean_inc(x_14); +lean_dec(x_10); +x_15 = lean_int_add(x_13, x_14); +lean_dec(x_14); +lean_dec(x_13); +x_16 = lean_ctor_get(x_11, 0); +lean_inc(x_16); +x_17 = lean_int_mul(x_16, x_8); +lean_dec(x_16); +x_18 = lean_ctor_get(x_11, 1); +lean_inc(x_18); +lean_dec(x_11); +x_19 = lean_int_add(x_17, x_18); +lean_dec(x_18); +lean_dec(x_17); +x_20 = lean_int_add(x_15, x_19); lean_dec(x_19); -x_21 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_20); +lean_dec(x_15); +x_21 = l_Std_Time_Duration_ofNanoseconds(x_20); lean_dec(x_20); -x_22 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_22, 0, x_21); -lean_ctor_set(x_22, 1, x_17); +x_22 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_21); +lean_dec(x_21); x_23 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_22); x_29 = lean_ctor_get(x_4, 1); lean_inc(x_29); @@ -4624,11 +4635,10 @@ block_28: lean_object* x_25; lean_object* x_26; lean_object* x_27; lean_inc(x_24); lean_inc(x_23); -x_25 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 5, 4); +x_25 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); lean_closure_set(x_25, 0, x_23); lean_closure_set(x_25, 1, x_24); -lean_closure_set(x_25, 2, x_11); -lean_closure_set(x_25, 3, x_14); +lean_closure_set(x_25, 2, x_8); x_26 = lean_mk_thunk(x_25); if (lean_is_scalar(x_5)) { x_27 = lean_alloc_ctor(0, 4, 0); @@ -4652,47 +4662,10 @@ lean_dec(x_2); return x_3; } } -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; -x_5 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_1); -x_6 = lean_ctor_get(x_2, 0); -x_7 = lean_ctor_get(x_5, 1); -lean_inc(x_7); -x_8 = l_Std_Time_PlainTime_toSeconds(x_7); -x_9 = lean_int_add(x_8, x_6); -lean_dec(x_8); -x_10 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; -x_11 = lean_int_ediv(x_9, x_10); -lean_dec(x_9); -x_12 = l_Std_Time_PlainTime_toNanoseconds(x_7); -lean_dec(x_7); -x_13 = lean_int_mul(x_6, x_3); -x_14 = lean_int_add(x_12, x_13); -lean_dec(x_13); -lean_dec(x_12); -x_15 = l_Std_Time_PlainTime_ofNanoseconds(x_14); -lean_dec(x_14); -x_16 = lean_ctor_get(x_5, 0); -lean_inc(x_16); -lean_dec(x_5); -x_17 = l_Std_Time_PlainDate_toDaysSinceUNIXEpoch(x_16); -x_18 = lean_int_add(x_17, x_11); -lean_dec(x_11); -lean_dec(x_17); -x_19 = l_Std_Time_PlainDate_ofDaysSinceUNIXEpoch(x_18); -lean_dec(x_18); -x_20 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_20, 0, x_19); -lean_ctor_set(x_20, 1, x_15); -return x_20; -} -} LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds(lean_object* x_1, lean_object* x_2) { _start: { -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; uint8_t x_7; +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_27; lean_object* x_28; x_3 = lean_ctor_get(x_1, 1); lean_inc(x_3); x_4 = lean_ctor_get(x_1, 2); @@ -4709,326 +4682,37 @@ if (lean_is_exclusive(x_1)) { } x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); lean_dec(x_3); -x_7 = !lean_is_exclusive(x_6); -if (x_7 == 0) -{ -lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; uint8_t x_18; -x_8 = lean_ctor_get(x_6, 1); -x_9 = lean_ctor_get(x_8, 3); +x_7 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_8 = l_Std_Time_Duration_ofNanoseconds(x_2); +x_9 = lean_ctor_get(x_7, 0); lean_inc(x_9); -x_10 = lean_int_add(x_9, x_2); +x_10 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_11 = lean_int_mul(x_9, x_10); lean_dec(x_9); -x_11 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_12 = lean_int_ediv(x_10, x_11); -x_13 = lean_int_emod(x_10, x_11); -lean_dec(x_10); -x_14 = l_Std_Time_PlainTime_toNanoseconds(x_8); -lean_dec(x_8); -x_15 = lean_int_mul(x_12, x_11); -lean_dec(x_12); -x_16 = lean_int_add(x_14, x_15); -lean_dec(x_15); -lean_dec(x_14); -x_17 = l_Std_Time_PlainTime_ofNanoseconds(x_16); -lean_dec(x_16); -x_18 = !lean_is_exclusive(x_17); -if (x_18 == 0) -{ -lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_26; lean_object* x_27; -x_19 = lean_ctor_get(x_17, 3); -lean_dec(x_19); -lean_ctor_set(x_17, 3, x_13); -lean_ctor_set(x_6, 1, x_17); -x_20 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); -x_26 = lean_ctor_get(x_4, 1); -lean_inc(x_26); -lean_inc(x_20); -x_27 = l_Std_Time_TimeZone_Transition_timezoneAt(x_26, x_20); -lean_dec(x_26); -if (lean_obj_tag(x_27) == 0) -{ -lean_object* x_28; lean_object* x_29; -lean_dec(x_27); -x_28 = lean_ctor_get(x_4, 0); -lean_inc(x_28); -x_29 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_28); -lean_dec(x_28); -x_21 = x_29; -goto block_25; -} -else -{ -lean_object* x_30; -x_30 = lean_ctor_get(x_27, 0); -lean_inc(x_30); -lean_dec(x_27); -x_21 = x_30; -goto block_25; -} -block_25: -{ -lean_object* x_22; lean_object* x_23; lean_object* x_24; -lean_inc(x_21); -lean_inc(x_20); -x_22 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); -lean_closure_set(x_22, 0, x_20); -lean_closure_set(x_22, 1, x_21); -lean_closure_set(x_22, 2, x_11); -x_23 = lean_mk_thunk(x_22); -if (lean_is_scalar(x_5)) { - x_24 = lean_alloc_ctor(0, 4, 0); -} else { - x_24 = x_5; -} -lean_ctor_set(x_24, 0, x_23); -lean_ctor_set(x_24, 1, x_20); -lean_ctor_set(x_24, 2, x_4); -lean_ctor_set(x_24, 3, x_21); -return x_24; -} -} -else -{ -lean_object* x_31; lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_41; lean_object* x_42; -x_31 = lean_ctor_get(x_17, 0); -x_32 = lean_ctor_get(x_17, 1); -x_33 = lean_ctor_get(x_17, 2); -lean_inc(x_33); -lean_inc(x_32); -lean_inc(x_31); -lean_dec(x_17); -x_34 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_34, 0, x_31); -lean_ctor_set(x_34, 1, x_32); -lean_ctor_set(x_34, 2, x_33); -lean_ctor_set(x_34, 3, x_13); -lean_ctor_set(x_6, 1, x_34); -x_35 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); -x_41 = lean_ctor_get(x_4, 1); -lean_inc(x_41); -lean_inc(x_35); -x_42 = l_Std_Time_TimeZone_Transition_timezoneAt(x_41, x_35); -lean_dec(x_41); -if (lean_obj_tag(x_42) == 0) -{ -lean_object* x_43; lean_object* x_44; -lean_dec(x_42); -x_43 = lean_ctor_get(x_4, 0); -lean_inc(x_43); -x_44 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_43); -lean_dec(x_43); -x_36 = x_44; -goto block_40; -} -else -{ -lean_object* x_45; -x_45 = lean_ctor_get(x_42, 0); -lean_inc(x_45); -lean_dec(x_42); -x_36 = x_45; -goto block_40; -} -block_40: -{ -lean_object* x_37; lean_object* x_38; lean_object* x_39; -lean_inc(x_36); -lean_inc(x_35); -x_37 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); -lean_closure_set(x_37, 0, x_35); -lean_closure_set(x_37, 1, x_36); -lean_closure_set(x_37, 2, x_11); -x_38 = lean_mk_thunk(x_37); -if (lean_is_scalar(x_5)) { - x_39 = lean_alloc_ctor(0, 4, 0); -} else { - x_39 = x_5; -} -lean_ctor_set(x_39, 0, x_38); -lean_ctor_set(x_39, 1, x_35); -lean_ctor_set(x_39, 2, x_4); -lean_ctor_set(x_39, 3, x_36); -return x_39; -} -} -} -else -{ -lean_object* x_46; lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_69; lean_object* x_70; -x_46 = lean_ctor_get(x_6, 0); -x_47 = lean_ctor_get(x_6, 1); -lean_inc(x_47); -lean_inc(x_46); -lean_dec(x_6); -x_48 = lean_ctor_get(x_47, 3); -lean_inc(x_48); -x_49 = lean_int_add(x_48, x_2); -lean_dec(x_48); -x_50 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_51 = lean_int_ediv(x_49, x_50); -x_52 = lean_int_emod(x_49, x_50); -lean_dec(x_49); -x_53 = l_Std_Time_PlainTime_toNanoseconds(x_47); -lean_dec(x_47); -x_54 = lean_int_mul(x_51, x_50); -lean_dec(x_51); -x_55 = lean_int_add(x_53, x_54); -lean_dec(x_54); -lean_dec(x_53); -x_56 = l_Std_Time_PlainTime_ofNanoseconds(x_55); -lean_dec(x_55); -x_57 = lean_ctor_get(x_56, 0); -lean_inc(x_57); -x_58 = lean_ctor_get(x_56, 1); -lean_inc(x_58); -x_59 = lean_ctor_get(x_56, 2); -lean_inc(x_59); -if (lean_is_exclusive(x_56)) { - lean_ctor_release(x_56, 0); - lean_ctor_release(x_56, 1); - lean_ctor_release(x_56, 2); - lean_ctor_release(x_56, 3); - x_60 = x_56; -} else { - lean_dec_ref(x_56); - x_60 = lean_box(0); -} -if (lean_is_scalar(x_60)) { - x_61 = lean_alloc_ctor(0, 4, 0); -} else { - x_61 = x_60; -} -lean_ctor_set(x_61, 0, x_57); -lean_ctor_set(x_61, 1, x_58); -lean_ctor_set(x_61, 2, x_59); -lean_ctor_set(x_61, 3, x_52); -x_62 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_62, 0, x_46); -lean_ctor_set(x_62, 1, x_61); -x_63 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_62); -x_69 = lean_ctor_get(x_4, 1); -lean_inc(x_69); -lean_inc(x_63); -x_70 = l_Std_Time_TimeZone_Transition_timezoneAt(x_69, x_63); -lean_dec(x_69); -if (lean_obj_tag(x_70) == 0) -{ -lean_object* x_71; lean_object* x_72; -lean_dec(x_70); -x_71 = lean_ctor_get(x_4, 0); -lean_inc(x_71); -x_72 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_71); -lean_dec(x_71); -x_64 = x_72; -goto block_68; -} -else -{ -lean_object* x_73; -x_73 = lean_ctor_get(x_70, 0); -lean_inc(x_73); -lean_dec(x_70); -x_64 = x_73; -goto block_68; -} -block_68: -{ -lean_object* x_65; lean_object* x_66; lean_object* x_67; -lean_inc(x_64); -lean_inc(x_63); -x_65 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); -lean_closure_set(x_65, 0, x_63); -lean_closure_set(x_65, 1, x_64); -lean_closure_set(x_65, 2, x_50); -x_66 = lean_mk_thunk(x_65); -if (lean_is_scalar(x_5)) { - x_67 = lean_alloc_ctor(0, 4, 0); -} else { - x_67 = x_5; -} -lean_ctor_set(x_67, 0, x_66); -lean_ctor_set(x_67, 1, x_63); -lean_ctor_set(x_67, 2, x_4); -lean_ctor_set(x_67, 3, x_64); -return x_67; -} -} -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed(lean_object* x_1, lean_object* x_2, lean_object* x_3, lean_object* x_4) { -_start: -{ -lean_object* x_5; -x_5 = l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1(x_1, x_2, x_3, x_4); -lean_dec(x_4); -lean_dec(x_3); -lean_dec(x_2); -lean_dec(x_1); -return x_5; -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; -x_3 = l_Std_Time_ZonedDateTime_addNanoseconds(x_1, x_2); -lean_dec(x_2); -return x_3; -} -} -LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subNanoseconds(lean_object* x_1, lean_object* x_2) { -_start: -{ -lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; uint8_t x_8; -x_3 = lean_ctor_get(x_1, 1); -lean_inc(x_3); -x_4 = lean_ctor_get(x_1, 2); -lean_inc(x_4); -if (lean_is_exclusive(x_1)) { - lean_ctor_release(x_1, 0); - lean_ctor_release(x_1, 1); - lean_ctor_release(x_1, 2); - lean_ctor_release(x_1, 3); - x_5 = x_1; -} else { - lean_dec_ref(x_1); - x_5 = lean_box(0); -} -x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); -lean_dec(x_3); -x_7 = lean_int_neg(x_2); -x_8 = !lean_is_exclusive(x_6); -if (x_8 == 0) -{ -lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; uint8_t x_19; -x_9 = lean_ctor_get(x_6, 1); -x_10 = lean_ctor_get(x_9, 3); -lean_inc(x_10); -x_11 = lean_int_add(x_10, x_7); +x_12 = lean_ctor_get(x_7, 1); +lean_inc(x_12); lean_dec(x_7); -lean_dec(x_10); -x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_13 = lean_int_ediv(x_11, x_12); -x_14 = lean_int_emod(x_11, x_12); +x_13 = lean_int_add(x_11, x_12); +lean_dec(x_12); lean_dec(x_11); -x_15 = l_Std_Time_PlainTime_toNanoseconds(x_9); -lean_dec(x_9); -x_16 = lean_int_mul(x_13, x_12); -lean_dec(x_13); +x_14 = lean_ctor_get(x_8, 0); +lean_inc(x_14); +x_15 = lean_int_mul(x_14, x_10); +lean_dec(x_14); +x_16 = lean_ctor_get(x_8, 1); +lean_inc(x_16); +lean_dec(x_8); x_17 = lean_int_add(x_15, x_16); lean_dec(x_16); lean_dec(x_15); -x_18 = l_Std_Time_PlainTime_ofNanoseconds(x_17); +x_18 = lean_int_add(x_13, x_17); lean_dec(x_17); -x_19 = !lean_is_exclusive(x_18); -if (x_19 == 0) -{ -lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_27; lean_object* x_28; -x_20 = lean_ctor_get(x_18, 3); -lean_dec(x_20); -lean_ctor_set(x_18, 3, x_14); -lean_ctor_set(x_6, 1, x_18); -x_21 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +lean_dec(x_13); +x_19 = l_Std_Time_Duration_ofNanoseconds(x_18); +lean_dec(x_18); +x_20 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_19); +lean_dec(x_19); +x_21 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_20); x_27 = lean_ctor_get(x_4, 1); lean_inc(x_27); lean_inc(x_21); @@ -5059,10 +4743,10 @@ block_26: lean_object* x_23; lean_object* x_24; lean_object* x_25; lean_inc(x_22); lean_inc(x_21); -x_23 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); +x_23 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); lean_closure_set(x_23, 0, x_21); lean_closure_set(x_23, 1, x_22); -lean_closure_set(x_23, 2, x_12); +lean_closure_set(x_23, 2, x_10); x_24 = lean_mk_thunk(x_23); if (lean_is_scalar(x_5)) { x_25 = lean_alloc_ctor(0, 4, 0); @@ -5076,172 +4760,114 @@ lean_ctor_set(x_25, 3, x_22); return x_25; } } -else -{ -lean_object* x_32; lean_object* x_33; lean_object* x_34; lean_object* x_35; lean_object* x_36; lean_object* x_37; lean_object* x_42; lean_object* x_43; -x_32 = lean_ctor_get(x_18, 0); -x_33 = lean_ctor_get(x_18, 1); -x_34 = lean_ctor_get(x_18, 2); -lean_inc(x_34); -lean_inc(x_33); -lean_inc(x_32); -lean_dec(x_18); -x_35 = lean_alloc_ctor(0, 4, 0); -lean_ctor_set(x_35, 0, x_32); -lean_ctor_set(x_35, 1, x_33); -lean_ctor_set(x_35, 2, x_34); -lean_ctor_set(x_35, 3, x_14); -lean_ctor_set(x_6, 1, x_35); -x_36 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); -x_42 = lean_ctor_get(x_4, 1); -lean_inc(x_42); -lean_inc(x_36); -x_43 = l_Std_Time_TimeZone_Transition_timezoneAt(x_42, x_36); -lean_dec(x_42); -if (lean_obj_tag(x_43) == 0) -{ -lean_object* x_44; lean_object* x_45; -lean_dec(x_43); -x_44 = lean_ctor_get(x_4, 0); -lean_inc(x_44); -x_45 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_44); -lean_dec(x_44); -x_37 = x_45; -goto block_41; } -else +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_addNanoseconds___boxed(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_46; -x_46 = lean_ctor_get(x_43, 0); -lean_inc(x_46); -lean_dec(x_43); -x_37 = x_46; -goto block_41; +lean_object* x_3; +x_3 = l_Std_Time_ZonedDateTime_addNanoseconds(x_1, x_2); +lean_dec(x_2); +return x_3; } -block_41: +} +LEAN_EXPORT lean_object* l_Std_Time_ZonedDateTime_subNanoseconds(lean_object* x_1, lean_object* x_2) { +_start: { -lean_object* x_38; lean_object* x_39; lean_object* x_40; -lean_inc(x_37); -lean_inc(x_36); -x_38 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); -lean_closure_set(x_38, 0, x_36); -lean_closure_set(x_38, 1, x_37); -lean_closure_set(x_38, 2, x_12); -x_39 = lean_mk_thunk(x_38); -if (lean_is_scalar(x_5)) { - x_40 = lean_alloc_ctor(0, 4, 0); +lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; lean_object* x_9; lean_object* x_10; lean_object* x_11; lean_object* x_12; lean_object* x_13; lean_object* x_14; lean_object* x_15; lean_object* x_16; lean_object* x_17; lean_object* x_18; lean_object* x_19; lean_object* x_20; lean_object* x_21; lean_object* x_22; lean_object* x_23; lean_object* x_28; lean_object* x_29; +x_3 = lean_ctor_get(x_1, 1); +lean_inc(x_3); +x_4 = lean_ctor_get(x_1, 2); +lean_inc(x_4); +if (lean_is_exclusive(x_1)) { + lean_ctor_release(x_1, 0); + lean_ctor_release(x_1, 1); + lean_ctor_release(x_1, 2); + lean_ctor_release(x_1, 3); + x_5 = x_1; } else { - x_40 = x_5; + lean_dec_ref(x_1); + x_5 = lean_box(0); } -lean_ctor_set(x_40, 0, x_39); -lean_ctor_set(x_40, 1, x_36); -lean_ctor_set(x_40, 2, x_4); -lean_ctor_set(x_40, 3, x_37); -return x_40; -} -} -} -else -{ -lean_object* x_47; lean_object* x_48; lean_object* x_49; lean_object* x_50; lean_object* x_51; lean_object* x_52; lean_object* x_53; lean_object* x_54; lean_object* x_55; lean_object* x_56; lean_object* x_57; lean_object* x_58; lean_object* x_59; lean_object* x_60; lean_object* x_61; lean_object* x_62; lean_object* x_63; lean_object* x_64; lean_object* x_65; lean_object* x_70; lean_object* x_71; -x_47 = lean_ctor_get(x_6, 0); -x_48 = lean_ctor_get(x_6, 1); -lean_inc(x_48); -lean_inc(x_47); -lean_dec(x_6); -x_49 = lean_ctor_get(x_48, 3); -lean_inc(x_49); -x_50 = lean_int_add(x_49, x_7); +x_6 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_3); +lean_dec(x_3); +x_7 = lean_int_neg(x_2); +x_8 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_6); +x_9 = l_Std_Time_Duration_ofNanoseconds(x_7); lean_dec(x_7); -lean_dec(x_49); -x_51 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; -x_52 = lean_int_ediv(x_50, x_51); -x_53 = lean_int_emod(x_50, x_51); -lean_dec(x_50); -x_54 = l_Std_Time_PlainTime_toNanoseconds(x_48); -lean_dec(x_48); -x_55 = lean_int_mul(x_52, x_51); -lean_dec(x_52); -x_56 = lean_int_add(x_54, x_55); -lean_dec(x_55); -lean_dec(x_54); -x_57 = l_Std_Time_PlainTime_ofNanoseconds(x_56); -lean_dec(x_56); -x_58 = lean_ctor_get(x_57, 0); -lean_inc(x_58); -x_59 = lean_ctor_get(x_57, 1); -lean_inc(x_59); -x_60 = lean_ctor_get(x_57, 2); -lean_inc(x_60); -if (lean_is_exclusive(x_57)) { - lean_ctor_release(x_57, 0); - lean_ctor_release(x_57, 1); - lean_ctor_release(x_57, 2); - lean_ctor_release(x_57, 3); - x_61 = x_57; -} else { - lean_dec_ref(x_57); - x_61 = lean_box(0); -} -if (lean_is_scalar(x_61)) { - x_62 = lean_alloc_ctor(0, 4, 0); -} else { - x_62 = x_61; -} -lean_ctor_set(x_62, 0, x_58); -lean_ctor_set(x_62, 1, x_59); -lean_ctor_set(x_62, 2, x_60); -lean_ctor_set(x_62, 3, x_53); -x_63 = lean_alloc_ctor(0, 2, 0); -lean_ctor_set(x_63, 0, x_47); -lean_ctor_set(x_63, 1, x_62); -x_64 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_63); -x_70 = lean_ctor_get(x_4, 1); -lean_inc(x_70); -lean_inc(x_64); -x_71 = l_Std_Time_TimeZone_Transition_timezoneAt(x_70, x_64); -lean_dec(x_70); -if (lean_obj_tag(x_71) == 0) +x_10 = lean_ctor_get(x_8, 0); +lean_inc(x_10); +x_11 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; +x_12 = lean_int_mul(x_10, x_11); +lean_dec(x_10); +x_13 = lean_ctor_get(x_8, 1); +lean_inc(x_13); +lean_dec(x_8); +x_14 = lean_int_add(x_12, x_13); +lean_dec(x_13); +lean_dec(x_12); +x_15 = lean_ctor_get(x_9, 0); +lean_inc(x_15); +x_16 = lean_int_mul(x_15, x_11); +lean_dec(x_15); +x_17 = lean_ctor_get(x_9, 1); +lean_inc(x_17); +lean_dec(x_9); +x_18 = lean_int_add(x_16, x_17); +lean_dec(x_17); +lean_dec(x_16); +x_19 = lean_int_add(x_14, x_18); +lean_dec(x_18); +lean_dec(x_14); +x_20 = l_Std_Time_Duration_ofNanoseconds(x_19); +lean_dec(x_19); +x_21 = l_Std_Time_PlainDateTime_ofTimestampAssumingUTC(x_20); +lean_dec(x_20); +x_22 = l_Std_Time_PlainDateTime_toTimestampAssumingUTC(x_21); +x_28 = lean_ctor_get(x_4, 1); +lean_inc(x_28); +lean_inc(x_22); +x_29 = l_Std_Time_TimeZone_Transition_timezoneAt(x_28, x_22); +lean_dec(x_28); +if (lean_obj_tag(x_29) == 0) { -lean_object* x_72; lean_object* x_73; -lean_dec(x_71); -x_72 = lean_ctor_get(x_4, 0); -lean_inc(x_72); -x_73 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_72); -lean_dec(x_72); -x_65 = x_73; -goto block_69; +lean_object* x_30; lean_object* x_31; +lean_dec(x_29); +x_30 = lean_ctor_get(x_4, 0); +lean_inc(x_30); +x_31 = l_Std_Time_TimeZone_LocalTimeType_getTimeZone(x_30); +lean_dec(x_30); +x_23 = x_31; +goto block_27; } else { -lean_object* x_74; -x_74 = lean_ctor_get(x_71, 0); -lean_inc(x_74); -lean_dec(x_71); -x_65 = x_74; -goto block_69; +lean_object* x_32; +x_32 = lean_ctor_get(x_29, 0); +lean_inc(x_32); +lean_dec(x_29); +x_23 = x_32; +goto block_27; } -block_69: +block_27: { -lean_object* x_66; lean_object* x_67; lean_object* x_68; -lean_inc(x_65); -lean_inc(x_64); -x_66 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addNanoseconds___lambda__1___boxed), 4, 3); -lean_closure_set(x_66, 0, x_64); -lean_closure_set(x_66, 1, x_65); -lean_closure_set(x_66, 2, x_51); -x_67 = lean_mk_thunk(x_66); +lean_object* x_24; lean_object* x_25; lean_object* x_26; +lean_inc(x_23); +lean_inc(x_22); +x_24 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_addHours___lambda__1___boxed), 4, 3); +lean_closure_set(x_24, 0, x_22); +lean_closure_set(x_24, 1, x_23); +lean_closure_set(x_24, 2, x_11); +x_25 = lean_mk_thunk(x_24); if (lean_is_scalar(x_5)) { - x_68 = lean_alloc_ctor(0, 4, 0); + x_26 = lean_alloc_ctor(0, 4, 0); } else { - x_68 = x_5; -} -lean_ctor_set(x_68, 0, x_67); -lean_ctor_set(x_68, 1, x_64); -lean_ctor_set(x_68, 2, x_4); -lean_ctor_set(x_68, 3, x_65); -return x_68; + x_26 = x_5; } +lean_ctor_set(x_26, 0, x_25); +lean_ctor_set(x_26, 1, x_22); +lean_ctor_set(x_26, 2, x_4); +lean_ctor_set(x_26, 3, x_23); +return x_26; } } } @@ -5312,7 +4938,7 @@ x_11 = lean_ctor_get(x_4, 1); lean_inc(x_11); x_12 = lean_unsigned_to_nat(0u); x_13 = l_Array_findFinIdx_x3f_loop___rarg(x_10, x_11, x_12); -x_14 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_14 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_15 = lean_int_mul(x_9, x_14); x_16 = lean_ctor_get(x_8, 1); lean_inc(x_16); @@ -5592,7 +5218,7 @@ x_21 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_21, 0, x_20); x_22 = lean_unsigned_to_nat(0u); x_23 = l_Array_findFinIdx_x3f_loop___rarg(x_21, x_17, x_22); -x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_25 = lean_int_mul(x_20, x_24); x_26 = lean_ctor_get(x_19, 1); lean_inc(x_26); @@ -5877,7 +5503,7 @@ x_88 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_88, 0, x_87); x_89 = lean_unsigned_to_nat(0u); x_90 = l_Array_findFinIdx_x3f_loop___rarg(x_88, x_84, x_89); -x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_92 = lean_int_mul(x_87, x_91); x_93 = lean_ctor_get(x_86, 1); lean_inc(x_93); @@ -6224,7 +5850,7 @@ x_166 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___la lean_closure_set(x_166, 0, x_165); x_167 = lean_unsigned_to_nat(0u); x_168 = l_Array_findFinIdx_x3f_loop___rarg(x_166, x_162, x_167); -x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_170 = lean_int_mul(x_165, x_169); x_171 = lean_ctor_get(x_164, 1); lean_inc(x_171); @@ -6386,7 +6012,7 @@ x_15 = lean_ctor_get(x_4, 1); lean_inc(x_15); x_16 = lean_unsigned_to_nat(0u); x_17 = l_Array_findFinIdx_x3f_loop___rarg(x_14, x_15, x_16); -x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_19 = lean_int_mul(x_13, x_18); x_20 = lean_ctor_get(x_12, 1); lean_inc(x_20); @@ -6530,7 +6156,7 @@ x_61 = lean_ctor_get(x_4, 1); lean_inc(x_61); x_62 = lean_unsigned_to_nat(0u); x_63 = l_Array_findFinIdx_x3f_loop___rarg(x_60, x_61, x_62); -x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_65 = lean_int_mul(x_59, x_64); x_66 = lean_ctor_get(x_58, 1); lean_inc(x_66); @@ -6814,7 +6440,7 @@ x_21 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_21, 0, x_20); x_22 = lean_unsigned_to_nat(0u); x_23 = l_Array_findFinIdx_x3f_loop___rarg(x_21, x_17, x_22); -x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_25 = lean_int_mul(x_20, x_24); x_26 = lean_ctor_get(x_19, 1); lean_inc(x_26); @@ -7099,7 +6725,7 @@ x_88 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_88, 0, x_87); x_89 = lean_unsigned_to_nat(0u); x_90 = l_Array_findFinIdx_x3f_loop___rarg(x_88, x_84, x_89); -x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_92 = lean_int_mul(x_87, x_91); x_93 = lean_ctor_get(x_86, 1); lean_inc(x_93); @@ -7446,7 +7072,7 @@ x_166 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___la lean_closure_set(x_166, 0, x_165); x_167 = lean_unsigned_to_nat(0u); x_168 = l_Array_findFinIdx_x3f_loop___rarg(x_166, x_162, x_167); -x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_170 = lean_int_mul(x_165, x_169); x_171 = lean_ctor_get(x_164, 1); lean_inc(x_171); @@ -7609,7 +7235,7 @@ x_15 = lean_ctor_get(x_4, 1); lean_inc(x_15); x_16 = lean_unsigned_to_nat(0u); x_17 = l_Array_findFinIdx_x3f_loop___rarg(x_14, x_15, x_16); -x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_19 = lean_int_mul(x_13, x_18); x_20 = lean_ctor_get(x_12, 1); lean_inc(x_20); @@ -7754,7 +7380,7 @@ x_61 = lean_ctor_get(x_4, 1); lean_inc(x_61); x_62 = lean_unsigned_to_nat(0u); x_63 = l_Array_findFinIdx_x3f_loop___rarg(x_60, x_61, x_62); -x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_65 = lean_int_mul(x_59, x_64); x_66 = lean_ctor_get(x_58, 1); lean_inc(x_66); @@ -8029,7 +7655,7 @@ x_21 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_21, 0, x_20); x_22 = lean_unsigned_to_nat(0u); x_23 = l_Array_findFinIdx_x3f_loop___rarg(x_21, x_17, x_22); -x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_24 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_25 = lean_int_mul(x_20, x_24); x_26 = lean_ctor_get(x_19, 1); lean_inc(x_26); @@ -8314,7 +7940,7 @@ x_88 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___lam lean_closure_set(x_88, 0, x_87); x_89 = lean_unsigned_to_nat(0u); x_90 = l_Array_findFinIdx_x3f_loop___rarg(x_88, x_84, x_89); -x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_91 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_92 = lean_int_mul(x_87, x_91); x_93 = lean_ctor_get(x_86, 1); lean_inc(x_93); @@ -8661,7 +8287,7 @@ x_166 = lean_alloc_closure((void*)(l_Std_Time_ZonedDateTime_ofPlainDateTime___la lean_closure_set(x_166, 0, x_165); x_167 = lean_unsigned_to_nat(0u); x_168 = l_Array_findFinIdx_x3f_loop___rarg(x_166, x_162, x_167); -x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_169 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_170 = lean_int_mul(x_165, x_169); x_171 = lean_ctor_get(x_164, 1); lean_inc(x_171); @@ -8824,7 +8450,7 @@ x_15 = lean_ctor_get(x_4, 1); lean_inc(x_15); x_16 = lean_unsigned_to_nat(0u); x_17 = l_Array_findFinIdx_x3f_loop___rarg(x_14, x_15, x_16); -x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_18 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_19 = lean_int_mul(x_13, x_18); x_20 = lean_ctor_get(x_12, 1); lean_inc(x_20); @@ -8969,7 +8595,7 @@ x_61 = lean_ctor_get(x_4, 1); lean_inc(x_61); x_62 = lean_unsigned_to_nat(0u); x_63 = l_Array_findFinIdx_x3f_loop___rarg(x_60, x_61, x_62); -x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_64 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_65 = lean_int_mul(x_59, x_64); x_66 = lean_ctor_get(x_58, 1); lean_inc(x_66); @@ -9130,7 +8756,7 @@ x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_findFinIdx_x3f_loop___rarg(x_13, x_14, x_15); -x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_18 = lean_int_mul(x_12, x_17); x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); @@ -9273,7 +8899,7 @@ x_58 = lean_ctor_get(x_4, 1); lean_inc(x_58); x_59 = lean_unsigned_to_nat(0u); x_60 = l_Array_findFinIdx_x3f_loop___rarg(x_57, x_58, x_59); -x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_62 = lean_int_mul(x_56, x_61); x_63 = lean_ctor_get(x_55, 1); lean_inc(x_63); @@ -9437,7 +9063,7 @@ x_106 = lean_ctor_get(x_4, 1); lean_inc(x_106); x_107 = lean_unsigned_to_nat(0u); x_108 = l_Array_findFinIdx_x3f_loop___rarg(x_105, x_106, x_107); -x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_110 = lean_int_mul(x_104, x_109); x_111 = lean_ctor_get(x_103, 1); lean_inc(x_111); @@ -9598,7 +9224,7 @@ x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_findFinIdx_x3f_loop___rarg(x_13, x_14, x_15); -x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_18 = lean_int_mul(x_12, x_17); x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); @@ -9741,7 +9367,7 @@ x_58 = lean_ctor_get(x_4, 1); lean_inc(x_58); x_59 = lean_unsigned_to_nat(0u); x_60 = l_Array_findFinIdx_x3f_loop___rarg(x_57, x_58, x_59); -x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_62 = lean_int_mul(x_56, x_61); x_63 = lean_ctor_get(x_55, 1); lean_inc(x_63); @@ -9905,7 +9531,7 @@ x_106 = lean_ctor_get(x_4, 1); lean_inc(x_106); x_107 = lean_unsigned_to_nat(0u); x_108 = l_Array_findFinIdx_x3f_loop___rarg(x_105, x_106, x_107); -x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_110 = lean_int_mul(x_104, x_109); x_111 = lean_ctor_get(x_103, 1); lean_inc(x_111); @@ -10066,7 +9692,7 @@ x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_findFinIdx_x3f_loop___rarg(x_13, x_14, x_15); -x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_18 = lean_int_mul(x_12, x_17); x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); @@ -10209,7 +9835,7 @@ x_58 = lean_ctor_get(x_4, 1); lean_inc(x_58); x_59 = lean_unsigned_to_nat(0u); x_60 = l_Array_findFinIdx_x3f_loop___rarg(x_57, x_58, x_59); -x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_62 = lean_int_mul(x_56, x_61); x_63 = lean_ctor_get(x_55, 1); lean_inc(x_63); @@ -10373,7 +9999,7 @@ x_106 = lean_ctor_get(x_4, 1); lean_inc(x_106); x_107 = lean_unsigned_to_nat(0u); x_108 = l_Array_findFinIdx_x3f_loop___rarg(x_105, x_106, x_107); -x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_110 = lean_int_mul(x_104, x_109); x_111 = lean_ctor_get(x_103, 1); lean_inc(x_111); @@ -10550,7 +10176,7 @@ x_19 = lean_ctor_get(x_4, 1); lean_inc(x_19); x_20 = lean_unsigned_to_nat(0u); x_21 = l_Array_findFinIdx_x3f_loop___rarg(x_18, x_19, x_20); -x_22 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_22 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_23 = lean_int_mul(x_17, x_22); x_24 = lean_ctor_get(x_16, 1); lean_inc(x_24); @@ -10703,7 +10329,7 @@ x_69 = lean_ctor_get(x_4, 1); lean_inc(x_69); x_70 = lean_unsigned_to_nat(0u); x_71 = l_Array_findFinIdx_x3f_loop___rarg(x_68, x_69, x_70); -x_72 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_72 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_73 = lean_int_mul(x_67, x_72); x_74 = lean_ctor_get(x_66, 1); lean_inc(x_74); @@ -10877,7 +10503,7 @@ x_123 = lean_ctor_get(x_4, 1); lean_inc(x_123); x_124 = lean_unsigned_to_nat(0u); x_125 = l_Array_findFinIdx_x3f_loop___rarg(x_122, x_123, x_124); -x_126 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_126 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_127 = lean_int_mul(x_121, x_126); x_128 = lean_ctor_get(x_120, 1); lean_inc(x_128); @@ -11047,7 +10673,7 @@ x_14 = lean_ctor_get(x_4, 1); lean_inc(x_14); x_15 = lean_unsigned_to_nat(0u); x_16 = l_Array_findFinIdx_x3f_loop___rarg(x_13, x_14, x_15); -x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_17 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_18 = lean_int_mul(x_12, x_17); x_19 = lean_ctor_get(x_11, 1); lean_inc(x_19); @@ -11190,7 +10816,7 @@ x_58 = lean_ctor_get(x_4, 1); lean_inc(x_58); x_59 = lean_unsigned_to_nat(0u); x_60 = l_Array_findFinIdx_x3f_loop___rarg(x_57, x_58, x_59); -x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_61 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_62 = lean_int_mul(x_56, x_61); x_63 = lean_ctor_get(x_55, 1); lean_inc(x_63); @@ -11354,7 +10980,7 @@ x_106 = lean_ctor_get(x_4, 1); lean_inc(x_106); x_107 = lean_unsigned_to_nat(0u); x_108 = l_Array_findFinIdx_x3f_loop___rarg(x_105, x_106, x_107); -x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_109 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_110 = lean_int_mul(x_104, x_109); x_111 = lean_ctor_get(x_103, 1); lean_inc(x_111); @@ -11575,7 +11201,7 @@ x_9 = lean_ctor_get(x_3, 1); lean_inc(x_9); x_10 = lean_unsigned_to_nat(0u); x_11 = l_Array_findFinIdx_x3f_loop___rarg(x_8, x_9, x_10); -x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_12 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_13 = lean_int_mul(x_7, x_12); x_14 = lean_ctor_get(x_6, 1); lean_inc(x_14); @@ -11933,7 +11559,7 @@ x_6 = lean_int_neg(x_5); x_7 = lean_ctor_get(x_4, 1); x_8 = lean_int_neg(x_7); x_9 = lean_ctor_get(x_3, 0); -x_10 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_10 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_11 = lean_int_mul(x_9, x_10); x_12 = lean_ctor_get(x_3, 1); x_13 = lean_int_add(x_11, x_12); @@ -11966,7 +11592,7 @@ _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_3 = lean_ctor_get(x_2, 0); -x_4 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_4 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_5 = lean_int_mul(x_3, x_4); x_6 = lean_ctor_get(x_2, 1); x_7 = lean_int_add(x_5, x_6); @@ -11990,7 +11616,7 @@ _start: { lean_object* x_3; lean_object* x_4; lean_object* x_5; lean_object* x_6; lean_object* x_7; lean_object* x_8; x_3 = lean_ctor_get(x_2, 0); -x_4 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2; +x_4 = l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1; x_5 = lean_int_mul(x_3, x_4); x_6 = lean_ctor_get(x_2, 1); x_7 = lean_int_add(x_5, x_6); @@ -12122,8 +11748,6 @@ l_Std_Time_instInhabitedZonedDateTime = _init_l_Std_Time_instInhabitedZonedDateT lean_mark_persistent(l_Std_Time_instInhabitedZonedDateTime); l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1 = _init_l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__1); -l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2 = _init_l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2(); -lean_mark_persistent(l_Std_Time_ZonedDateTime_ofTimestamp___lambda__1___closed__2); l_Std_Time_ZonedDateTime_ofPlainDateTime___closed__1 = _init_l_Std_Time_ZonedDateTime_ofPlainDateTime___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_ofPlainDateTime___closed__1); l_Std_Time_ZonedDateTime_ofTimestampWithZone___closed__1 = _init_l_Std_Time_ZonedDateTime_ofTimestampWithZone___closed__1(); @@ -12146,8 +11770,6 @@ l_Std_Time_ZonedDateTime_addHours___closed__1 = _init_l_Std_Time_ZonedDateTime_a lean_mark_persistent(l_Std_Time_ZonedDateTime_addHours___closed__1); l_Std_Time_ZonedDateTime_addMinutes___closed__1 = _init_l_Std_Time_ZonedDateTime_addMinutes___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_addMinutes___closed__1); -l_Std_Time_ZonedDateTime_addMilliseconds___closed__1 = _init_l_Std_Time_ZonedDateTime_addMilliseconds___closed__1(); -lean_mark_persistent(l_Std_Time_ZonedDateTime_addMilliseconds___closed__1); l_Std_Time_ZonedDateTime_withMilliseconds___closed__1 = _init_l_Std_Time_ZonedDateTime_withMilliseconds___closed__1(); lean_mark_persistent(l_Std_Time_ZonedDateTime_withMilliseconds___closed__1); l_Std_Time_ZonedDateTime_instHAddOffset___closed__1 = _init_l_Std_Time_ZonedDateTime_instHAddOffset___closed__1();